Lançado Adianti Framework 7.6!
Clique aqui para saber mais
TDBFCombo 1.0: O TBDCombo, mas agora com filtro. Bom, vi no fórum que o pessoal estava pedindo, e fiz rapidinho um componente para ajudar. É bem fácil de usar, basta adicionar TFilters e ser feliz na filtragem. Valeu? Abraços pra quem curtiu!...
GF
TDBFCombo 1.0: O TBDCombo, mas agora com filtro.  
Fechado
Bom, vi no fórum que o pessoal estava pedindo, e fiz rapidinho um componente para ajudar. É bem fácil de usar, basta adicionar TFilters e ser feliz na filtragem. Valeu? Abraços pra quem curtiu!

Curso completo Meu Negócio Pronto
Use para si, ou transforme em um negócio: Inclui aulas e códigos-fontes
Gestor de conteúdo (SITE) + Loja Virtual (E-Commerce) + Emissor de Notas para infoprodutos


Meu negócio pronto Quero me inscrever agora!

Comentários (6)


ES

Parabéns pela colaboração Guilherme! Ficou bem legal e também farei uso desse componente.

abs
Eliezer

cara vlw mesmo, irei estudalo, cria um artigo como criar componentes para o adiante tenho muitas ideias de componentes, mas nem um susesso em coloca-las em pratica, ja vou usar seu componente agora , é o que eu precisava mesmo

cara fui fazer o teste assim

  1. <?php
  2.   $filtro1 = new TFilter('cargo_id','=''2');
  3.         $filtro2 = new TFilter('cargo_id','=''8');
  4.         
  5.         $funcionario = new TDBFCombo('funcionario_id','mysql','Funcionarios','id','nome',$filtro1,$filtro2);
  6.       
  7. ?>


ai deu o seguinte erro

Catchable fatal error: Object of class TFilter could not be converted to string in /home/alexandre/web-studio/factor_system/lib/adianti/database/TSqlSelect.class.php on line 76

to no aguardo abraços
GF

Cara. Deu erro porque você passou o argumento TFilter num parâmetro de ordenamento, que é uma String. Substitui pelo método construtor abaixo:

$funcionario = new TDBFCombo('funcionario_id','mysql','Funcionarios','id','nome','nome',$filtro1,$filtro2);

a tem que passar a ordenação tb, né
vlw muito obrigado cara
VL

Opa!
Fiz uma coisa muito semelhante em meu projeto.
Porém, alterei diretamente no componente padrão (sei que não é o adequado).
Adicionei uma lista de filtros ao TDBCombo.

  1. <?php
  2. public function __construct($name$database$model$key$value$ordercolumn NULL$filters NULL){
  3. // Antes da linha $repository->load...
  4. // define criterios de filtro (changed by Victor Silva)
  5. if ($filters)
  6. {
  7.     foreach ($filters as $filter)
  8.     {
  9.         $criteria->add($filter);
  10.     }
  11. }
  12. ?>


Para adicionar o filtro seria algo semelhante a isso
  1. <?php
  2.   $filter[] = new TFilter('active''=''T');
  3.   $responsible = new TDBCombo('responsible''mysql''User''id''name''name'$filter);
  4. ?>


Saudações!