anchor.diff:          tmpVirtualFieldDefs.Free;;
         end;
       end;
  +
  +    if FDisplayLabelFieldNames.Count = 0 then
  +      FDataProvider.GetMinimumFields(FDisplayLabelFieldNames);
  +    if FDisplayLabelFieldNames.Count = 0 then
  +      raise Exception.Create('[TmLookupFilterConditionPanel] Missing DisplayLabelFieldNames.');
   
       if FKeyFieldName <> '' then
         keyFieldName := FKeyFieldName
  
positive.code:   keyFieldName : string;
    tmpVirtualFieldDefs : TmVirtualFieldDefs;
  begin
    if FKeyFieldName = '' then
      raise Exception.Create('[TmLookupFilterConditionPanel] Missing KeyFieldName.');
    if FValueFieldName = '' then
      raise Exception.Create('[TmLookupFilterConditionPanel] Missing ValueFieldName.');
  
    if FDisplayLabelFieldNames.Count = 0 then
      raise Exception.Create('[TmLookupFilterConditionPanel] Missing DisplayLabelFieldNames.');
  
    if not Assigned(FDataProvider) then
      raise Exception.Create('[TmLookupFilterConditionPanel] Missing DataProvider.');
  
    lookupFrm := TmLookupFrm.Create(Self);
    try
  
negative.code:     FValueType : TmEditFilterValueType;
      FDataProvider: TmDataProvider;
      FKeyFieldName : string;
      //FValueFieldName : string;
      FLookupFieldNames : TStringList;
      FDisplayLabelFieldNames : TStringList;
      FOnFillVirtualFieldDefs : TmLookupFilterCondizionOnFillVirtualFields;
  