the item param is row data, what is in that row of the array collection and the column is that column in the grid.
basically what happens in this particular labelFunction is that it looks at a specific field in the array collection and determine its value, then it sets a string to be returned and displayed in that column for that row. You could return a number, boolean etc just by changing the return type of the function. make sense? On 2/13/07, jryano001 <[EMAIL PROTECTED]> wrote:
Brilliant thanks for all your help. Can you do one more thing and explain exactly what the line below is doing please? checkData(item:Object,column:Object):String Is it converting the parsed XML data in my ArrayCollection to a String before searching the converted string for the number 2? Thanks once again. --- In [email protected] <flexcoders%40yahoogroups.com>, "Clint Tredway" <[EMAIL PROTECTED]> wrote: > > oops, at the bottom of the function put return retString; > > > On 2/12/07, jryano001 <[EMAIL PROTECTED]> wrote: > > > > Thanks for the response. This is more than likely me being daft but > > I've used the code you provided and set the labelFunction of > > checkData on the status DataGridColumn and I get an error in Flex > > stating: > > > > 1170: Function does not return a value. > > > > Is the checkData function checking both my customer and status > > columns for '2' or do I have to (as I expect) enter in the column > > name I want to check in the code you provided? > > > > I appreciate your help and patience! > > > > --- In [email protected] <flexcoders%40yahoogroups.com><flexcoders% 40yahoogroups.com>, "Clint > > Tredway" <grumpee@> > > wrote: > > > > > > use a labelFunction to check the value and then do something: > > > > > > private function checkData(item:Object,column:Object):String{ > > > var retString:String; > > > if(item['column'] == 2){ > > > retString="Return String"; > > > } else { > > > retString = "Alt Return string"; > > > } > > > } > > > > > > then set this as the labelFunction on that DataGridColumn and that > > should > > > get you going. > > > > > > On 2/12/07, jryano001 <jryan@> wrote: > > > > > > > > Hi, > > > > > > > > I'm very new to Flex and hope someone advise me on this or tell > > me if > > > > it's even possible! > > > > > > > > My Flex application is pulling data using a php page. The data is > > > > then parsed into XML and is placed inside an ArrayCollection > > called > > > > custData. My DataGrid is then using custData as it's dataProvider. > > > > This is all working and my Datarid displays my two colmuns (cust & > > > > status). > > > > > > > > What I need to be able to do though is to check the values in my > > > > status column and if any of these change to '2' then trigger an > > event > > > > (at the moment this could just be to display some text). > > > > > > > > I know (unless someone tells me otherwise) that I need an If > > > > statement to check the values of status in my ArrayCollection but > > I > > > > need to know how you access just the values of status and if one > > has > > > > changed to '2' then to display the text. > > > > > > > > I'd really appreciate if someone could point me in the right > > > > direction. Thanks in advance. If it makes anything clearer then my > > > > code is below. > > > > > > > > ---------------------------------------------------------- > > > > ---- > > > > > > > > <?xml version="1.0" encoding="utf-8"?> > > > > <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" > > > > initialize="custRequest.send()"> > > > > > > > > <mx:Script> > > > > <![CDATA[ > > > > import mx.collections.ArrayCollection; > > > > import mx.rpc.events.ResultEvent; > > > > > > > > [Bindable] > > > > private var custData:ArrayCollection; > > > > > > > > private function resultHandler > > > > (event:ResultEvent):void { > > > > custData = event.result.cstatus.customer; > > > > } > > > > ]]> > > > > </mx:Script> > > > > > > > > <mx:HTTPService id="custRequest" > > > > url="http://localhost/FlexTest/retrieve.php" > > > > result="resultHandler(event)"/> > > > > > > > > <mx:DataGrid dataProvider="{custData}"> > > > > <mx:columns> > > > > <mx:DataGridColumn headerText="Customer" > > > > dataField="cust"/> > > > > <mx:DataGridColumn headerText="Status" > > > > dataField="status"/> > > > > </mx:columns> > > > > </mx:DataGrid> > > > > > > > > </mx:Application> > > > > > > > > > > > > > > > > > > > > > > > > -- > > > http://indeegrumpee.spaces.live.com/ > > > > > > > > > > > > > -- > http://indeegrumpee.spaces.live.com/ >
-- http://indeegrumpee.spaces.live.com/

