Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Como exemplo, supomos abaixo a personalização de um do evento “Antes de salvar” do cadastro de “Responsáveis pelo CAGED” do software “Folha” que tenha como regra que tem um campo chamado “AUTORIZACAO já existente tenha como informação , supomos a personalização que obrigue a informação como válida sempre com 7 caracteres e não menos que isso.

Após abrir a tela do editor do script acesse o menu “File” - “New Form”.

...

Code Block
languagedelphi
uses
  uFormValidacao;

var                       
  form : TFormValidacao;
  cAutorizacao : String;
begin            
  cAutorizacao := Trim(FFormPadraoRHCAGEDRESP.ValorNaTela('AUTORIZACAO')) 
  if (Length(cAutorizacao) < 7) then
    begin                                
    form := TFormValidacao.Create(nil);
    try                  
      form.edAutorizacao.Text := cAutorizacao;
      if (form.Showmodal = mrok) then
        FFormPadraoRHCAGEDRESP.ValorParaTela('AUTORIZACAO', form.edAutorizacao.Text)
      else                    
        FFormPadraoRHCAGEDRESP.AddErro(FFormPadraoRHCAGEDRESP.EditorDaColuna('EB_','AUTORIZACAO'),
                      'Autorização deve ter 7 dígitos');
    finally
      form.free;
    end;
  end;                       
end;        

Evidenciando boas práticas

  1. Uso do ShowModal
    Para o caso dos script´s para eventos em que se espera um resultado a partir da execução de um formulário, é uma boa prática que esse formulário seja aberto com ShowModal. Sem usar o ShowModal e sim o Show corre o risco do usuário clicar fora da tela e o formulário criado ser sobreposto causando dificuldade ao usuário.

  2. Uso do Free
    Importante sempre usar o método “Free”, inclusive quando instanciado formulários. O não uso deixa objetos perdidos em memória que podem causar problemas na utilização do sistema.

Para facilitar ainda mais o entendimento, foi produzido um vídeo sobre este conteúdo. Para acessá-lo, utilize o link abaixo:

https://vimeo.com/636457479/d2cb51a845