dateTimeRecToDateTime function

TDateTime4Compat dateTimeRecToDateTime(
  1. TFieldType dt,
  2. TDateTimeRec data
)

Implementation

TDateTime4Compat dateTimeRecToDateTime(TFieldType dt, TDateTimeRec data) {
  var ts = TTimeStamp(0, 0);
  switch (dt) {
    case TFieldType.ftDate:
      ts.date = data.date;
      break;
    case TFieldType.ftTime:
      ts.time = data.time;
      ts.date = dateDelta;
      break;
    default:
      try {
        // MSecsToTimeStamp(trunc(Data.DateTime)): a DateTime field stores milliseconds
        final ms = data.dateTime != null
            ? timeStampToMSecs(dateTimeToTimeStamp(data.dateTime!))
            : 0;
        ts = mSecsToTimeStamp(ms);
      } catch (_) {
        // the original source has an empty except swallowing the exception, translated as-is
      }
  }
  return timeStampToDateTime(ts);
}