
March 1st, 2013, 11:43 AM
|
|
Contributing User
|
|
Join Date: Oct 2012
Location: São Paulo - Brazil
Posts: 34
Time spent in forums: 6 h 50 m 57 sec
Reputation Power: 1
|
|
|
Erro with parameters opening ADOQuery
I'm acessing a SQL table(MS SQL Server) via the following sql statement:
SELECT * FROM LAUDOS
WHERE CDEMPGRP = @pCDEMPGRP
AND CDLAUDO = @pCDLAUDO
ORDER BY CDLAUDO
In the parameters clause of the ADOQuery the parameters are defined:
@pCDEMPGRP
Attributes - []
DataType - ftInteger
Direction - pdInput
Name - @pCDEMPGRP
NumericScale - 0
Precision - 5 (the column of the table is numeric(5) )
Size - 0
Value - (null)
@pCDLAUDO
Attributes - []
DataType - ftInteger
Direction - pdInput
Name - @pCDLAUDO
NumericScale - 0
Precision - 12 (the column of the table is numeric(12) )
Size - 0
Value - (null)
The BeforeOpen method for the ADOQuery is:
procedure TfrmConstrucaoDET.qryLaudosBeforeOpen(DataSet: TDataSet);
begin
if Empresa <> 0 then
try
qryLaudos.Parameters.ParamByName('@pCDEMPGRP').Value := Empresa;
qrylaudos.Parameters.ParamByName('@pCDLAUDO').Value := 100000;
except
On e:Exception do
begin
Dialogs.ShowMessage('Erro atribuindo parametros = ' + e.Message);
Exit;
end;
end;
end;
And it doesn't report exceptions
In the FormCreate method, the first lines of the code are:
if Empresa <> 0 then
try
qryLaudos.Open;
except
On e:Exception do
begin;
MessageDlg('Erro OPEN qryLaudos = ' + e.Message,mtError,[mbOK],0);
Abort;
end;
end;
When I execute the program i receive the message:
Erro OPEN qryLaudos = Must declare the scalar variable "@pCDEMPGRP"
Should someone of you tell me what's happen here? Where am I making a mistake, please?
Greetings from São Paulo - Brazil
Ricardo
Delphi XE 15.0.3890.34076
Last edited by nightrider43 : March 1st, 2013 at 12:20 PM.
|