Ir para o conteúdo principal

PEX - Setando variável de sistema em formulário

Neste conteúdo vamos mostrar como, em um evento ao clicar de um botão, setar o valor de uma variável de sistema em formulários do processo.
Neste exemplo de uso, foi criado um processo com dois botões, um para setar os valores, e outro para limpar os campos.

Formulários criados:

  • Setando valores (Botão - Texto)
  • Limpar (Botão - Texto)
  • Username (Dissertativa - Texto)
  • Idusuário (Dissertativa - Inteiro)
  • Data (Dissertativa - Data)
  • Hora (Dissertativa - Hora)
  • Processo assunto (Dissertativa - Texto)
  • Nome do processo (Dissertativa - Texto)
  • Idprocesso (Dissertativa - Inteiro)

Configure os tamanhos dos campos como achar melhor.

image-1640261206872.png

Agora, no botão "Setando valores" vamos criar um evento que ao clicar, sete os valores das variáveis de sistema nos formulários que criamos. Copie o código ou utilize o assistente para configurar o PEX:

const
     cs_data = '2';
     cs_hora = '3';       // Aqui declaramos as constantes
     cs_user = '6';
     cs_iduser = '7';
     cs_assunto = '4';
     cs_nome = '5';
     cs_idProcesso = '8'; 
begin
     // Aqui modificamos os formulários para receberem os valores das variáveis de sistema
     aoFormularios.GetJSON(cs_data).SetDt('TEXTO', aoVariaveis.GetDt('/*DATAATUAL*/'));
     aoFormularios.GetJSON(cs_hora).SetStr('TEXTO', aoVariaveis.GetStr('/*HORAATUAL*/'));
     aoFormularios.GetJSON(cs_user).SetStr('TEXTO', aoVariaveis.GetStr('/*USERNAME*/'));
     aoFormularios.GetJSON(cs_iduser).SetInt('TEXTO', aoVariaveis.GetInt('/*IDUSUARIO*/'));
     aoFormularios.GetJSON(cs_assunto).SetStr('TEXTO', aoVariaveis.GetStr('/*PROCESSOASSUNTO*/'));
     aoFormularios.GetJSON(cs_nome).SetStr('TEXTO', aoVariaveis.GetStr('/*PROCESSONOME*/'));
     aoFormularios.GetJSON(cs_idProcesso).SetInt('TEXTO', aoVariaveis.GetInt('/*IDPROCESSO*/'));   
end;

Demonstação: 

image-1640261286571.gif

Agora, no botão "Limpar", para limpar os campos. Copie o código ou utilize o assistente para configurá-los:

const
     cs_data = '2';
     cs_hora = '3';
     cs_user = '6';       // Aqui declaramos as constantes
     cs_iduser = '7';
     cs_assunto = '4';
     cs_nome = '5';
     cs_idProcesso = '8';
begin
   // Aqui limpamos os campos
   aoFormularios.GetJSON(cs_data).SetStr('TEXTO', '');
   aoFormularios.GetJSON(cs_hora).SetStr('TEXTO', '00:00');
   aoFormularios.GetJSON(cs_user).SetStr('TEXTO', '');
   aoFormularios.GetJSON(cs_iduser).SetInt('TEXTO', 0);
   aoFormularios.GetJSON(cs_assunto).SetStr('TEXTO', '');
   aoFormularios.GetJSON(cs_nome).SetStr('TEXTO', '');
   aoFormularios.GetJSON(cs_idProcesso).SetInt('TEXTO', 0);  
end;

Demonstração: 

image-1640261376171.gif

Por fim, o processo no portal: 

image-1640261423821.gif