anchor.diff:    FFieldName:= aSource.FieldName;
     FDataType := aSource.DataType;
     FOperationKind := aSource.OperationKind;
  -  FFormula := aSource.Formula;
  +  FFormula.Assign(aSource.Formula);
  +  FDisplayLabel.Assign(aSource.DisplayLabel);
  +  FDisplayFormat.Assign(aSource.DisplayFormat);
   end;
   
   class function TmGroupByDef.CheckOperationKindCompatibility(const aOperationKind: TmGroupByOperationKind; const aDataType: TFieldType): boolean;
  
positive.code: uses
    contnrs, db, variants, Classes,
    mDataProviderInterfaces,
    mIntList, mMaps, mSummary;
  
  type
  
  
negative.code:   begin
      currentCoord := '';
      tmpIndex := FVerticalKeysIndex;
      parentKeyValue := EMPTY_STRING_VALUE;
      for k := 0 to FVerticalGroupByDefs.Count -1 do
      begin
        tmpValue := FDataProvider.GetDatum(i).GetPropertyByFieldName(FVerticalGroupByDefs.Get(k).FieldName);
  