3

What is the best way to convert a utcDateTime value to a date type so I can use the global datetime functions on it?

int timeDiff;
date _now = systemdateget();
;

select firstOnly myUTCDateTime from _myTable
timeDiff = Global::yearDiff(_now, _myTable.myUTCDateTime);
info(strfmt('%1', timeDiff);

Thanks

Jay Hofacker
  • 3,439
  • 20
  • 14
Brad
  • 1,357
  • 5
  • 33
  • 65

3 Answers3

5

The DateTimeUtil Class has methods for dealing with utcdatetime variables. In your case you would use DateTimeUtil::date.

timeDiff = Global::yearDiff(_now, DateTimeUtil::date(_myTable.myUTCDateTime));
Jay Hofacker
  • 3,439
  • 20
  • 14
4

Logic for utcdatetime :

utcdateTime  testDonedateTime1;
utcdateTime  testDonedateTime;
transdate    tmpDate ;
timeofday    tmpTime;

testDonedateTime1 = inventJournalTable.PostedDateTime;
testDonedateTime  = DateTimeUtil::applyTimeZoneOffset(testDonedateTime1, DateTimeUtil::getUserPreferredTimeZone())
tmpDate = DateTimeUtil::date(testDonedateTime);
tmpTime = DateTimeUtil::time(testDonedateTime);  

Important : utcDateTime control properties TimeZonePreference set No conversion

Jan B. Kjeldsen
  • 17,817
  • 5
  • 32
  • 50
Arpan Sen
  • 41
  • 1
2
utcDateTime         _dateTime = 2012-12-31T13:59:58;
date                _date;
;

_date = DateTimeUtil::date(_dateTime);
info(strFmt('%1',_date));
Amir
  • 21
  • 1