Selecionar TDBMulti Boa noite pessoal, Tenho um componente TDBMultiSearch carregado com as cidades cadastradas no sistema. Uso um webservice que busca o cep e converto pelo codigo da cidade. Como faço pra setar o componente com a cidade que vem desta busca? Ja tentei usar TDBMultiSearch::setValue mas nao funcionou. ...
AR
Selecionar TDBMulti  
Boa noite pessoal,

Tenho um componente TDBMultiSearch carregado com as cidades cadastradas no sistema.
Uso um webservice que busca o cep e converto pelo codigo da cidade.
Como faço pra setar o componente com a cidade que vem desta busca?

Ja tentei usar TDBMultiSearch::setValue mas nao funcionou.

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 (3)


FC

Esse exemplo eu uso para o onEdit
 
  1. <?php
  2. $object = new SisControle($key); // instantiates the Active Record
  3. $material[$object->material_id] = $object->material->nome_material;
  4. $object->material_id = $material;
  5. $this->form->setData($object);
  6. ?>

Observe que tem quem que passar o código dentro do vetor e o nome conforme sua mascara.

No seu caso como não sei de onde vem o web services se for static por exemplo pode usar o TForm::sendData()
AR

Opa amigo,

Cara tentei conforme tu me passou porém não obtive resultado no procedimento.

 
  1. <?php
  2. $cidade = new Cidade();
  3. $consultacep = $cidade->busca_cep($param['cep']);
  4. $obj = new StdClass;
  5. $obj->xlgr = $cidade->cep_logradouro;
  6. $obj->xbairro = $cidade->cep_bairro;
  7. $cepcidade[$cidade->cep_cidade_id] = 'São Leopoldo - RS';
  8. $obj->cidade_id = $cepcidade;
  9. TForm::sendData('form_Filial', $obj);
  10. ?>
NR

Como os dados do TDBMultiseach são adicionados dinamicamente conforme a digitação, é necessário adicionar um javascript após o sendData para adicionar a opção desejada:
 
  1. <?php
  2. TScript::create("$('#id_componente').select2('data', {id: 1, text: 'Texto'});");
  3. ?>