Skip to main content
Obs.: todos os métodos presentes nesta documentação utilizarão como base uma tabela chamada “categorias_produto”. Esta tabela foi criada em um modelo de dados chamado “docs” e possui três colunas: id, nome, id_pai.

__construct

Construtor da classe BDBRecursiveTreeView. Parâmetros:
$name
mixed
required
Nome do componente.
$database
mixed
required
Banco de dados onde os dados estão armazenados.
$model
mixed
required
Modelo dos dados.
$key
mixed
required
Chave principal do modelo.
$value
mixed
required
Valor a ser exibido.
$recusive_column
mixed
required
Coluna para operações recursivas.
$ordercolumn
mixed
default:"NULL"
(Opcional) Coluna de ordenação.
$criteria
TCriteria
default:"NULL"
(Opcional) Critérios adicionais para carregamento dos dados.
Exemplo de código:
$categoriasTreeView = new BDBRecursiveTreeView('categoriasTreeView', 'docs', 'CategoriasProduto', 'id', 'nome', 'id_pai');
$categoriasTreeView->enableCheck();

getItemsFromModel

Obtém os itens do modelo para construção da árvore. Exemplo de código:
$categoriasTreeView = new BDBRecursiveTreeView('categoriasTreeView', 'docs', 'CategoriasProduto', 'id', 'nome', 'id_pai');
$itens = $categoriasTreeView->getItemsFromModel();

reloadFromModel

(Método estático) Recarrega a árvore a partir do modelo especificado. Parâmetros:
$formname
mixed
required
Nome do formulário.
$name
mixed
required
Nome do componente.
$database
mixed
required
Banco de dados onde os dados estão armazenados.
$model
mixed
required
Modelo dos dados.
$key
mixed
required
Chave principal do modelo.
$value
mixed
required
Valor a ser exibido.
$recusive_column
mixed
required
Coluna para operações recursivas.
$ordercolumn
mixed
default:"NULL"
(Opcional) Coluna de ordenação.
$criteria
TCriteria
default:"NULL"
(Opcional) Critérios adicionais para carregamento dos dados.
$options
array
default:"[]"
(Opcional) Opções adicionais.
Exemplo de código:
$categoriasTreeView = new BDBRecursiveTreeView('categoriasTreeView', 'docs', 'CategoriasProduto', 'id', 'nome', 'id_pai');
$categoriasTreeView->enableCheck();

$btnRecarregar = new TButton('btnReloadFromModel');
$btnRecarregar->addStyleClass('btn-default');
$btnRecarregar->setImage('far:circle #000000');
$btnRecarregar->setAction(new TAction([$this, 'recarregarDados']), 'Recarregar Itens do Modelo');
Código de exemplo da função a ser chamada, lembrando que essa função precisa ser estática (static function).
public function recarregarDados($param)
{
    $criterio = new TCriteria();
    $criterio->add(new TFilter('id_pai', '=', '3'));
    BDBRecursiveTreeView::reloadFromModel('nomeForm', 'categoriasReloadFromModel', 'docs', 'CategoriasProduto', 'id', 'nome', 'id_pai', 'id asc', $criterio);
}