Botão estilo DBSeekButton Bom dia, Preciso fazer um botão em determinados campos que tenha a mesma forma do DBSeekButton, mas com a Action que eu definir. Quero que o botão fique anexado ao campo. Alguém já fez algo assim? A formatação, somente com bootstrap e html puro eu consigo fazer assim, mas não sei como fazer no adianti. ...
RP
Botão estilo DBSeekButton  
Bom dia,

Preciso fazer um botão em determinados campos que tenha a mesma forma do DBSeekButton, mas com a Action que eu definir.
Quero que o botão fique anexado ao campo.
Alguém já fez algo assim?

A formatação, somente com bootstrap e html puro eu consigo fazer assim, mas não sei como fazer no adianti.
<div class="col-md-2 col-xs-1"><label class="control-label" for="CAMPO">Campo:</label> <div class="input-group"> <input class="form-control" id="CAMPO" name="CAMPO" value="" type="text"> <a class="btn btn-success input-group-addon" onclick="funcao_java();"><i class="glyphicon glyphicon-search"></i></a> </div> </div>

Curso Dominando o Adianti Framework

O material mais completo de treinamento do Framework.
Curso em vídeo aulas + Livro completo + Códigos fontes do projeto ERPHouse.
Conteúdo Atualizado!


Dominando o Adianti Framework Quero me inscrever agora!

Comentários (5)


LA

Fiz assim pro CEP. Não sei se é a melhor forma.

 
  1. <?php
  2. $btn_cep1 = TButton::create('pesquisarcep1', array($this, 'onCep'), '', 'ico_lupa2.png');
  3. $hbox = new THBox;
  4. $hbox->add($cep, 'display: initial;');
  5. $hbox->add($btn_cep);
  6. $hbox->style = 'margin: 4px;';
  7. $vbox = new TVBox;
  8. $vbox->style = 'width: 100%;';
  9. $vbox->add($hbox);
  10. $this->form->addFields([new TLabel('CEP:')], [$hbox]);
  11. $this->form->addField($cep);
  12. $this->form->addField($btn_cep);
  13. ?>
RP

Luis...
depois de algumas pesquisas e tentativas cheguei a essa solução.
Ainda atribui um evento onExit do campo para fazer uma busca pelo CEP, pois minha tabela de ruas tem um campo chave como Integer.

 
  1. <?php
  2. $acaoEnderecoLoc=new TAction(array('RuasSeek','onSetup')); //RuasSeek é um form do tipo TWindow
  3. $acaoEnderecoLoc->setParameter('receive_form','form_Clientes');
  4. $CLI_CEP = new TSeekButton('CLI_CEP', 'fa:search' );
  5. $CLI_CEP->setAction($acaoEnderecoLoc);
  6. $CLI_CEP->setAuxiliar($CLI_ENDERECO);
  7. $CLI_CEP->setMask('99999-999');
  8. $CLI_CEP->setSize('calc(20% - 23px)');
  9. $CLI_CEP->setUseOutEvent(false); //isso desabilita a chamada do evento onExit nativo do SeekButton.
  10. $CLI_CEP->setExitAction(new TAction(array($this, 'onExitCEP')));
  11. $CLI_ENDERECO->setSize('80%');
  12. $row = $this->form->addFields( [ new TLabel('CEP'), $CLI_CEP ] );
  13. $row->layout = ['col-md-6 col-xs-12'];
  14. ?>


Fica de contribuição pra quem precisar!
ER

olá Rogério,

Estou usando sua solução de usar uma chamada de uma list de pesquisa, semelhante a tdbseekbutton, mais vem um erro: ação não existente, no meu caso cfcweb20Seek, parecendo que o formulário list não existe ou não localizada na app/control...
ER

olá Rogério,

Estou usando sua solução de usar uma chamada de uma list de pesquisa, semelhante a tdbseekbutton, mais vem um erro: ação não existente, no meu caso cfcweb20Seek, parecendo que o formulário list não existe ou não localizada na app/control...
RP

vc criou a acao (no meu caso) onExitCEP?
é algo como o código abaixo.

 
  1. <?php
  2. public static function onExitCEP($param)
  3. {
  4. $cep = $param['CLI_CEP'];
  5. if (!empty($cep)) {
  6. try
  7. {
  8. TTransaction::open(TSession::getValue('Firenet'));
  9. $db = TTransaction::get();
  10. $query="select first(1) * from RUAS
  11. left join BAIRROS on RUA_BAIRRO=BAI_CODIGO
  12. left join CIDADES on RUA_CIDADE=CID_CODIGO
  13. left join ESTADOS on RUA_ESTADO=ESD_CODIGO
  14. left join PAISES on RUA_PAIS=PAI_CODIGO
  15. where RUA_CEP='".$cep."' order by RUA_NOME;";
  16. $result=$db->query($query);
  17. if ($row = $result->fetchObject()) {
  18. $obj = new StdClass;
  19. $obj->CLI_BAIRRO = $row->BAI_NOME;
  20. $obj->CLI_CIDADE = $row->CID_NOME;
  21. $obj->CLI_CIDADECODIGO = $row->RUA_CIDADE;
  22. $obj->CLI_ENDERECO = $row->RUA_NOME;
  23. $obj->CLI_ESTADO = $row->ESD_SIGLA;
  24. $obj->CLI_ESTADOCODIGO = $row->RUA_ESTADO;
  25. $obj->CLI_PAIS = $row->PAI_NOME;
  26. $obj->CLI_PAISCODIGO = $row->RUA_PAIS;
  27. TForm::sendData('form_Clientes', $obj);
  28. }
  29. else
  30. {
  31. new TMessage('error','CEP não encontrado');
  32. }
  33. TTransaction::close();
  34. }
  35. catch (Exception $e)
  36. {
  37. // does nothing
  38. }
  39. }
  40. }
  41. ?>