Cálculos em campos no formulário Alguém tem algum exemplo de como se faz cálculo para exibir nos campos de um formulário? Eu tenho o campo Entrada, e quero subtrair da Saída para obter o resultado exibido no campo Quantidade, como é feito? Isso tem no Tutor?...
AM
Cálculos em campos no formulário  
Fechado
Alguém tem algum exemplo de como se faz cálculo para exibir nos campos de um formulário?

Eu tenho o campo Entrada, e quero subtrair da Saída para obter o resultado exibido no campo Quantidade, como é feito?
Isso tem no Tutor?

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


AS

Tem vários exemplos na opção "organization/complex views/Pos Form" e "Sale Form".
Você pode alterar os valores usando o setValue como nos exemplos abaixo (extraido do tutor)

$field2->setValue('123');
$field2->setEditable(FALSE);
$field3->setMask('99.999-999');
$field4->setMaxLength(10);
$field6->setSize(100);
$field7->setRange(0,100,10);
$field8->setRange(0,100,10);
$field7->setValue(30);
$field8->setValue(50);
$field9->setSize(300, 50);
AS

Outro exemplo:

 
  1. <?php
  2. public static function unformataNumero($varnumero)
  3. {
  4. //Apaga todos os caracteres que não estejam entre "0" e "9"
  5. //e não sejam "," (vírgula)
  6. $varnumero = preg_replace("/[^0-9,]/",'',$varnumero);
  7. //substitui a vírgula por ponto
  8. $varnumero = preg_replace("/,/",'.',$varnumero);
  9. return $varnumero;
  10. }
  11. static public function onExitActionCambioMoedaControle($param)
  12. {
  13. if ($param['cambiomoedaviagem'] <> 0)
  14. {
  15. If ($param['precomoedaviagem'] <> 0)
  16. {
  17. $precmviagem = FuncoesUteis::unformataNumero($param['precomoedaviagem']);
  18. $cambmviagem = FuncoesUteis::unformataNumero($param['cambiomoedaviagem']);
  19. $data = new stdClass();
  20. $data->precomoedacontrole = number_format(($precmviagem * $cambmviagem), 2, ',', '.');
  21. //new TMessage('info',$data->precomoedacontrole);
  22. TForm::sendData('form_Inscricao',$data);
  23. }
  24. else
  25. {
  26. if($param['precomoedacontrole'] <> 0)
  27. {
  28. $precmcontrole = FuncoesUteis::unformataNumero($param['precomoedacontrole']);
  29. $cambmviagem = FuncoesUteis::unformataNumero($param['cambiomoedaviagem']);
  30. $data = new stdClass();
  31. $data->precomoedaviagem = number_format($precmcontrole * $cambmviagem, 2, ',', '.');
  32. //number_format($data->precomoedacontrole, 2, ',', '.');
  33. //new TMessage('info',$data->precomoedaviagem);
  34. TForm::sendData('form_Inscricao',$data);
  35. }
  36. }
  37. }
  38. }
  39. ?>
PD

Alex,

Aqui tem exemplo de cálculos por meio do setExitAction():
www.adianti.com.br/framework_files/tutor/index.php?class=POSFormView

Veja que se alterar a quantidade, altera o preço total.

Att,
Pablo