José Carlos!

Tente validar o produto quando o Focus estiver no TextInput do produto
(utilize o FocusIn ou o FocusOut que são propriedades do componente
TextInput). Acho que é isso!




Em 3 de novembro de 2010 10:23, José Carlos <jcleo...@gmail.com> escreveu:

> Ninguem .......
>
> On 1 nov, 11:19, Jose Carlos Leoner <jcleo...@gmail.com> wrote:
> > Pessoal
> > Tenho no código abaixo um datagrid com itens de um pedido de venda.
> > Quando clico no datagrid ele joga as colunas para os campos de edição.
> > No campo produto tenho uma validação contra o cadastro de produto. Se não
> > existir erro, pego a descrição, a unidade e o preço unitário.
> > Até aí, tudo bem, está funcionando.
> > Meu problema é que quando clico em um item do datagrid, ele joga as
> > informações para o campo e imediatamente executa
> > a validade do cadastro. Caso o usuário tenha alterado o preço unitário,
> ele
> > sobre com o preço do cadastro.
> > Eu queria que essa validalação só ocorrese quando eu desse um TAB no
> campo
> > "produto" e não a cada click do datagrid.
> > Tem como ? Já fiz várias pesquisas e não achei resposta ou não entendi
> uma
> > solução para o que preciso.
> > Será que teria que colocar um botão para fazer essa validação ?
> >
> > <mx:DataGrid id="brw_itens" dataProvider="{gridItens}"
> > click="selecionaItem(event)" y="190"  left="10" right="16" height="140"
> > rowHeight="18">
> >    <mx:columns>
> >      <mx:DataGridColumn headerText="Produto" dataField="produto"
> width="80"
> > textAlign="left" />
> >      <mx:DataGridColumn headerText="Descrição" dataField="des_prod"
> > width="300" />
> >      <mx:DataGridColumn headerText="Und" dataField="unidade" width="25"
> />
> >      <mx:DataGridColumn headerText="Qtd" dataField="quant" width="60"
> > textAlign="right" />
> >      <mx:DataGridColumn headerText="Unitário" dataField="pr_unit"
> width="60"
> > textAlign="right" />
> >      <mx:DataGridColumn headerText="Total" dataField="pretot" width="60"
> > textAlign="right"/>
> >    </mx:columns>
> > </mx:DataGrid>
> > <mx:TextInput id="produto" x="36" y="338" width="100" textAlign="left"
> > editable="false" height="20" maxChars="12" color="#000000"/>
> > <mx:TextInput id="des_prod" x="135" y="338" width="335" textAlign="left"
> > editable="false" tabEnabled="false" height="20" maxChars="6"
> > color="#000000"/>
> > <mx:TextInput id="unidade" x="478" y="337" width="33" textAlign="left"
> > editable="false" tabEnabled="false" height="20" maxChars="6"
> > color="#000000"/>
> > <mx:TextInput id="quant" x="519" y="337" width="58" textAlign="right"
> > editable="false" height="20" maxChars="12" color="#000000"/>
> > <mx:TextInput id="pr_unit" x="585" y="337" width="63" textAlign="right"
> > editable="false" height="20" maxChars="12" color="#000000"/>
> > <mx:TextInput id="pretot" x="656" y="337" width="43" textAlign="right"
> > editable="false" tabEnabled="false" height="20" maxChars="12"
> > color="#000000"/>
> > <mx:ArrayCollection id="validadores">
> >    <mx:StringValidator source="{produto}" property="text"
> > valid="busca_Produto()" />
> > </mx:ArrayCollection>
> >
> > private function selecionaItem(e:Event):void{
> >    itemSelecionado = e.currentTarget.selectedItem ;
> >    produto.text = itemSelecionado.produto;
> >    des_prod.text = itemSelecionado.des_prod;
> >    unidade.text = itemSelecionado.unidade;
> >    quant.text = itemSelecionado.quant;
> >    pr_unit.text = itemSelecionado.pr_unit;
> >    pretot.text = itemSelecionado.pretot;}
> >
> > private function busca_Produto(e):void{
> >    var remote:AcessoRemoto =
> AcessoRemoto.getInstance("vtgestor.produtos");
> >    cArg = produto.text ;
> >    remote.pesquisar(cArg,buscaRet_Produto);}
> >
> > private function buscaRet_Produto(e:ResultEvent):void{
> >    itemSelecionado = e.result ;
> >    if(itemSelecionado.erro =="0"){
> >      des_prod.text = itemSelecionado.descricao;
> >      unidade.text = itemSelecionado.unidade;
> >      pr_unit.text = itemSelecionado.prvenda;
> >      quant.setFocus();
> >    } else {
> >       S_Mensa("Produto não cadastrado","Erro na pesquisa",produto);
> >    }
> >
> >
> >
> > }- Ocultar texto das mensagens anteriores -
> >
> > - Mostrar texto das mensagens anteriores -
>
> --
> 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

Responder a