anchor.diff:  interface
   
   uses
  -  db, Graphics,
  -  mUtility;
  +  db, Graphics, variants,
  +  mUtility, mMathUtility, mFloatsManagement;
   
   type
   
  
positive.code:   FIsNull := false;
  end;
  
  constructor TNullableInteger.Create;
  begin
    inherited Create;
  end;
  
negative.code:     Self.Value:= aSourceField.AsString;
  end;
  
  procedure TNullableString.Assign(const aValue: String);
  begin
    Self.Assign(TNullableString.StringToVariant(aValue));
  end;
  
  procedure TNullableString.Assign(const aValue: Variant);
  begin
    CheckIfDifferentAndAssign(aValue);
  end;
  
  function TNullableString.CheckIfDifferentAndAssign(const aValue: Variant): boolean;
  begin
    if VarIsNull(aValue) then
    begin
      Result := Self.NotNull;
      Self.IsNull:= true
    end
    else
    begin
      if Self.IsNull then
        Result := true
      else
        Result := aValue <> FValue;
      if Result then
        Self.Value:= aValue;
    end;
  end;
  
  