![]() |
#4 |
Участник
|
Вообще-то, есть еще один вариант, но он потребует доработки Axapta.
Дело в том, что на самом деле, значение поля, которое возвращает RecordSet - это объект типа ComVariant. Преобразование его значения в значение "понятное" для Axapta выполняется в методе класса CCADOField.value(). Если посмотреть, что там происходит для даты, то X++: // Класс CCADOField anytype value() { COMVariant value; value = field.value(); switch (value.variantType()) { (...) case COMVariantType::VT_DATE: return value.date(); break; (...) } } X++: // Класс CCADOField anytype value(Boolean _dateWithTime = false) { COMVariant value; value = field.value(); switch (value.variantType()) { (...) case COMVariantType::VT_DATE: if (_dateWithTime) { return strFmt("%1 %2",value.date(),time2str(value.time(),1,1)); } else { return value.date(); } break; (...) } } X++: str dateWithTime; command.commandText("select * from EVENTS where ..."); rs = command.execute(); while (!rs.eof()) { dateWithTime = rs.fields().itemName("DateTime").value(true); info(dateWithTime); rs.moveNext(); } cn.close(); ![]()
__________________
- Может, я как-то неправильно живу?! - Отчего же? Правильно. Только зря... Последний раз редактировалось Владимир Максимов; 09.02.2012 в 15:28. |
|
|
За это сообщение автора поблагодарили: Bega (5), IvanS (1). |