PAGUE 6 MESES
LEVE 12 MESES
GARANTIR DESCONTO

Fórum Access Violation #157656

03/05/2003

0

utilizando o Delphi 6, DBExpress e Interbase 6 fiz um form com 5 TEdits, 2 TMaskedit, e um TMEmo (observações) e um componente TSqlDataset que realiza um comando INSERT INTO em uma tabela onde os values sao parametros. Ao clicar no botão gravar passo os parametros, inclusive verifico se no maskedits que são datas foram digitadas, pois não são obrigatórias. Ele grava corretamenta tabela tudo OK, mas ao sair do formulário vem o erro ACCESS VIOLATION, percebi que ao acessar o form e sair sem realizar a operação de gravação isto não acontece, tenho certeza de que está no código de gravação, mas encontro o erro. Alguém tem alguma idéia, segue o código abaixo:

With QI do begin // QI - name da TSqlQuery de inclusão
Close;
Params[0].asInteger := StrToInt(ECod.text);
Params[1].asInteger := nCod; //Variavel que obtenho o valor antes deste codigo é um sequencial somente.
Params[2].asInteger := StrToInt(EEmp.text);
Params[3].asInteger := StrToInt(EVag.text);
Params[4].asString := EFun.text;
Params[5].asCurrency := ESal.ascurrency // Este esal é um componente para valores TFpnumericEdit sempre uso;
if Trim(EObs.text) <> ´´ then begin
Params[6].asMemo := EObs.Lines.text; // Este é o memo
end else begin
Params[6].asMemo := ´ ´;
end;
if EEnc.text <> ´ / / ´ then begin
Params[7].asDate := StrToDate(EEnc.text);
end else begin
Params[7].asDate := 0;
end;
if ECon.text <> ´ / / ´ then begin
Params[8].asDate := StrToDate(ECon.text);
end else begin
Params[8].asDate := 0;
end;
if EExp.text <> ´ / / ´ then begin
Params[9].asDate := StrToDate(EExp.text);
end else begin
Params[9].asDate := 0;
end;
ExecSql;
end;

Estou desconfiado do campo Blob no Interbase, quando atualizo através do comando INSERT INTO, será possível ? Todos os parametros foram definidos com seus tipos corretamente.
Se alguém puder ajudar, desde já agradeço.
César.


Cesarpir

Cesarpir

Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar