Marcelo, Era isso mesmo. Agora ta OK. Cara, muito obrigado mesmo.
[]'s 2009/10/12 Marcelo Caser <marceloca...@gmail.com> > > é que seu metodo "result" do excluir() nao esta sendo invocado... > olhando o seu codigo mas acima vi que: > > voce tem: > > <mx:RemoteObject id="cursoService" showBusyCursor="true" > fault="onFault(event)" destination="cursoService"> > <mx:method name="getCursos" result="onResultGetCursos(event)" > fault="onFault(event)"/> > <mx:method name="excluir" result="onResultExcluir(event)" > fault="onFault(event)"/> > </mx:RemoteObject> > > e dpois vc tem: > > private function excluir():void { > if (idxSelected > -1 && idxSelected <= listCursos.length - 1 && > cursoSelected != null) { > cursoService.excluiCurso(cursoSelected); > } else { > Alert.show("Selecione um Curso para excluir."); > } > } > > ok.... vc tem uma funcao chamada excluir() que eh chamada pela propriedade: > > <mx:Button x="442" y="71" label="Excluir" width="101" id="btnExcluir" > click="excluir();"/> > > blz... ate ae td bem... > > so nao entendi a sua chamada do "service"... dentro de excluir(): > > cursoService.excluiCurso(cursoSelected); > > cade o excluiCurso() dentro do <remoteObject> > > talvez o que vc ta querendo eh isso: > > <mx:RemoteObject id="cursoService" showBusyCursor="true" > fault="onFault(event)" destination="cursoService"> > <mx:method name="getCursos" result="onResultGetCursos(event)" > fault="onFault(event)"/> > <mx:method name="excluiCursos" result="onResultExcluir(event)" > fault="onFault(event)"/> > </mx:RemoteObject> > > agora sim o seu onResultExcluir(event) sera chamado quando o metodo > for invocado caso nao retorne null e onFault(event) caso retorno null > e/ou erro. > > veja o seu codigo ! > > > > > > > > > > Em 12/10/09, Leonardo Ribeiro<leojribe...@gmail.com> escreveu: > > Marcelo, > > > > Voce disse para deixar o metodo exluir assim. Show, funcionou. > > Mas o que acontece é que eu seu deixar > > > > private function excluir():void { > > if (idxSelected > -1 && idxSelected <= listCursos.length - 1 && > > cursoSelected != null) { > > cursoService.excluiCurso(cursoSelected); > > //dispara o evento > > //dispatchEvent(new Event('getCursos', true)) -- COMENTEI > > } else { > > Alert.show("Selecione um Curso para excluir."); > > } > > } > > > > e colocar no > > > > public function onResultExcluir(event:ResultEvent):void { > > Alert.show("Curso excluído."); > > dispatchEvent(new Event('getCursos', true)); > > } > > > > Nao funciona, ou seja, esse metodo nao esta sendo invocado, mesmo que a > > exclusao aconteca sem erro... E tbm nao passa no metodo "onFault" (ate pq > > nao da erro mesmo) > > > > So queria entender pq nao passa no "onResultExcluir" ja que a exclusao > > ocorre sem erros. > > > > Obrigado pela atencao > > > > > > > > porem assim nao exclui > > > > 2009/10/12 Leonardo Ribeiro <leojribe...@gmail.com> > > > >> Nesse caso teria q fazer alguma alteracao no mxml? > >> > >> 2009/10/12 Marcelo Caser <marceloca...@gmail.com> > >> > >> > >>> amigo, > >>> > >>> vamos trabalhar com eventos para deixar as coisas mais simples. > >>> > >>> Faça o seguinte: > >>> > >>> private function init():void { > >>> getCursos(); > >>> } > >>> > >>> mude para: > >>> > >>> private function init():void { > >>> // aqui definimos qual metodo sera disparado quando o evento que > >>> estamos "escutando" for chamado na aplicacao. > >>> addEventListener("getCursos", getCursos); > >>> } > >>> > >>> > >>> public function getCursos():void { > >>> Alert.show("getCursos()"); > >>> cursoService.getCursos(true); > >>> } > >>> > >>> mude para: > >>> > >>> public function getCursos(event:Event):void { > >>> cursoService.getCursos(true); > >>> } > >>> > >>> private function excluir():void { > >>> if (idxSelected > -1 && idxSelected <= listCursos.length - 1 && > >>> cursoSelected != null) { > >>> cursoService.excluiCurso(cursoSelected); > >>> } else { > >>> Alert.show("Selecione um Curso para excluir."); > >>> } > >>> } > >>> > >>> mude para: > >>> > >>> private function excluir():void { > >>> if (idxSelected > -1 && idxSelected <= listCursos.length - 1 && > >>> cursoSelected != null) { > >>> cursoService.excluiCurso(cursoSelected); > >>> //dispara o evento > >>> dispatchEvent(new Event('getCursos', true)) > >>> } else { > >>> Alert.show("Selecione um Curso para excluir."); > >>> } > >>> } > >>> > >>> > >>> > >>> Em 12/10/09, RafaelViana<rfl.vi...@gmail.com> escreveu: > >>> > > >>> > *O mais curioso é que você falou que quando abre a tela novamente a > >>> > lista atualiza (então o carregamento da lista está ok).Quando abre a > >>> > tela chama o init que tem apenas o método getCursos. > >>> > > >>> > *E você chama esse método getCursos no result do excluir. > >>> > > >>> > *Lista está como bindable. > >>> > > >>> > Deve ser algum detalhe que está passando despercebido, se quiser > mande > >>> > o projeto para meu email que posso dar uma olhada. > >>> > > >>> > > >>> > On 12 out, 11:26, Leonardo Ribeiro <leojribe...@gmail.com> wrote: > >>> >> <mx:DataGrid x="10" y="10" width="419" height="286" id="dgCursos" > >>> >> dataProvider="{listCursos}" > >>> >> itemClick="dgCursoItemClick(event);" > >>> >> dataChange="getCursos();"> > >>> >> <mx:columns> > >>> >> <mx:DataGridColumn headerText="Código" width="50" > >>> >> dataField="codigo"/> > >>> >> <mx:DataGridColumn headerText="Nome" width="100" > >>> >> dataField="nome"/> > >>> >> </mx:columns> > >>> >> </mx:DataGrid> > >>> >> > >>> >> Nao adiantou nada ainda Marcelo. > >>> >> O curioso é q do BD exclui correto e se saio e entro na tela de novo > >>> ele > >>> >> carrega certo. > >>> >> > >>> >> No meu primeiro post eu coloquei todo o mxml e o as > >>> >> > >>> >> Qualquer ajuda é bem vinda > >>> >> > >>> >> 2009/10/11 Marcelo Caser <marceloca...@gmail.com> > >>> >> > >>> >> > >>> >> > >>> >> > >>> >> > >>> >> > coloque seu metodo de getCursos() na propriedade change do > datagrid > >>> >> > >>> >> > 2009/10/11 Leonardo Ribeiro <leojribe...@gmail.com> > >>> >> > >>> >> >> Foi o q fiz (conforme primeira postagem) > >>> >> > >>> >> >> public function onResultExcluir(event: ResultEvent):void { > >>> >> >> // listCursos.removeItemAt(idxSelected); > >>> >> >> // idxSelected = -1; > >>> >> >> // cursoSelected = null; > >>> >> >> Alert.show("Curso excluído."); > >>> >> >> getCursos(); > >>> >> >> } > >>> >> > >>> >> >> 2009/10/11 Marcelo Caser <marceloca...@gmail.com> > >>> >> > >>> >> >> chame seu metodo de listagem novamente, apos excluir! > >>> >> > >>> >> >>> 2009/10/11 Leonardo Ribeiro <leojribe...@gmail.com> > >>> >> > >>> >> >>> Srs, > >>> >> > >>> >> >>>> Fiz uma listagem simples com um DataGrid e uns botoes (inserir, > >>> >> >>>> alterar, > >>> >> >>>> excluir) no momento estou testando apenas o Excluir. > >>> >> >>>> A exclusao funciona perfeitamente (no banco) porém o datagrid > nao > >>> >> >>>> atualiza (continua com todos os registros de antes da > exclusao). > >>> >> >>>> Abaixo segue o mxml e o as. > >>> >> > >>> >> >>>> <?xml version="1.0" encoding="utf-8"?> > >>> >> >>>> <mx:TitleWindow xmlns:mx="http://www.adobe.com/2006/mxml" > >>> >> >>>> layout="absolute" width="576" height="346" title="Cursos" > >>> >> >>>> showCloseButton="true" creationComplete="init();" alpha="1.0"> > >>> >> >>>> <mx:DataGrid x="10" y="10" width="419" height="286" > >>> id="dgCursos" > >>> >> >>>> dataProvider="{listCursos}" > >>> >> >>>> itemClick="dgCursoItemClick(event);"> > >>> >> >>>> <mx:columns> > >>> >> >>>> <mx:DataGridColumn headerText="Código" width="50" > >>> >> >>>> dataField="codigo"/> > >>> >> >>>> <mx:DataGridColumn headerText="Nome" width="100" > >>> >> >>>> dataField="nome"/> > >>> >> >>>> </mx:columns> > >>> >> >>>> </mx:DataGrid> > >>> >> >>>> <mx:Button x="442" y="11" label="Novo" width="101" > >>> id="btnNovo" > >>> >> >>>> click="novo();"/> > >>> >> >>>> <mx:Button x="442" y="41" label="Alterar" width="101" > >>> >> >>>> id="btnAlterar" click="alterar();"/> > >>> >> >>>> <mx:Button x="442" y="71" label="Excluir" width="101" > >>> >> >>>> id="btnExcluir" click="excluir();"/> > >>> >> >>>> <mx:Button x="442" y="274" label="Fechar" width="101" > >>> >> >>>> id="btnFechar" > >>> >> >>>> click="fechar();"/> > >>> >> > >>> >> >>>> <mx:RemoteObject id="cursoService" showBusyCursor="true" > >>> >> >>>> fault="onFault(event)" destination="cursoService"> > >>> >> >>>> <mx:method name="getCursos" > >>> result="onResultGetCursos(event)" > >>> >> >>>> fault="onFault(event)"/> > >>> >> >>>> <mx:method name="excluir" > result="onResultExcluir(event)" > >>> >> >>>> fault="onFault(event)"/> > >>> >> >>>> </mx:RemoteObject> > >>> >> > >>> >> >>>> <mx:Script source="cursoLst.as"/> > >>> >> > >>> >> >>>> </mx:TitleWindow> > >>> >> > >>> >> >>>> AS > >>> >> > >>> >> >>>> [Bindable] > >>> >> >>>> private var listCursos:ArrayCollection; > >>> >> >>>> private var cursoSelected:Curso; > >>> >> >>>> private var idxSelected:int = -1; > >>> >> > >>> >> >>>> private function init():void { > >>> >> >>>> getCursos(); > >>> >> >>>> } > >>> >> > >>> >> >>>> private function novo():void { > >>> >> > >>> >> >>>> } > >>> >> > >>> >> >>>> private function alterar():void { > >>> >> > >>> >> >>>> } > >>> >> > >>> >> >>>> private function excluir():void { > >>> >> >>>> if (idxSelected > -1 && idxSelected <= listCursos.length - > 1 > >>> && > >>> >> >>>> cursoSelected != null) { > >>> >> >>>> cursoService.excluiCurso(cursoSelected); > >>> >> >>>> } else { > >>> >> >>>> Alert.show("Selecione um Curso para excluir."); > >>> >> >>>> } > >>> >> >>>> } > >>> >> > >>> >> >>>> public function onResultExcluir(event:ResultEvent):void { > >>> >> >>>> // listCursos.removeItemAt(idxSelected); > >>> >> >>>> // idxSelected = -1; > >>> >> >>>> // cursoSelected = null; > >>> >> >>>> Alert.show("Curso excluído."); > >>> >> >>>> getCursos(); > >>> >> >>>> } > >>> >> > >>> >> >>>> private function dgCursoItemClick(event:ListEvent):void { > >>> >> >>>> idxSelected = event.rowIndex; > >>> >> >>>> cursoSelected = listCursos.getItemAt(idxSelected) as Curso; > >>> >> >>>> } > >>> >> > >>> >> >>>> private function fechar():void { > >>> >> >>>> PopUpManager.removePopUp(this); > >>> >> >>>> } > >>> >> > >>> >> >>>> public function getCursos():void { > >>> >> >>>> Alert.show("getCursos()"); > >>> >> >>>> cursoService.getCursos(true); > >>> >> >>>> } > >>> >> > >>> >> >>>> public function onResultGetCursos(event:ResultEvent):void { > >>> >> >>>> Alert.show("Pegou Cursos."); > >>> >> >>>> listCursos = event.result as ArrayCollection; > >>> >> >>>> } > >>> >> > >>> >> >>>> public function onFault(event:FaultEvent):void { > >>> >> >>>> Alert.show(event.fault.message); > >>> >> >>>> } > >>> >> > >>> >> >>>> O fonte ta beeem simples, apos excluir mando pegar os cursos de > >>> novo > >>> >> >>>> e a > >>> >> >>>> listCursos esta como dataProvider do DataGrid. > >>> >> >>>> Alguem sabe o que estou fazendo de errado? > >>> >> > >>> >> >>>> -- > >>> >> >>>> []'s > >>> >> >>>> Leonardo > >>> >> > >>> >> >>>> Linux User #488650 > >>> >> >>>> Ubuntu User #27045 > >>> >> >>>> Mais sobre o Ubuntu em português: > http://www.ubuntu-br.org/comece > >>> >> > >>> >> >> -- > >>> >> >> []'s > >>> >> >> Leonardo > >>> >> > >>> >> >> Linux User #488650 > >>> >> >> Ubuntu User #27045 > >>> >> >> Mais sobre o Ubuntu em português:http://www.ubuntu-br.org/comece > >>> >> > >>> >> -- > >>> >> []'s > >>> >> Leonardo > >>> >> > >>> >> Linux User #488650 > >>> >> Ubuntu User #27045 > >>> >> Mais sobre o Ubuntu em português:http://www.ubuntu-br.org/comece > >>> > > > >>> > > >>> > >>> >> > >>> > >> > >> > >> -- > >> []'s > >> Leonardo > >> > >> Linux User #488650 > >> Ubuntu User #27045 > >> Mais sobre o Ubuntu em português: http://www.ubuntu-br.org/comece > >> > > > > > > > > -- > > []'s > > Leonardo > > > > Linux User #488650 > > Ubuntu User #27045 > > Mais sobre o Ubuntu em português: http://www.ubuntu-br.org/comece > > > > > > > > > > > -- []'s Leonardo Linux User #488650 Ubuntu User #27045 Mais sobre o Ubuntu em português: http://www.ubuntu-br.org/comece --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---