Versions Compared

Key

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

Assim como na linguagem Delphi nativa o scripter também trabalha com os objetos seguindo seu ciclo de vida. Ou seja, fica a cargo do desenvolvedor do script tanto a criação como uso como “destruição” do objeto envolvido, para que o mesmo não fique constando em memória.

A sugestão quanto a isso é que os objetos criados sejam utilizados e eliminados utilizando estruturas de try… finally.

Abaixo um exemplo de código propondo a criação de um TClientDataSet, sua utilização usando a dmConexao3c para buscar dados no banco de dados, o ShowMessage para simplesmente exibir em tela e sua eliminação através do método free.

Code Block
languagedelphi
uses
  DB, DbClient;

var
  cds : TClientDataSet;
begin
  cds := TClientDataSet.Create(nil); //criação do objeto
  try        
    //utilização do objeto
    cds.Data := dmConexao3c.QueryPegaData('SEL_PESQUISAFILTRO', 
                                          'RAZAOSOC, CNPJ',
                                         ['?', '1:s', 'FILIAL',
                                          '?', '2:s', 'ESTAB = :ESTAB',
                                          'P', 'ESTAB', oDadosSis.EstabSelecionado],   
                                         [ftString, ftString, ftInteger],
                                         [300, 50, 0]);
    showMessage('Razão social: ' + cds.fieldByName('RAZAOSOC').value + #13#10+ 
                'CNPJ = ' + cds.fieldByName('CNPJ').value);
  finally                                          
    cds.free; //eliminação do objeto da memória.
  end;    
end;