Lançado Adianti Framework 7.6!
Clique aqui para saber mais
Tamanho do TDBUniqueSearch num head do TPanelGroup Estou tentando utilizar um TDBUniqueSearch no header de um TPanelGroup, estou inserindo através do addHeaderWidget, mas fica desse tamanho, como um botão, conforme imagem em anexo. Existe a possibilidade de aumentar, é para que se possa selecionar uma empresa para atualizar o gráfico. ...
DA
Tamanho do TDBUniqueSearch num head do TPanelGroup  
Estou tentando utilizar um TDBUniqueSearch no header de um TPanelGroup, estou inserindo através do addHeaderWidget, mas fica desse tamanho, como um botão, conforme imagem em anexo.

Existe a possibilidade de aumentar, é para que se possa selecionar uma empresa para atualizar o gráfico.

  1. <?php
  2.             $PanelInadimp = new TPanelGroup('Inadimplência (Valor Original) por Mês/Ano');
  3.             $PanelInadimp->add($html);
  4.             $filter = new TCriteria;
  5.             $filter->add(new TFilter('id''IN''(SELECT system_unit_id FROM system_user_unit  where system_user_id = '.TSession::getValue('userid').')'));
  6.         
  7.             $empresa_id = new TDBUniqueSearch('empresa_id','cobrebem','Empresas','id','descricao','descricao',$filter);
  8.             $empresa_id->setSize('100%');
  9.             $empresa_id->setMinLength(0);
  10.             $PanelInadimp->addHeaderWidget$empresa_id );
  11. ?>

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


NR

O TPanelGroup é filho da TElement, assim é possível navegar pelos seus filhos. Ex:
  1. <?php
  2. $PanelInadimp->getHeader()->get(1)->style .= ';width:50%';
  3. ?>

O widget que você criou é adicionado no header do panel, e dentro do header temos 2 filhos(uma div para o título do panel e outra div para o seu dropdown). Ao usar get(1), estou pegando a segunda div e modificando seu estilo.
DA

Como sempre sua dica funcionou Nataniel, porém tentei criar um action para atualizar o gráfico na mudança de empresa, mas apresenta erros, coloquei assim:

  1. <?php
  2.             $change_action = new TAction(array(__CLASS__'onChangeAction'));
  3.             $empresa_id->setChangeAction($change_action);
  4. ?>


Apresentou a exceção : Você deve passar o AdiantiWidgetWrapperTDBMultiSearch (empresa_id) como parâmetro para TForm::setFields()

File: libadiantiwidgetwrapperTDBUniqueSearch.php : 128
AdiantiWidgetWrapperTDBMultiSearch->show()
File: libadiantiwidgetbaseTElement.php : 449
AdiantiWidgetWrapperTDBUniqueSearch->show()
File: libadiantiwidgetbaseTElement.php : 449
AdiantiWidgetBaseTElement->show()
File: libadiantiwidgetbaseTElement.php : 449
AdiantiWidgetBaseTElement->show()
File: libadiantiwidgetbaseTElement.php : 449
AdiantiWidgetBaseTElement->show()
File: libadiantiwidgetbaseTElement.php : 449
AdiantiWidgetBaseTElement->show()
File: libadiantiwidgetbaseTElement.php : 449
AdiantiWidgetBaseTElement->show()
File: libadiantiwidgetbaseTElement.php : 449
AdiantiWidgetBaseTElement->show()
File: libadiantiwidgetbaseTElement.php : 449
AdiantiWidgetBaseTElement->show()
File: libadianticontrolTPage.php : 230
AdiantiWidgetBaseTElement->show()
File: libadianticoreAdiantiCoreApplication.php : 82
AdiantiControlTPage->show(CobrancaDashboard)
File: engine.php : 27
AdiantiCoreAdiantiCoreApplication::run(1)
File: engine.php : 64
TApplication::run()

Como não estou criando um form, não será possivel utilizar um TAction? Ou estou fazendo errado? A título de aprendizagem como estou ainda me familiarizando com o Adianti.

Fiz outro fonte dessa vez criando um form e utilizando o campo da empresa nele e funciona normalmente.

NR

Faça o seguinte:
  1. <?php
  2. $form = new TForm('teste');
  3. $form->add($empresa_id);
  4. $form->addField($empresa_id);
  5. $PanelInadimp->addHeaderWidget$form );
  6. ?>
DA

Perfeito Nataniel, funcionou direitinho, mais uma dica para o caderninho. Quem sabe comece a ter conhecimento no Adianti, como tenho no Delphi, e adote-o de uma vez.

Grato pela presteza e atenção.