Hi All,

  I am trying to display an ADG using the Data retrieved from Server and trying 
to get the Data when a node is expanded.

  Here is the sample code i have and it doesn't work . The same version (from 
live docs) if we use XML representation of the data it works fine..

[CODE]
<?xml version="1.0"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"; 
creationComplete="init">

    <mx:Script>
        <![CDATA[
                import mx.controls.Alert;
            import mx.collections.ArrayCollection;
                 
            [Bindable]
            var dpFlat :ArrayCollection = new ArrayCollection();
           
            /*
            private var dpFlat:ArrayCollection = new ArrayCollection([
              {Region:"Southwest", Territory:"Arizona",
                  Territory_Rep:"Barbara Jennings", Actual:38865, 
Estimate:40000},
              {Region:"Southwest", Territory:"Arizona",
                  Territory_Rep:"Dana Binn", Actual:29885, Estimate:30000}, 
              {Region:"Southwest", Territory:"Central California",
                  Territory_Rep:"Joe Smith", Actual:29134, Estimate:30000}, 
              {Region:"Southwest", Territory:"Nevada",
                  Territory_Rep:"Bethany Pittman", Actual:52888, 
Estimate:45000}, 
              {Region:"Southwest", Territory:"Northern California",
                  Territory_Rep:"Lauren Ipsum", Actual:38805, Estimate:40000},
              {Region:"Southwest", Territory:"Northern California",
                  Territory_Rep:"T.R. Smith", Actual:55498, Estimate:40000}, 
              {Region:"Southwest", Territory:"Southern California",
                  Territory_Rep:"Alice Treu", Actual:44985, Estimate:45000},
              {Region:"Southwest", Territory:"Southern California",
                  Territory_Rep:"Jane Grove", Actual:44913, Estimate:45000}
            ]);
            */
            public function init():void{
               
                    var node1:Node = new Node();
                    node1.region="Southwest";
                    node1.territory="Arizona";
                    node1.territoryRep="Barbara Jennings";
                    node1.actual="38865";
                    node1.estimate="40000";
                   
                    var node2:Node = new Node();
                    node2.region="Southwest";
                    node2.territory="Arizona";
                    node2.territoryRep="Barbara Jennings";
                    node2.actual="38865";
                    node2.estimate="40000";
                   
                    var node3:Node = new Node();
                    node3.region="Southwest";
                    node3.territory="Arizona";
                    node3.territoryRep="Barbara Jennings";
                    node3.actual="38865";
                    node3.estimate="40000";
                   
                    var node4:Node = new Node();
                    node4.region="Southwest";
                    node4.territory="Arizona";
                    node4.territoryRep="Barbara Jennings";
                    node4.actual="38865";
                    node4.estimate="40000";
                   
                    dpFlat.addItem(node1);
                    dpFlat.addItem(node2);
                    dpFlat.addItem(node3);
                    dpFlat.addItem(node4);
                    //gc.source = dpFlat;
                    gc.refresh();
            }
            private function itemSelected(event:Event):void{
                var object:Object = (AdvancedDataGrid 
(event.currentTarget)).selectedItem;
                var nodeSelected:Node = null;
                if(object is Node){
                        nodeSelected = Node (object);
                }
                if(nodeSelected!=null)
                {
                        Alert.show("Selected Item  Region 
=["+nodeSelected.region+"]");
                }
                else{
                        Alert.show("Nothing is Selected");
                }
            }
           
           
        ]]>
    </mx:Script>

    <mx:Panel title="AdvancedDataGrid Control Example"
        height="75%" width="75%" layout="horizontal"
        paddingTop="10" paddingBottom="10" paddingLeft="10" paddingRight="10">

        <mx:AdvancedDataGrid id="myADG"
            width="100%" height="100%"
            initialize="gc.refresh();" itemClick="itemSelected(event);">       
            <mx:dataProvider>
                <mx:GroupingCollection id="gc" source="{dpFlat}">
                    <mx:grouping>
                        <mx:Grouping>
                            <mx:GroupingField name="region"/>
                            <mx:GroupingField name="territory"/>
                        </mx:Grouping>
                    </mx:grouping>
                </mx:GroupingCollection>
            </mx:dataProvider>       
           
            <mx:columns>
                <mx:AdvancedDataGridColumn dataField="region"/>
                <mx:AdvancedDataGridColumn dataField="territory"/>
                <mx:AdvancedDataGridColumn dataField="territoryRep"   
headerText="Territory Rep"/>
                <mx:AdvancedDataGridColumn dataField="actual"/>
                <mx:AdvancedDataGridColumn dataField="estimate"/>
            </mx:columns>
       </mx:AdvancedDataGrid>
    </mx:Panel>
   
</mx:Application>
[/CODE]

I used the init() method to create the dynamic object and assign the source..

 I am not sure what's going wrong..

Thanks
Mars.

Reply via email to