Lançado Adianti Framework 7.6!
Clique aqui para saber mais
TseekButton não passa código para campo auxiliar se digitado Como faço para passar o valor de um campo auxiliar na DIGITAÇÃO de um campo usando TseekButton? Coloquei um Tseekbutton em um formulário. Se clico na lupa ele devolve o valor do campo em questão e preenche um campo auxiliar de informação . Tudo OK. Se digito o valor do campo de busca sem clicar na lupa ele não preenche o campo auxiliar e o mesmo (campo auxiliar) fica em branco. G...
AN
TseekButton não passa código para campo auxiliar se digitado  
Como faço para passar o valor de um campo auxiliar na DIGITAÇÃO de um campo usando TseekButton?

Coloquei um Tseekbutton em um formulário. Se clico na lupa ele devolve o valor do campo em questão e preenche um campo auxiliar de informação . Tudo OK.

Se digito o valor do campo de busca sem clicar na lupa ele não preenche o campo auxiliar e o mesmo (campo auxiliar) fica em branco.

Grato se alguem puder me dar uma luz.

Pacotão Dominando o Adianti Framework 7
O material mais completo de treinamento do Framework.
Curso em vídeo aulas + Livro completo + Códigos fontes do projeto ERPHouse.
Conteúdo Atualizado! Versão 7.4


Dominando o Adianti 7 Quero me inscrever agora!

Comentários (3)


NR

Verifique a função onSelect da classe que é chamada pelo TSeekButton. Ela é responsável por enviar os dados para o formulário nas 2 situações, ao preencher o campo e ao clicar na lupa.
AN

Olá Nataniel.

Rodando a aplicação o que entendi no comportamento da classe é o seguinte: A ação dessa classe só é executada se clicada a lupa.

Se porventura o usuário souber o código ele não necessita procurá-lo e portanto não clica na lupa, consequentemente, ele não executa nenhuma ação.

A função onSelect só é executada se o usuário clicar no referido botão (Selecionar) da TWindow e ele só clica nele se a ação foi executada.

Código abaixo:

public static function onSelect($param)
{
try
{
$key = $param['key'];

TTransaction::open('erpweb');

// load the active record
$object = tgtes::find($key);

// closes the transaction
TTransaction::close();

$send = new StdClass;
$send->tes_dentro_rev = $object->id;
$send->cfo_dentro_rev = $object->cfo;
TForm::sendData('form_grupoproduto', $send);

parent::closeWindow(); // closes the window
}
catch (Exception $e)
{
$send = new StdClass;
$send->tes_dentro_rev = '';
$send->cfo_dentro_rev = '';
TForm::sendData('form_grupoproduto', $send);

// undo pending operations
TTransaction::rollback();
}
}
NR

Na verdade a ação é executada no evento onBlur, ou seja, quando sair do campo. Se você der um TAB ou clicar fora do campo a ação será executada. Não é necessário clicar na lupa e sim sair do campo.