Cara desculpa eu só copiei e colei o codigo para te mostrar o "fluxo" do
Remote Object, que era pra vc tratar o que quer que fosse no onResult e
tals, nem me liguei q tinha deixado os  retornos errados.
Mals ai...
xD

Em 30 de abril de 2010 12:20, Cido - Automação <supo...@samos.com.br>escreveu:

>  legal galera
>
> agora to comecando a entender
>
> obrigado
>
>  *From:* Guilherme Sjlender <guisjlen...@gmail.com>
> *Sent:* Thursday, April 29, 2010 3:31 PM
> *To:* flexdev@googlegroups.com
> *Subject:* Re: [flexdev] resultado de uma função em flex
>
> Na verdade.... o fluxo correto seria...
>
>
> *private* *function* Busca_Produto(codigo:String):Boolean {
>
> CadProDAO.Buscar(*"select * from cadpro join cadsld on cadsld.sldemp =
> '00001**' and cadsld.sldpro = cadpro.procod where profab = '"* + codigo +
> *"'"*);
> *
> **private* *function* resultadoCadProDAO(event:ResultEvent) : *void* {
>
> arraylistCadProDAO = event.result *as* ArrayCollection;
>
>        *if* (arraylistCadProDAO != *null*) {
>
> * *       *      *chamaAlert(arraylistCadProDAO.length != 0 ) ;
>
>        }
>
> }
>
> *private* *function* chamaAlert(value:Boolean):* void* {
> *
>
>        if(value) {
>
>               Alert.show(arraylistCadProDAO[0].PRODES);
>
>         }
> *
> }
>
> mas como ele disse que quer reaproveitar a função resultadoCadProDAO eu
> faria assim...
>
> *private* *function* Busca_Produto(codigo:String):Boolean {
>
> CadProDAO.Buscar(*"select * from cadpro join cadsld on cadsld.sldemp =
> '00001**' and cadsld.sldpro = cadpro.procod where profab = '"* + codigo +
> *"'"*);
>
> this.addEventListener("eventBuscaProduto",chamaAlert);
> *
> **private* *function* resultadoCadProDAO(event:ResultEvent) : *void* {
>
> arraylistCadProDAO = event.result *as* ArrayCollection;
>
> this.dispatchEvent(new Event("eventBuscaProduto"));
>
> }
>
> *private* *function* chamaAlert(event:Event):* void* {
> **
>
>        *if* (arraylistCadProDAO != *null*) {
>
> * *       *      *if(arraylistCadProDAO.length != 0 ) {
>
> * *       *      ** *       *      **
> Alert.show(arraylistCadProDAO[0].PRODES);*
>
> * *       *      *}
>
>        }
>
> this.removeEventListener("eventBuscaProduto",chamaAlert);
> }
>
> dessa forma ele irá reaproveitar essa função =P
>
>
> Em 29 de abril de 2010 15:04, bruno bg <bruno...@ig.com.br> escreveu:
>
>> CIDO..  vai pela solução do RAFA COMIM.
>>
>>
>> bruno bg
>>
>>
>>
>> Em 29 de abril de 2010 14:23, Rafa Comim <rafaco...@gmail.com> escreveu:
>>
>>  O fluxo correto desse teu código creio  que seria o seguinte:
>>>
>>>
>>> *private* *function* Busca_Produto(codigo:String):Boolean {
>>>
>>> CadProDAO.Buscar(*"select * from cadpro join cadsld on cadsld.sldemp =
>>> '00001**' and cadsld.sldpro = cadpro.procod where profab = '"* + codigo
>>> + *"'"*);
>>>
>>> }
>>>
>>> *private* *function* resultadoCadProDAO(event:ResultEvent) : *void* {
>>>
>>> arraylistCadProDAO = event.result *as* ArrayCollection;
>>>
>>> *if* (arraylistCadProDAO != *null*) {
>>>
>>> *if* (arraylistCadProDAO.length != 0 ) {*return* *true*;} *else* {*
>>> return* *false*;}
>>>
>>> } *else* {*return* *false*}
>>>
>>> }
>>>
>>> Em 29 de abril de 2010 14:14, Cido - Automação 
>>> <supo...@samos.com.br>escreveu:
>>>
>>>  a sim
>>>> fazendo a validação no  resultadoCadProDAO  eu tenho feito e sei que dá
>>>> certo
>>>> é que queria fazer ele reaproveitavel, pq em diversos momentos no
>>>> sistema  eu preciso buscar um produto,
>>>> no caso eu teria que criar um  resultadoCadProDAO  pra cada
>>>> situação busca de produto
>>>> onde fica nessa situação o reaproveitamento de codigo ??
>>>> mas, se num tem outra forma eu vou fazer isso..
>>>>
>>>> obrigado
>>>>
>>>> cido
>>>>
>>>>
>>>>  *From:* Guilherme Sjlender <guisjlen...@gmail.com>
>>>> *Sent:* Thursday, April 29, 2010 1:58 PM
>>>>   *To:* flexdev@googlegroups.com
>>>> *Subject:* Re: [flexdev] resultado de uma função em flex
>>>>
>>>> Ata....
>>>>
>>>> Seguinte...
>>>>
>>>> Quando vc chama a função CadProDAO.Buscar ele irá no seu backend trazer
>>>> essa informação e retornar para o seu resultadoCadProDAO... porém...
>>>> ele só irá buscar depois que a função Busca_Produto terminar, ou seja,
>>>> ele irá fazer o
>>>>
>>>> *if* (arraylistCadProDAO != *null*) {
>>>>
>>>> *if* (arraylistCadProDAO.length != 0 ) {*return* *true*;} *else* {*
>>>> return* *false*;}
>>>>
>>>> } *else* {*return* *false*}
>>>>
>>>> }
>>>>
>>>> antes de retornar o seu resultadoCadProDAO... e vemos que ele irá
>>>> executar o *if* (arraylistCadProDAO != *null*) e como a lista está nula
>>>> ainda não irá retornar nada.... depois que terminar essa função... ai será
>>>> retornado a lista que vc precisa.... então, na segunda vez essa lista ja
>>>> está carregada, ai passa pelo if...
>>>>
>>>> O que vc deveria fazer é fazer essa validação no resultadoCadProDAO
>>>> chamando então o Alert.
>>>>
>>>> Compreendes?
>>>>
>>>> Seria isso =)
>>>>
>>>> Boa sorte ai.
>>>> Em 29 de abril de 2010 13:51, Cido - Automação 
>>>> <supo...@samos.com.br>escreveu:
>>>>
>>>>>  seguinte quando dou o primeiro Click ele num faz nada
>>>>> quando dou o segundo Click ela me traz a descrição do produto
>>>>> corretamente
>>>>> parece que ela me resulta o evento apenas quando clico no botão pela
>>>>> segunda vez
>>>>>
>>>>> cido
>>>>>
>>>>>  *From:* Guilherme Sjlender <guisjlen...@gmail.com>
>>>>> *Sent:* Thursday, April 29, 2010 1:41 PM
>>>>> *To:* flexdev@googlegroups.com
>>>>> *Subject:* Re: [flexdev] resultado de uma função em flex
>>>>>
>>>>> Você quer chamar essa função no duplo click? é isso sua duvida?
>>>>>
>>>>> Em 29 de abril de 2010 12:22, Cido - Automação 
>>>>> <supo...@samos.com.br>escreveu:
>>>>>
>>>>>>  sei que é uma questão da maneira como flex funciona
>>>>>> mas gostaria que alguem me desse uma dica de como fazer
>>>>>>
>>>>>> eu chamo a função num click de um Button dessa forma:
>>>>>> *
>>>>>>
>>>>>> if(Busca_Produto("100/B")) {
>>>>>>
>>>>>>  Alert.show(arraylistCadProDAO[0].PRODES);
>>>>>>
>>>>>>  }
>>>>>> *
>>>>>>
>>>>>> *private* *function* Busca_Produto(codigo:String):Boolean {
>>>>>>
>>>>>> CadProDAO.Buscar(*"select * from cadpro join cadsld on cadsld.sldemp
>>>>>> = '00001**' and cadsld.sldpro = cadpro.procod where profab = '"* +
>>>>>> codigo + *"'"*);
>>>>>>
>>>>>> *if* (arraylistCadProDAO != *null*) {
>>>>>>
>>>>>> *if* (arraylistCadProDAO.length != 0 ) {*return* *true*;} *else* {*
>>>>>> return* *false*;}
>>>>>>
>>>>>> } *else* {*return* *false*}
>>>>>>
>>>>>> }
>>>>>>
>>>>>> *private* *function* resultadoCadProDAO(event:ResultEvent) : *void* {
>>>>>>
>>>>>>
>>>>>> arraylistCadProDAO = event.result
>>>>>> *as* ArrayCollection;
>>>>>>
>>>>>> }
>>>>>>
>>>>>>
>>>>>>
>>>>>> na primeiro click ele num traz o resultado, apenas no segundo click
>>>>>>
>>>>>> acredito que é uma questão de como os eventos do flex funciona
>>>>>>
>>>>>> alguem poderia me ajudar a como fazer ??
>>>>>>
>>>>>> obrigado
>>>>>>
>>>>>>
>>>>>>
>>>>>> cido
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> 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
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> -----------------------------------------------------------
>>>>> Guilherme Sjlender                            -
>>>>> Desenvolvedor RIA - Flex/Java         -
>>>>> http://site.gflex.biz                       -
>>>>> ------------------------------------------------
>>>>>
>>>>> --
>>>>> 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
>>>>>
>>>>> --
>>>>> 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
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> -----------------------------------------------------------
>>>> Guilherme Sjlender                            -
>>>> Desenvolvedor RIA - Flex/Java         -
>>>> http://site.gflex.biz                       -
>>>> ------------------------------------------------
>>>>
>>>> --
>>>> 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
>>>>
>>>> --
>>>> 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
>>>>
>>>
>>>
>>>
>>> --
>>> ______________________
>>>
>>> Atenciosamente,
>>>
>>> Rafael Comim
>>>
>>> --
>>> 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
>>>
>>
>>
>>
>> --
>> 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
>>
>
>
>
> --
> -----------------------------------------------------------
> Guilherme Sjlender                            -
> Desenvolvedor RIA - Flex/Java         -
> http://site.gflex.biz                       -
> ------------------------------------------------
>
> --
> 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
>
> --
> 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
>



-- 
______________________

Atenciosamente,

Rafael Comim

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