Доброе время суток.
Возможно кому-то пригодится функция преобразования строки в тип utcdatetime.
X++:
static utcdatetime clrDateTimeParseExact(str _dateStr, str _format)
{
System.DateTime ret;
System.Globalization.CultureInfo cultureInfo;
int infoItem = infolog.line();
;
try
{
//Necessary if executed on the AOS
new InteropPermission(InteropKind::ClrInterop).assert();
//This will cause an exception
cultureInfo = System.Globalization.CultureInfo::get_InvariantCulture();
CodeAccessPermission::revertAssert();
return System.DateTime::ParseExact(_dateStr, _format, cultureInfo);
//Revert CAS back to normal
}
catch(Exception::CLRError)
{
infolog.clear(infoItem);
throw error(AifUtil::getClrErrorMessage());
}
}
Пример использования:
X++:
UTCDateTime dateTime;
;
dateTime = clrDateTimeParseExact("20120308181251", "yyyyMMddHHmmss");
Info(strfmt("%1", dateTime));