anchor.diff:    //        ftInterface: ;
     //        ftIDispatch: ;
             ftGuid: Result.AddPair(LPairName, LField.AsString);
  -          ftTimeStamp: Result.AddPair(LPairName, DateToJSON(LField.AsDateTime));
  -          ftFMTBcd: Result.AddPair(LPairName, TJSONNumber.Create(LField.AsFloat));
  +          ftTimeStamp: Result.AddPair(LPairName, DateFieldToJSON(LField));
  +          ftFMTBcd: Result.AddPair(LPairName, NumericFieldToJSON(LField));
             ftFixedWideChar: Result.AddPair(LPairName, LField.AsString);
             ftWideMemo: Result.AddPair(LPairName, LField.AsString);
     //        ftOraTimeStamp: ;
     //        ftOraInterval: ;
  -          ftLongWord: Result.AddPair(LPairName, TJSONNumber.Create(LField.AsInteger));
  -          ftShortint: Result.AddPair(LPairName, TJSONNumber.Create(LField.AsInteger));
  -          ftByte: Result.AddPair(LPairName, TJSONNumber.Create(LField.AsInteger));
  -          ftExtended: Result.AddPair(LPairName, TJSONNumber.Create(LField.AsFloat));
  +          ftLongWord: Result.AddPair(LPairName, NumericFieldToJSON(LField));
  +          ftShortint: Result.AddPair(LPairName, NumericFieldToJSON(LField));
  +          ftByte: Result.AddPair(LPairName, NumericFieldToJSON(LField));
  +          ftExtended: Result.AddPair(LPairName, NumericFieldToJSON(LField));
     //        ftConnection: ;
     //        ftParams: ;
     //        ftStream: ;
     //        ftTimeStampOffset: ;
     //        ftObject: ;
  -          ftSingle: Result.AddPair(LPairName, TJSONNumber.Create(LField.AsFloat));
  +          ftSingle: Result.AddPair(LPairName, NumericFieldToJSON(LField));
           end;
         end;
       end;
  
positive.code:         case LField.DataType of
    //        ftUnknown: ;
            ftString: Result.AddPair(LPairName, LField.AsString);
            ftSmallint: Result.AddPair(LPairName, TJSONNumber.Create(LField.AsInteger));
            ftInteger: Result.AddPair(LPairName, TJSONNumber.Create(LField.AsInteger));
            ftWord: Result.AddPair(LPairName, TJSONNumber.Create(LField.AsInteger));
            ftBoolean: Result.AddPair(LPairName, BooleanToTJSON(LField.AsBoolean));
            ftFloat: Result.AddPair(LPairName, TJSONNumber.Create(LField.AsFloat));
            ftCurrency: Result.AddPair(LPairName, TJSONNumber.Create(LField.AsCurrency));
            ftBCD: Result.AddPair(LPairName, TJSONNumber.Create(LField.AsFloat));
            ftDate: Result.AddPair(LPairName, DateToJSON(LField.AsDateTime));
            ftTime: Result.AddPair(LPairName, DateToJSON(LField.AsDateTime));
            ftDateTime: Result.AddPair(LPairName, DateToJSON(LField.AsDateTime));
    //        ftBytes: ;
    //        ftVarBytes: ;
            ftAutoInc: Result.AddPair(LPairName, TJSONNumber.Create(LField.AsInteger));
    //        ftBlob: ;
            ftMemo: Result.AddPair(LPairName, LField.AsString);
    //        ftGraphic: ;
  
negative.code:   //        ftCursor: ;
            ftFixedChar: Result.AddPair(LPairName, LField.AsString);
            ftWideString: Result.AddPair(LPairName, LField.AsWideString);
            ftLargeint: Result.AddPair(LPairName, NumericFieldToJSON(LField));
    //        ftADT: ;
    //        ftArray: ;
    //        ftReference: ;
  