Pegar id CheckList Ola, pessoal! Estou tentando pegar o id de um checklist, consigo pegar se ele esta marcado ou nao, preciso pegar o id. tirei um print para que os amigos possam analisar desde ja grato. ...
JA
Pegar id CheckList  
Ola, pessoal!

Estou tentando pegar o id de um checklist, consigo pegar se ele esta marcado ou nao, preciso pegar o id.

tirei um print para que os amigos possam analisar desde ja grato.

 
  1. <?php
  2. $this->form->appendPage('Cobrança');
  3. $button_add_mensalidade = TButton::create('button_add_mensalidade', array('GerarMensalidadeNewWindow', 'onEdit'), 'Gerar mensalidade', 'fas:dollar-sign green');
  4. $button_add_negociacao = TButton::create('button_add_negociacao', array('NegociacaoNewWindow', 'onEdit'), 'Gerar negociação', 'far:handshake blue');
  5. $button_add_mensalidade->setSize('100%');
  6. $button_add_negociacao->setSize('100%');
  7. $row = $this->form->addFields([new TLabel(''),$button_add_mensalidade],
  8. [new TLabel(''),$button_add_negociacao]);
  9. $this->orderlist = new TCheckList('checklist');
  10. $this->orderlist->setIdColumn('id');
  11. $this->orderlist->addColumn('id', 'Id', 'center', '10%');
  12. $this->orderlist->addColumn('Periodo->nome', 'Ano', 'center', '10%');
  13. $this->orderlist->addColumn('parcela', 'Pcl.', 'center', '10%');
  14. $this->orderlist->addColumn('vencimento', 'Vencimento', 'center', '10%');
  15. $this->orderlist->addColumn('valor', 'Valor', 'center', '10%');
  16. $this->orderlist->addColumn('desconto', 'Desconto', 'center', '10%');
  17. $this->orderlist->addColumn('FormaPagamento->nome', 'Forma', 'center', '10%');
  18. $this->orderlist->addColumn('StatusPagamento->nome', 'Status', 'center', '10%');
  19. $this->orderlist->setHeight(250);
  20. $this->orderlist->makeScrollable();
  21. // creates two datagrid actions
  22. $action1 = new TDataGridAction(array('RemoverRegistroWindowForm', 'onEdit'));
  23. $action1->setLabel('Remover registro');
  24. $action1->setField('id');
  25. $action2 = new TDataGridAction(array('Extrato','onGenerate'));
  26. $action2->setLabel('Extrato de pagamento');
  27. $action2->setField('id');
  28. $action2 = new TDataGridAction(array('Recibo','onGenerate'));
  29. $action2->setLabel('Recibo');
  30. $action2->setField('id');
  31. $action3 = new TDataGridAction(array('NewWindowForm','onEdit'));
  32. $action3->setLabel('Baixa manual');
  33. $action3->setField('id');
  34. $action4 = new TDataGridAction(array('AlunoForm', 'onEnviar'));
  35. $action4->setLabel('E-mail');
  36. $action4->setField('id');
  37. $action_group = new TDataGridActionGroup('Ações ', 'fa:th');
  38. $action_group->addHeader('Ações');
  39. $action_group->addAction($action1);
  40. $action_group->addAction($action2);
  41. $action_group->addAction($action3);
  42. $action_group->addAction($action4);
  43. // add the actions to the datagrid
  44. $this->orderlist->addActionGroup($action_group);
  45. $input_search = new TEntry('search');
  46. $input_search->placeholder = _t('Search');
  47. $input_search->setSize('100%');
  48. $this->orderlist->enableSearch($input_search, 'id, Periodo->nome');
  49. $container = new THBox;
  50. $container->style = 'border-bottom: 1px solid gray;padding-bottom:10px';
  51. $container->add( new TLabel('') );
  52. $container->add( $input_search )->style = 'float:right;width:30%;';
  53. $this->form->addContent( [$container] );
  54. $this->form->addFields( [$this->orderlist] );
  55. $button_rb = TButton::create('button_rb', array('AlunoForm', 'onRegistrarBoletoLote'), 'Registrar boleto', 'fas:barcode');
  56. $button_carne = TButton::create('button_carne', array('Carne', 'onGenerate'), 'Imprimir carne', 'fas:barcode');
  57. $button_boleto = TButton::create('button_boleto', array('Boleto', 'onGenerate'), 'Imprimir boleto', 'fas:barcode');
  58. $button_rb->setSize('100%');
  59. $button_carne->setSize('100%');
  60. $button_boleto->setSize('100%');
  61. $row = $this->form->addFields([new TLabel(''),$button_rb],
  62. [new TLabel(''),$button_carne],
  63. [new TLabel(''),$button_boleto]);
  64. ?>





 
  1. <?php
  2. public static function onRegistrarBoletoLote($param)
  3. {
  4. try
  5. {
  6. $id = array();
  7. foreach($param as $param_name => $pedido)
  8. {
  9. $str_pos = strpos($param_name, 'checklist');
  10. if($str_pos !== false)
  11. {
  12. $id[] = $pedido;
  13. echo '<pre>';
  14. var_dump($id);
  15. echo '</pre>';
  16. }
  17. }
  18. TTransaction::open('db_guiansoft');
  19. $repository = new TRepository('AlunoParcela');
  20. $criteria = new TCriteria;
  21. $criteria->add(new TFilter('id','IN', ($id)));
  22. $aluno_parcelas = $repository->load($criteria);
  23. if($aluno_parcelas)
  24. {
  25. foreach($aluno_parcelas as $aluno_parcela)
  26. {
  27. $vencimento = $aluno_parcela->vencimento;
  28. $data = new DateTime($vencimento);
  29. $boleto = new PJBoleto(
  30. date_format($data,'m/d/Y'),
  31. $valor = $aluno_parcela->valor,
  32. "1",
  33. "2",
  34. $desconto = $aluno_parcela->desconto,
  35. $nome_cliente = $aluno_parcela->SystemUser->name,
  36. $cpf_cliente = $aluno_parcela->responsavel->cpf,
  37. $endereco_cliente = $aluno_parcela->responsavel->logradouro,
  38. $numero_cliente = $aluno_parcela->responsavel->numero,
  39. $complemento_cliente = $aluno_parcela->responsavel->complemento,
  40. $bairro_cliente = $aluno_parcela->responsavel->bairro,
  41. $cidade_cliente = $aluno_parcela->responsavel->cidade,
  42. $estado_cliente = $aluno_parcela->responsavel->estado,
  43. "",
  44. $cep_cliente = $aluno_parcela->responsavel->cep,
  45. $pedido_numero = $aluno_parcela->id,
  46. "DM",
  47. $servico = $aluno_parcela->Curso->nome,
  48. "",
  49. "",
  50. "",
  51. "",
  52. "");
  53. //HDebug::raw($boleto);
  54. $pjbank = new PJBank(false,false);
  55. $pjbank->setApikey('');
  56. $pjbank->setSecret("");
  57. $boletoss = new PJBoletoEmLote(array($boleto));
  58. //HDebug::debug($boletoss);
  59. $emitido = $pjbank->emitirBoletoEmLoteSplit($boletoss->prepare());
  60. HDebug::debug($emitido);
  61. $boletos->pedido_numero = $emitido->getPedidoNumero();
  62. $boletos->linkboleto = $emitido->getLinkBoleto();
  63. $boletos->id_unico = $emitido->getIdUnico();
  64. $boletos->linha_digitavel = $emitido->getLinhaDigitavel();
  65. $boletos->store();
  66. }
  67. }
  68. TForm::sendData(self::$formName);
  69. // shows the success message
  70. new TMessage('info', ('Boleto registrado!'));
  71. TTransaction::close();
  72. }
  73. catch (Exception $e)
  74. {
  75. new TMessage('error',$e->getMessage().' linha '.$e->getLine().' file '.$e->getFile());
  76. TTransaction::rollback();
  77. }
  78. }
  79. ?>

Curso Dominando o Adianti Framework

O material mais completo de treinamento do Framework.
Curso em vídeo aulas + Livro completo + Códigos fontes do projeto ERPHouse.
Conteúdo Atualizado!


Dominando o Adianti Framework Quero me inscrever agora!

Comentários (2)


NR

O id está no final do nome do campo codificado com base64:
 
  1. <?php
  2. public static function onRegistrarBoletoLote($param)
  3. {
  4. try
  5. {
  6. $id = array();
  7. foreach($param as $param_name => $pedido)
  8. {
  9. $str_pos = strpos($param_name, 'checklist');
  10. if($str_pos !== false)
  11. {
  12. $dados_campo = explode('_',$param_name);
  13. $id[] = base64_decode(array_pop($dados_campo));
  14. //$id[] = $pedido;
  15. }
  16. }
  17. ........
  18. ?>
JA

Boa noite!

Grato pelo retorno Nataniel,
No checkbox funciona perfeitamente, já no checklist retorna se o campo está on, um colega informou que sai uma atualização até o final do mês corrigindo esse problema.

Att,
Jonathas Alves