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 <[email protected]>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 <[email protected]>
> *Sent:* Thursday, April 29, 2010 1:58 PM
> *To:* [email protected]
> *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 <[email protected]>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 <[email protected]>
>> *Sent:* Thursday, April 29, 2010 1:41 PM
>> *To:* [email protected]
>> *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
>> <[email protected]>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 [email protected]
>>> 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
>>
>>
>>
>>
>> --
>> -----------------------------------------------------------
>> 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 [email protected]
>> 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
>>
>> --
>> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
>> Para enviar uma mensagem, envie um e-mail para [email protected]
>> 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
>>
>
>
>
> --
> -----------------------------------------------------------
> 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 [email protected]
> 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
>
> --
> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
> Para enviar uma mensagem, envie um e-mail para [email protected]
> 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
>
--
______________________
Atenciosamente,
Rafael Comim
--
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para [email protected]
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