tags:

views:

135

answers:

1

In Flex, how do i create a summary(say total of various domains) from the data provider and display in chart?

Say this is my dataprovider.. I want to display the total estimate of each territory as a slice in piechart

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} ]);

A: 

After the

<mx:Script...

try this code:

        <mx:AdvancedDataGrid id="dataGrid" initialize="gc.refresh();"
        borderColor="#000000"
        selectionMode="singleRow"
        rowCount="8"
        editable="false"
        right="10" left="10" top="10" bottom="71"
                    itemClick="adg_itemClick(event);">
        <mx:dataProvider>
                    <mx:GroupingCollection id="gc" source="{dpFlat}">
                    <mx:grouping>
                    <mx:Grouping>
                 <mx:GroupingField name="Region">
            <mx:summaries>     
          <mx:SummaryRow summaryPlacement="group">  

            <mx:fields>
              <mx:SummaryField dataField="Actual" 
                 operation="SUM"/>
              <mx:SummaryField dataField="Estimate" 
                 operation="SUM"/>

            </mx:fields>
          </mx:SummaryRow>
              </mx:summaries> 
                </mx:GroupingField>           
                 <mx:GroupingField name="Territory">

          <mx:SummaryRow summaryPlacement="group">
            <mx:fields>
              <mx:SummaryField dataField="Actual" 
                operation="SUM" />
              <mx:SummaryField dataField="Estimate" 
                 operation="SUM"/>

            </mx:fields>
          </mx:SummaryRow>
        </mx:GroupingField>
             </mx:Grouping>
         </mx:grouping>
     </mx:GroupingCollection>
 </mx:dataProvider>
            <mx:columns>
<mx:AdvancedDataGridColumn headerText="Region" dataField="Region" />
<mx:AdvancedDataGridColumn headerText="Territory" dataField="Territory" />
<mx:AdvancedDataGridColumn headerText="Territory_Rep" dataField="Territory_Rep" />
<mx:AdvancedDataGridColumn headerText="Actual" dataField="Actual" />
<mx:AdvancedDataGridColumn headerText="Estimate" dataField="Estimate" />
            </mx:columns>
    </mx:AdvancedDataGrid>
Franky
yes it populates the advanceddatagrid with summary data.. but can i use the same summary to populate the pie chart? or is there any functionality in pie chart to create a summary similar to the advanceddatagrid example u provided?
arunp
take a look to this link, there's all you need to populate the pie chart by datagrid summaries:http://livedocs.adobe.com/flex/3/html/help.html?content=advdatagrid_10.html
Franky