anchor.diff:      aFilter.Value := Uppercase(FEdit.Text)
     end
     else
  +  if FValueType = efUniqueIdentifier then
  +  begin
  +    if IsUniqueIdentifier(trim(FEdit.Text)) then
  +      aFilter.Value := trim(FEdit.Text)
  +    else
  +      aFilter.Value := null;
  +    aFilter.DataType:= fdtString;
  +  end
  +  else
     if FValueType = efInteger then
     begin
       if IsNumeric(FEdit.Text, false) then
  
positive.code:     procedure ClearMenuItemClick (Sender : TObject);
      procedure FilterMenuPopup (Sender : TObject);
      procedure SetFilterOperator(AValue: TmFilterOperator); virtual;
    public
      constructor Create(TheOwner: TComponent); override;
      destructor Destroy; override;
  
negative.code:       efUppercaseString: FEdit.Text := UpperCase(VarToStr(aFilter.Value));
        efInteger: FEdit.Text:= IntToStr(aFilter.Value);
        efFloat: FEdit.Text := FloatToStr(aFilter.Value);
        efUniqueIdentifier: FEdit.Text:= VarToStr(aFilter.Value)
        else
          FEdit.Text:= VarToStr(aFilter.Value);
      end;
  