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
-~----------~----~----~----~------~----~------~--~---

Responder a