E ai pessoal, na ultima semana fiz uma implementação de 1 grafico de
linha e estou sentindo que a implementação está um belo de um POG....
segue o codigo abaixo, e eu gostaria de sugestões para uma melhor
implementação!


DECLARACOES
<fx:Declarations>
                <mx:GroupingCollection2 id="gc2"
source="{topWebModel.dataProviderMovimentacaoPortuariaLineChart}">
                        <mx:grouping>
                                <mx:Grouping label="DT_OPERACAO_YYYYMM">
                                        <mx:GroupingField 
name="DT_OPERACAO_YYYYMM" />
                                </mx:Grouping>
                        </mx:grouping>
                </mx:GroupingCollection2>
                <mx:GroupingCollection2 id="gc3"
source="{topWebModel.dataProviderMovimentacaoPortuariaLineChart}">
                        <mx:grouping>
                                <mx:Grouping label="NM_ARMADOR_REBOCADOR">
                                        <mx:GroupingField 
name="NM_ARMADOR_REBOCADOR" />
                                </mx:Grouping>
                        </mx:grouping>
                </mx:GroupingCollection2>
</fx:Declarations>


ACTION SCRIPT QUE MONTA O DATA PROVIDER
private function montaDataProviderLineChart(event:ResultEvent):void{
                                if 
(event.result.MovimentacaoPortuaria.retorno.codigo == 0){
                                        
topWebModel.dataProviderMovimentacaoPortuariaLineChart =
event.result.MovimentacaoPortuaria.row as ArrayCollection;
                                        gc2.refresh();
                                        var arrData:Object = gc2.getRoot();
                                        myLineChart.dataProvider = arrData;
                                        myLineChart.series = new Array();
                                        gc3.refresh();
                                        var arrArmador:Object = gc3.getRoot();
                                        for each(var obj1:Object in (arrArmador 
as ArrayCollection) ){
                                                var a:ArrayCollection = new 
ArrayCollection();
                                                for each(var obj2:Object in 
obj1.children){
                                                        var o:Object =new 
Object();
                                                        o.NM_ARMADOR_REBOCADOR 
= obj2.NM_ARMADOR_REBOCADOR;
                                                        
o.VL_REFERENCIA_MERCADO_US =
Number(nFormatter.format(obj2.VL_REFERENCIA_MERCADO_US));
                                                        o.DT_OPERACAO_YYYYMM = 
obj2.DT_OPERACAO_YYYYMM;
                                                        a.addItem(o);
                                                }
                                                var lineSeries:LineSeries = new 
LineSeries();
                                                lineSeries.yField = 
"VL_REFERENCIA_MERCADO_US";
                                                lineSeries.xField = 
"DT_OPERACAO_YYYYMM";
                                                lineSeries.dataProvider = a;
                                                lineSeries.displayName = 
obj1.NM_ARMADOR_REBOCADOR;
                                                //lineSeries.setStyle("form", 
"curve");
                                                
myLineChart.series.push(lineSeries);
                                        }
                                }
                                Wait.hide();
                        }


MXML DO CHART
<mx:LineChart includeIn="Todos,MaxLineChart" id="myLineChart"
showDataTips="true" width="100%" height="100%">
                                <mx:horizontalAxis>
                                        <mx:CategoryAxis 
categoryField="DT_OPERACAO_YYYYMM"/>
                                </mx:horizontalAxis>
                        </mx:LineChart>

-- 
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com
Para sair da lista, envie um email em branco para 
flexdev-unsubscr...@googlegroups.com
Mais opções estão disponíveis em http://groups.google.com/group/flexdev

Responder a