opa!! massa! o importante eh funcionar!! hehehe abrass!!
2009/10/12 Leonardo Ribeiro <leojribe...@gmail.com> > 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 -~----------~----~----~----~------~----~------~--~---