It does kind of make sense but I'm just wondering how the checkData function knows to look at my ArrayCollection and how the item:object refers specifically to the row.
As I said before I am very new to all of this and it is a very steep learning curve at the moment. --- In [email protected], "Clint Tredway" <[EMAIL PROTECTED]> wrote: > > 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" <grumpee@> > > wrote: > > > > > > oops, at the bottom of the function put return retString; > > > > > > > > > On 2/12/07, jryano001 <jryan@> 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/ >

