filter and lookup fields

How about use lookup field in filter expression?
Code:
function TOracleDataSet.ApplyFilterTo(Data: PRecordData): Boolean;
var OldFFilterBuffer: Pointer;
    SaveState: TDataSetState;
begin
  OldFFilterBuffer := FFilterBuffer;
  SaveState := SetTempState(dsFilter);
  try
    Result := True;
    FFilterBuffer := Data;
    if <Check Lookup in filter expression> then   // new source line
       GetCalcFields(PChar(FFilterBuffer));      // new source line
    if Assigned(OnFilterRecord) then OnFilterRecord(Self, Result);
    if Result then Result := ApplyFilter;
  finally
    RestoreState(SaveState);
    FFilterBuffer := OldFFilterBuffer;
  end;
end;
 
Back
Top