LB
adicionar no TFieldList dinamicamente
Olá,
Como posso adicionar campos ao TFieldList dinamicamente após a mudança de uma TCombo?
Adicionei a TFieldList ao formulário, mas não sei como inserir os dados em serviço de forma dinâmica
Como posso adicionar campos ao TFieldList dinamicamente após a mudança de uma TCombo?
Adicionei a TFieldList ao formulário, mas não sei como inserir os dados em serviço de forma dinâmica
$this->fieldlist = new TFieldList;
$this->fieldlist->width = '100%';
$this->fieldlist->name = 'my_field_list';
$this->fieldlist->addField( '<b>Serviço</b>', $id_servico, ['width' => '30%'] );
$this->fieldlist->addField( '<b>Responsável</b>', $id_responsavel, ['width' => '30%'] );
$this->fieldlist->addField( '<b>Data Início</b>', $data_inicio, ['width' => '20%'] );
$this->fieldlist->addField( '<b>Data Final</b>', $data_final, ['width' => '20%'] );
$this->fieldlist->enableSorting();
$this->form->addField($id_servico);
$this->form->addField($id_responsavel);
$this->form->addField($data_inicio);
$this->form->addField($data_final);
$this->fieldlist->addHeader();
$this->fieldlist->addDetail( new stdClass );
$this->fieldlist->addDetail( new stdClass );
$this->fieldlist->addDetail( new stdClass );
$this->fieldlist->addDetail( new stdClass );
$this->fieldlist->addCloneAction();
Vamos ver se entendi. Você tem uma combo fora do TFieldList, e com base no item selecionado nessa combo você quer recarregar uma combo que está no TFieldList?
Isso mesmo Nataniel, por exemplo.
A combo fora do TFieldList vai estar a Classificação do Serviço, onde essa Classificação pode ter vinculado N serviços que eu quero adicionar no TFieldList
adianti.com.br/framework_files/tutor/index.php?class=FormHierarchica
O que você precisa é bem parecido com o exemplo acima, a diferença é que precisa adicionar [ ] no fim do nome do campo, pois o TFieldList cria os campos como array:
Olá Nataniel,
Não consegui implementar a solução.
Estava tentando seguir como mando abaixo. A idéia é adicionar no TFieldList com o evento da Combo.
Não consegui avançar com isso..
Para fazer o que você quer vai ter que usar um pouco de javascript:
Obrigado Nataniel,
Estou tendo dificuldade ainda. O TDBCombo não está setando o valor do serviço passado no .val() da função do javascript.
Ajustei o código vendo a documentação do select2.
Ficou dessa forma:
Obrigado Nataniel pela ajuda, vlw demais!
Nataniel Rabaioli, eu usei tua dica " ( 2019-01-25) Para fazer o que você quer vai ter que usar um pouco de javascript:"
Estou tendo problema quando o campo é do tipo "data"
Ele mostra assim: prntscr.com/td3tjd
Tu consegue me ajudar nisso?
Obrigado!
A data é uma string, por isso precisa das aspas dentro de val(''), caso contrário vai interpretar como um cálculo, dividindo o dia pelo mês e pelo ano.
Nataniel Rabaioli, Obrigado mestre!
Tentei tudo menos colocar entre aspas, deu certo.
Valeu!
Olá.
Muito obrigada pelas explicações Nataniel, estava tendo essa mesma dificuldade e consegui executar facilmente com sua ajuda.
No momento só não estou conseguindo formatar o campo do tipo "data" para padrão br
tentei usar como no exemplo do Adriano, mas não funcionou.
Conseguiria me ajudar?
Desde ja agradeço.
Olá.
Muito obrigada pelas explicações Nataniel, estava tendo essa mesma dificuldade e consegui executar facilmente com sua ajuda.
No momento só não estou conseguindo formatar o campo do tipo "data" para padrão br
tentei usar como no exemplo do Adriano, mas não funcionou.
Conseguiria me ajudar?
Desde ja agradeço.
O que tem na variável $dt_iniprev?
Obrigada pelo retorno Nataniel.
Para melhor compreensão, segue a função completa, desenvolvida para preencher uma fieldlist dinamicamente, a partir da seleção de um registro em uma outra fieldlist.
A função "format" nesse caso pertence à classe DateTime, por isso não é possível chamá-la diretamente em uma string($recurso->inicio_rec_prev). Se quiser usar dessa maneira precisa fazer o seguinte:
Outra coisa, esse post é antigo, atualmente temos outras opções mais simples de preencher o fieldlist. Veja o exemplo no tutor, agora é possível usar a função sendData para isso:
https://adianti.com.br/framework_files/tutor/index.php?class=FormFieldListEventsView
Olá Livea Araujo,
No meu caso não deu problema na formatação da data. A data eu tratei assim: