Danilo posta também o listaContas. antes tenat o seguinte: listaContas.categories = categoryProxy.categories; listaContas.gc.source = listaContas.categories; listaContas.gc.refresh();
Felipe http://bobfernandes.wordpress.com 2008/6/5 Danilo <[EMAIL PROTECTED]>: > Felipe, na verdade, estou utilizando o PureMVC, e no meu código, está assim: > > public function ListaContasMediator(viewComponent:Object){ > super(NOME,viewComponent); > > listaContas.addEventListener(ListaContas.CREATE, onCreate); > listaContas.addEventListener(ListaContas.REMOVE, onDelete); > listaContas.addEventListener(ListaContas.SELECT, onSelect); > > categoryProxy = facade.retrieveProxy(CategoryProxy.NOME) as > CategoryProxy; > > listaContas.categories = categoryProxy.categories; > listaContas.gc.refresh(); > } > > e tem essa (que pega o listaContas): > private function get listaContas():ListaContas{ > return viewComponent as ListaContas > } > > Eu seto o categories, do listaContas, ali na linha em vermelho, e logo > abaixo dei o refresh. Porém, não funciona. > Não sei nem o que tentar de diferente mais. > > Abraço, > Danilo > > 2008/6/5 Felipe Fernandes <[EMAIL PROTECTED]>: >> >> Danilo, >> >> Deixa eu ver se consigo te ajudar, tem uma função no meio do seu >> código que trata o retorno dos dados e deve conter algo parecido com >> isso: >> categories = new ArrayCollection(event.result as Array); >> Agora adicione o seguinte logo abaixo: >> gc.refresh() >> >> Caso vc continue com dúvidas poste seu código (a parte flex) inteiro >> aqui, para que possamos te explicar melhor. >> >> Felipe >> http://bobfernandes.wordpress.com >> >> 2008/6/5 Danilo <[EMAIL PROTECTED]>: >> > Marcelo, >> > >> > Estou entendendo o que devo fazer. >> > Agora surgiu uma outra dúvida. >> > >> > No result do meu método que pega as categorias, eu adicionei o seguinte >> > código: >> > >> > var listaContas:ListaContas = new ListaContas(); >> > listaContas.gc.refresh(); >> > >> > Porém, não está funcionando, mas eu imagino que não esteja funcionando, >> > porque eu dei um new ListaContas. Correto? >> > Você sabe me dizer, como tem que ser o gc.refresh(), lá no meu proxy, >> > para >> > que ele funcione na tela listaContas? >> > >> > Abraço, >> > Danilo >> > 2008/6/5 Marcelo Savioli <[EMAIL PROTECTED]>: >> >> >> >> Danilo, >> >> >> >> Você pode colocar o gc.refresh() no result do metódo que carrega >> >> "categories". >> >> Pode também adicionar um listener no seu dataProvider para saber quando >> >> foi alterada a collection. >> >> >> >> Se precisar de ajuda com isso é só mandar. >> >> >> >> 2008/6/5 Danilo <[EMAIL PROTECTED]>: >> >>> >> >>> Eu fiz o debug, e entendi o que você quis dizer. Só não consigo fazer >> >>> funcionar agora. Será que tem como você me dar uma força nessa parte, >> >>> novamente? >> >>> >> >>> 2008/6/5 Danilo <[EMAIL PROTECTED]>: >> >>>> >> >>>> Marcelo, >> >>>> Até entendi o que você quis dizer, mas não entendi como fazer isso >> >>>> funcionar no código. Talvez seja por ser novato no as3, talvez seja >> >>>> incompetência minha mesmo. Será que teria como você explicar >> >>>> novamente? >> >>>> Desculpa o incômodo. >> >>>> >> >>>> Abraço, >> >>>> Danilo >> >>>> >> >>>> 2008/6/4 Marcelo Savioli <[EMAIL PROTECTED]>: >> >>>>> >> >>>>> Danilo, >> >>>>> >> >>>>> Apesar de estar no init da sua aplicação o retorno é assíncrono, >> >>>>> portanto ocorre aquilo que falei.. >> >>>>> Você pode utilizar o debug para confirmar isso. >> >>>>> >> >>>>> Esta já seria a forma mais simples de agrupar dados no >> >>>>> AdvancedDataGrid. Este componente é muito chato mesmo de se >> >>>>> trabalhar, da >> >>>>> para perceber claramente que ele não foi desenvolvido pela mesma >> >>>>> equipe que >> >>>>> desenvolveu o sdk. >> >>>>> >> >>>>> 2008/6/4 Danilo <[EMAIL PROTECTED]>: >> >>>>>> >> >>>>>> O meu serviço PHP, é chamado no init da aplicação. Essa é a >> >>>>>> primeira >> >>>>>> coisa a ser carregada. Na verdade, no GroupingCollection, eu >> >>>>>> imagino que o >> >>>>>> categories, esteja com seus dados, mesmo porque, se eu pegar esse >> >>>>>> mesmo >> >>>>>> categories, e colocar diretamente no AdvancedDataGrid, como >> >>>>>> dataProvider, >> >>>>>> ele monta normalmente. >> >>>>>> >> >>>>>> Será que não seria algum problema com os dados retornados do php? >> >>>>>> >> >>>>>> Você conhece uma maneira mais fácil, para montar o >> >>>>>> AdvancedDataGrid? >> >>>>>> >> >>>>>> Abraço, >> >>>>>> Danilo >> >>>>>> >> >>>>>> 2008/6/4 Marcelo Savioli <[EMAIL PROTECTED]>: >> >>>>>>> >> >>>>>>> Danilo, >> >>>>>>> >> >>>>>>> Pode não ser o seu caso, mas vamos tentar. >> >>>>>>> >> >>>>>>> Quando você faz: >> >>>>>>> >> >>>>>>> <mx:dataProvider> >> >>>>>>> <mx:GroupingCollection id="gc" source="{categories}"> >> >>>>>>> <mx:Grouping> >> >>>>>>> <mx:GroupingField name="catA"/> >> >>>>>>> <mx:GroupingField name="catB"/> >> >>>>>>> <mx:GroupingField name="catC"/> >> >>>>>>> <mx:GroupingField name="catD"/> >> >>>>>>> </mx:Grouping> >> >>>>>>> </mx:GroupingCollection> >> >>>>>>> </mx:dataProvider> >> >>>>>>> >> >>>>>>> Você esta dizendo que o dataProvider é uma GroupingCollection >> >>>>>>> baseada >> >>>>>>> em "categories". A principio, "categories" é vazio. Então a >> >>>>>>> GroupingCollection passa uma coleção vazia para o dataProvider do >> >>>>>>> grid. >> >>>>>>> Quando você chama seu serviço no PHP, "categories" é atualizado, >> >>>>>>> porém a GroupingCollection não monta automaticamente um novo >> >>>>>>> dataprovider >> >>>>>>> baseado nessa mudança. >> >>>>>>> Por isso, ao chamar o refresh da GroupingCollection você estará >> >>>>>>> fazendo com que a GroupingCollection monte novamente uma coleção >> >>>>>>> para servir >> >>>>>>> de dataProvider ao grid. >> >>>>>>> >> >>>>>>> Portanto, sempre que modificar sua coleção é necessário remontar o >> >>>>>>> dataProvider do grid utilizando o "gc.refresh()". >> >>>>>>> >> >>>>>>> 2008/6/4 Danilo <[EMAIL PROTECTED]>: >> >>>>>>>> >> >>>>>>>> Marcelo, >> >>>>>>>> Mas, eu acho que os dados já retornaram do php, visto que se eu >> >>>>>>>> uso >> >>>>>>>> um dataprovider antes de dar um GroupingCollection, os dados >> >>>>>>>> montam a grid >> >>>>>>>> normalmente. Caso eu esteja equivocado, não entendi o que você >> >>>>>>>> quis dizer, >> >>>>>>>> ou como fazer o que você disse. >> >>>>>>>> >> >>>>>>>> Att, >> >>>>>>>> Danilo >> >>>>>>>> >> >>>>>>>> 2008/6/3 Marcelo Savioli <[EMAIL PROTECTED]>: >> >>>>>>>>> >> >>>>>>>>> Danilo, >> >>>>>>>>> >> >>>>>>>>> Faz o "gc.refresh()" após os dados retornarem do php. >> >>>>>>>>> >> >>>>>>>>> 2008/6/3 Danilo <[EMAIL PROTECTED]>: >> >>>>>>>>>> >> >>>>>>>>>> Olá pessoal, >> >>>>>>>>>> Estou com um problema, para mostrar os dados que vêm do amfphp >> >>>>>>>>>> no >> >>>>>>>>>> AdvancedDatagrid, agrupados. >> >>>>>>>>>> Atualmente, estou retornando os objetos do amfphp em uma array, >> >>>>>>>>>> da >> >>>>>>>>>> seguinte maneira: >> >>>>>>>>>> >> >>>>>>>>>> $arrTree[$i]["catA"] = $r->catA; >> >>>>>>>>>> $arrTree[$i]["catB"] = $r->catB; >> >>>>>>>>>> $arrTree[$i]["catC"] = $r->catC; >> >>>>>>>>>> $arrTree[$i]["catD"] = $r->catD; >> >>>>>>>>>> $i++; >> >>>>>>>>>> >> >>>>>>>>>> >> >>>>>>>>>> E no final, retorno a array $arrTree. >> >>>>>>>>>> >> >>>>>>>>>> Acontece, que se eu quiser listar em um Datagrid, funciona >> >>>>>>>>>> perfeitamente! >> >>>>>>>>>> Porém, gostaria de listar Hierarquicamente em um >> >>>>>>>>>> AdvancedDatagrid, >> >>>>>>>>>> juntamente com outros valores, mas não estou conseguindo montar >> >>>>>>>>>> o >> >>>>>>>>>> agrupamento dos itens. Tentei da seguinte maneira: >> >>>>>>>>>> >> >>>>>>>>>> <mx:dataProvider> >> >>>>>>>>>> <mx:GroupingCollection id="gc" source="{categories}"> >> >>>>>>>>>> <mx:Grouping> >> >>>>>>>>>> <mx:GroupingField name="catA"/> >> >>>>>>>>>> <mx:GroupingField name="catB"/> >> >>>>>>>>>> <mx:GroupingField name="catC"/> >> >>>>>>>>>> <mx:GroupingField name="catD"/> >> >>>>>>>>>> </mx:Grouping> >> >>>>>>>>>> </mx:GroupingCollection> >> >>>>>>>>>> </mx:dataProvider> >> >>>>>>>>>> >> >>>>>>>>>> Seguindo alguns exemplos que encontrei na própria documentação >> >>>>>>>>>> da >> >>>>>>>>>> adobe. >> >>>>>>>>>> No evento creationComplete, eu tento chamar esse agrupamento >> >>>>>>>>>> assim: creationComplete="{gc.refresh();}" >> >>>>>>>>>> Mas não está funcionando. >> >>>>>>>>>> >> >>>>>>>>>> Alguém sabe me dizer, onde pode estar ocorrendo o erro? Eu sei >> >>>>>>>>>> que >> >>>>>>>>>> os dados de categories, estão chegando, tanto que se eu >> >>>>>>>>>> utilizar um >> >>>>>>>>>> dataProvider="{categories}" no AdvancedDataGrid, ele funciona >> >>>>>>>>>> normalmente, >> >>>>>>>>>> porém, parece que não estou conseguindo tratar estes dados. >> >>>>>>>>>> >> >>>>>>>>>> Será que alguém consegue me ajudar? >> >>>>>>>>>> >> >>>>>>>>>> Abraço, >> >>>>>>>>>> Danilo >> >>>>>>>>>> >> >>>>>>>>>> >> >>>>>>>>> >> >>>>>>>>> >> >>>>>>>>> >> >>>>>>>>> -- >> >>>>>>>>> Marcelo Curi Savioli >> >>>>>>>>> D-Click Web & Mobile Solutions >> >>>>>>>>> [EMAIL PROTECTED] >> >>>>>>>>> www.dclick.com.br/blog >> >>>>>>>>> www.dclick.com.br >> >>>>>>>>> >> >>>>>>>> >> >>>>>>>> >> >>>>>>>> >> >>>>>>> >> >>>>>>> >> >>>>>>> >> >>>>>>> -- >> >>>>>>> Marcelo Curi Savioli >> >>>>>>> D-Click Web & Mobile Solutions >> >>>>>>> [EMAIL PROTECTED] >> >>>>>>> www.dclick.com.br/blog >> >>>>>>> www.dclick.com.br >> >>>>>>> >> >>>>>> >> >>>>>> >> >>>>>> >> >>>>> >> >>>>> >> >>>>> >> >>>>> -- >> >>>>> Marcelo Curi Savioli >> >>>>> DClick Web & Mobile Solutions >> >>>>> [EMAIL PROTECTED] >> >>>>> www.dclick.com.br/blog >> >>>>> www.dclick.com.br >> >>>>> >> >>>> >> >>> >> >>> >> >>> >> >> >> >> >> >> >> >> -- >> >> Marcelo Curi Savioli >> >> DClick Web & Mobile Solutions >> >> [EMAIL PROTECTED] >> >> www.dclick.com.br/blog >> >> www.dclick.com.br >> >> >> > >> > >> > > >> > >> >> >> >> -- >> Felipe - http://bobfernandes.wordpress.com >> >> > > > > > -- Felipe - http://bobfernandes.wordpress.com --~--~---------~--~----~------------~-------~--~----~ 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 [EMAIL PROTECTED] Mais opções estão disponíveis em http://groups.google.com/group/flexdev -~----------~----~----~----~------~----~------~--~---