I have a requirement to add a TField in memory to an in-memory TQuery. This TQuery component is not on a data module.
The code follows: Note AField is defined as TField;
qCorrect:= TQuery.Create(nil);
with qCorrect do begin
Name := 'qCorrect';
AutoCalcFields := False;
DataBaseName := fDataBaseName;
SessionName := fCurrSessionName;
BeforeOpen := qBeforeOpen;
OnCalcFields := qCorrectCalcFields;
//persistent fields for <correct> follow....
Fields.Clear;
AField := TIntegerField.Create(qCorrect);
if Assigned(AField) then begin
with AField do begin
name := 'qCorrectnumLR';
fieldName := 'numLR';
fieldKind := fkCalculated;
ReadOnly := False;
//DisplayName := 'numLR';
required := False;
end;
Fields.Add(AField);
end;
When the OnCalcFields event fires I get an error for the calculated field that says: "Error Field 'numLR' has no dataset".
Anybody know why this occurs? Thanks, Jonathan
The code follows: Note AField is defined as TField;
qCorrect:= TQuery.Create(nil);
with qCorrect do begin
Name := 'qCorrect';
AutoCalcFields := False;
DataBaseName := fDataBaseName;
SessionName := fCurrSessionName;
BeforeOpen := qBeforeOpen;
OnCalcFields := qCorrectCalcFields;
//persistent fields for <correct> follow....
Fields.Clear;
AField := TIntegerField.Create(qCorrect);
if Assigned(AField) then begin
with AField do begin
name := 'qCorrectnumLR';
fieldName := 'numLR';
fieldKind := fkCalculated;
ReadOnly := False;
//DisplayName := 'numLR';
required := False;
end;
Fields.Add(AField);
end;
When the OnCalcFields event fires I get an error for the calculated field that says: "Error Field 'numLR' has no dataset".
Anybody know why this occurs? Thanks, Jonathan