Lançado Adianti Framework 7.6!
Clique aqui para saber mais
Tquestion está limpando o formulário Boa tarde, estou fazendo um formulário que ao clicar em salvar, ele manda para um onConfirmar e depois para o Confirmar que é onde irá salvar, porém quando eu uso um TDialog no onConfirmar, ao clicar em sim, ele limpa o formulário e acaba que não salva, tentei por $this->form->setData( $data ); porém não consegui, creio que estou confundindo algo... Alguém pode me dar uma ideia de onde es...
IV
Tquestion está limpando o formulário  
Boa tarde, estou fazendo um formulário que ao clicar em salvar, ele manda para um onConfirmar e depois para o Confirmar que é onde irá salvar, porém quando eu uso um TDialog no onConfirmar, ao clicar em sim, ele limpa o formulário e acaba que não salva, tentei por $this->form->setData( $data ); porém não consegui, creio que estou confundindo algo... Alguém pode me dar uma ideia de onde estou errando? Obrigado desde ja

  1. <?php
  2. public function onConfirmar($param)
  3.     {
  4.         try
  5.         {
  6.             $data $this->form->getData();
  7.             $action1 = new TAction(array($this'Confirmar'));
  8.             // open a transaction with database
  9.             TTransaction::open('Sample');
  10.             $erro 0;
  11.             $mensagem="<b>Divergências:</b><br>";
  12.             if($param['valor_total_c']!=$param['valor_total'])
  13.             {
  14.                $erro++; 
  15.                $mensagem.="<b>".$erro.".</b> O valor informado no envio do pagamento não confere com o recebido";   
  16.             }     
  17.             if($erro!=0)
  18.             {
  19.                 new TQuestion($mensagem.'
  20.                     <br><br>
  21.                     Você realmente quer confirmar o pagamento?'$action1,null,'Divergências');
  22.             }else{
  23.                 new TQuestion('Você realmente quer confirmar o pagamento?'$action1);
  24.             }      
  25.             
  26.             
  27.             TTransaction::close(); // close the transaction
  28.          
  29.         $this->form->setData$data);        
  30.         $this->onReload($param);
  31.         }
  32.         catch (Exception $e// in case of exception
  33.         {
  34.             new TMessage('error'$e->getMessage());
  35.             $this->form->setData$this->form->getData() ); // keep form data
  36.             TTransaction::rollback();
  37.         }
  38.     }
  39.     public function Confirmar($param)
  40.     {
  41.         try
  42.         {
  43.             TTransaction::open('Sample');
  44.             
  45.             $data $this->form->getData();
  46.            /*
  47. CODIGO PARA SALVAR
  48. */
  49.             $this->form->setData$data );
  50.             new TMessage('info''Pagamento Confirmado com sucesso!');
  51.         }
  52.         catch (Exception $e// in case of exception
  53.         {
  54.             new TMessage('error'$e->getMessage());
  55.             $this->form->setData$this->form->getData() ); // keep form data
  56.             TTransaction::rollback();
  57.         }
  58.     }
  59. ?>

Pacotão Dominando o Adianti Framework 7
O material mais completo de treinamento do Framework.
Curso em vídeo aulas + Livro completo + Códigos fontes do projeto ERPHouse.
Conteúdo Atualizado! Versão 7.4


Dominando o Adianti 7 Quero me inscrever agora!

Comentários (4)


WP

Olá Igor o que ouve com este post??

www.adianti.com.br/forum/pt/view_3839?campos-invertidos-utilizando-a

não deu mais retornos, seria legal dar retorno..

sobre teu caso aqui, você esta usando uma nova Ação sendo assim esta nova ação já não vai mais enviar seu formulario como parámetro, e sim apenas os dados da ação
vai ter que enviar via parametros e tratar como array do outro lado exemplo (só estou supondo tem que testar)


  1. <?php
  2. // ///////////onConfirmar($param)
  3. $data $this->form->getData();
  4. $this->form->setData($data);
  5. $data_array = (array) $data;
  6. $action1 = new TAction(array($this'Confirmar'),$data_array);//aqui informar o segundo parametro
  7. //o onReload no final para que serve???
  8. /////Confirmar($param)
  9. TTransaction::open('Sample');
  10. $dados $param['NOME_DO_SEU_CAMPO'];
  11. //......
  12. //..
  13. //codigo para salvar usando array
  14. ?>
WP

esqueci de falar , converta o metodo Confirmar para static, lembre que com isso já não podera usar $this dentro do metodo
IV

Eu fiz isso, mas imaginei que tivesse formas mais fácil... Mas obrigado pela disposição, quanto ao post, eu olhei o que tu me sugeriu e acabei esquecendo de responder, mil desculpas mestre...
WP

mestre < to longe disso.
Bom no seu caso é a solução que eu vejo, pode ser que outros tenham outras ideias