Skip to main content
Derivado da classe TMultiSearch, métodos herdados não sobrescritos podem também ser utililzados por objetos TDBUMultiSearch. Acesse a documentação do componente/classe-pai para conhecê-los. Obs.: todos os métodos presentes nesta documentação utilizarão como base uma tabela chamada “produto”. Esta tabela foi criada em um modelo de dados chamado “docs” e possui três colunas: id, nome, preco.

__construct

Construtor da classe TDBMultiSearch. Parâmetros:
$name
mixed
required
Nome do campo.
$database
mixed
required
Nome do banco de dados.
$model
mixed
required
Classe do modelo que representa a tabela no banco.
$key
mixed
required
Campo chave na tabela.
$value
mixed
required
Campo que será exibido na lista.
$orderColumn
mixed
default:"NULL"
(Opcional) Coluna pela qual a lista será ordenada.
$criteria
TCriteria
default:"NULL"
(Opcional) Critério para filtrar a lista.
Exemplo de código:
$selecaoProduto = new TDBMultiSearch('selecaoProduto', 'docs', 'Produto', 'id', 'nome');
$selecaoProduto->setMinLength(0);
$selecaoProduto->setSize(180, 70);
Exemplo de código (com parâmetros opcionais):
$criterio = new TCriteria();
$criterio->add(new TFilter('preco', '<', 5)); // Filtrar por itens da tabela cujo preço seja menor que 5

$selecaoProduto = new TDBMultiSearch('selecaoProduto', 'docs', 'Produto', 'id', 'nome', 'preco asc', $criterio);
$selecaoProduto->setMinLength(0);
$selecaoProduto->setSize('180px');
$selecaoProduto->setMask('{nome}, R$ {preco}');

disableIdSearch

Desativa a busca por ID. Exemplo de código:
$selecaoProduto = new TDBMultiSearch('selecaoProduto', 'docs', 'Produto', 'id', 'nome');
$selecaoProduto->setMinLength(0);
$selecaoProduto->setSize(180, 70);

$selecaoProduto->disableIdSearch();

enableIdTextualSearch

Ativa a busca textual por ID. Exemplo de código:
$selecaoProduto = new TDBMultiSearch('selecaoProduto', 'docs', 'Produto', 'id', 'nome');
$selecaoProduto->setMinLength(0);
$selecaoProduto->setSize(180, 70);

$selecaoProduto->enableIdTextualSearch(); // configuração padrão do componente

setOperator

Define o operador de busca. Parâmetros:
$operator
mixed
required
Operador para a busca.
Exemplo de código:
$selecaoProduto = new TDBMultiSearch('selecaoProduto', 'docs', 'Produto', 'id', 'nome');
$selecaoProduto->setMinLength(0);
$selecaoProduto->setSize(180, 70);
        
$selecaoProduto->setOperator('LIKE');

setMask

Define a máscara de exibição dos itens. Parâmetros:
$mask
mixed
required
Máscara para os itens.
Exemplo de código:
$selecaoProduto = new TDBMultiSearch('selecaoProduto', 'docs', 'Produto', 'id', 'nome');
$selecaoProduto->setMinLength(0);
$selecaoProduto->setSize(180, 70);

$selecaoProduto->setMask('{id} - {nome}');

setFilterColumns

Define as colunas de filtro. Parâmetros:
$columns
mixed
required
Colunas usadas para o filtro.
Exemplo de código:
$selecaoProduto = new TDBMultiSearch('selecaoProduto', 'docs', 'Produto', 'id', 'nome');
$selecaoProduto->setMinLength(0);
$selecaoProduto->setMask('{nome}, R$ {preco}');
$selecaoProduto->setSize(180, 70);

$selecaoProduto->setFilterColumns(['nome', 'preco']); // torna-se possível pesquisar itens através de seu nome ou preço

setValue

Define os valores do campo. Parâmetros:
$values
mixed
required
Array com os valores.
Exemplo de código:
$selecaoProduto = new TDBMultiSearch('selecaoProduto', 'docs', 'Produto', 'id', 'nome');
$selecaoProduto->setMinLength(0);
$selecaoProduto->setSize(180, 70);

$selecaoProduto->setValue([1, 3, 6]);

getPostData

Obtém os dados enviados pelo formulário. Exemplo de código:
$selecaoProduto = new TDBMultiSearch('selecaoProduto', 'docs', 'Produto', 'id', 'nome');
$dadosPostados = $selecaoProduto->getPostData();