AXForum  
Go Back   AXForum > Microsoft Dynamics AX > DAX: Программирование
DAX
Forgotten Your Password?
Register Forum Rules FAQ Members List Today's Posts Search

 
 
Thread Tools Search this Thread Display Modes
Old 02.09.2014, 16:19   #1  
Zlojbarsuk is offline
Zlojbarsuk
Участник
 
26 / 12 (1) ++
Join Date: 08.08.2007
Angry Проблема в работе с utcdatetime
Добрый день, коллеги!
Есть некая периодическая операция, которая в своей работе ориентируется на время создания документа.
Существует следующая проблема:
Если эта операция запускается не в режиме пакета, то всё работает нормально. Если же её запустить в режиме пакета, то она отрабатывает с ошибкой: " Значение, которое вы пытаетесь добавить или вычесть, создает недопустимое utcdatetime."


X++:
public void run()
{
    InventParameters            inventParameters = InventParameters::find();
    utcdatetime                 curDateTime;
    utcdatetime                 dateTimeForProc;
    utcdatetime                 yesterdayDateTime;
    
    ;

    curDateTime = DateTimeUtil::applyTimeZoneOffset(DateTimeUtil::getSystemDateTime(), DateTimeUtil::getUserPreferredTimeZone());

    if (DateTimeUtil::time(curDateTime) > fromTime
     && DateTimeUtil::time(curDateTime) < toTime)
    {
        dateTimeForProc = DateTimeUtil::addHours(DateTimeUtil::getSystemDateTime(),-inventParameters.InventTransfertReturnHours_MRC);
        yesterdayDateTime    = DateTimeUtil::addHours(DateTimeUtil::getSystemDateTime(),-24);

 
}
}
Кто-нибудь сталкивался с подобной проблемой?

Ax 2009, Kernel version 5.0.1500.6491

Last edited by Zlojbarsuk; 02.09.2014 at 16:43.
Old 02.09.2014, 17:03   #2  
Ivanhoe is offline
Ivanhoe
Участник
Ivanhoe's Avatar
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
4,143 / 2161 (81) +++++++++
Join Date: 29.09.2005
Location: Санкт-Петербург
А зачем вы применяете тайм-зону пользователя?
__________________
Ivanhoe as is..
Old 02.09.2014, 17:18   #3  
Zlojbarsuk is offline
Zlojbarsuk
Участник
 
26 / 12 (1) ++
Join Date: 08.08.2007
DateTimeUtil::getSystemDateTime() возвращает время по Гринвичу. А мне необходимо время текущего часового пояса. Поэтому я выполняю преобразование.
Old 02.09.2014, 18:32   #4  
honest is offline
honest
Участник
 
5 / 13 (1) ++
Join Date: 19.09.2012
Из текста ошибки можно предположить, что метод DateTimeUtil::addHours() пытается вернуть значение которое не попадает в диапазон от 1900-01-01T00:00:00 до 2154-12-31T23:59:59. Проверьте системное время на пакетном сервере. Какое значение возвращает метод DateTimeUtil::getSystemDateTime(), если он вызывается на пакетном сервере?

Last edited by honest; 02.09.2014 at 18:34.
Old 02.09.2014, 19:10   #5  
Morpheus is offline
Morpheus
Участник
Morpheus's Avatar
Соотечественники
 
602 / 167 (7) ++++++
Join Date: 30.03.2005
Location: Київ-København-Düsseldorf
Quote:
Originally Posted by Zlojbarsuk View Post
DateTimeUtil::getSystemDateTime() возвращает время по Гринвичу. А мне необходимо время текущего часового пояса. Поэтому я выполняю преобразование.
В переменных и полях таблиц храните время UTC 0. На формах и в отчетах автоматически отображается время с учетом часового пояса пользователя.
Old 02.09.2014, 19:56   #6  
Zlojbarsuk is offline
Zlojbarsuk
Участник
 
26 / 12 (1) ++
Join Date: 08.08.2007
Quote:
Originally Posted by Morpheus View Post
В переменных и полях таблиц храните время UTC 0. На формах и в отчетах автоматически отображается время с учетом часового пояса пользователя.
Да, я знаю, что на формах и в таблицах время "разное" :-) Проблема не в этом, а в том, что периодическая операция по разному работает в режиме пакета и обычного запуска.
 

Similar Threads
Thread Thread Starter Forum Replies Last Post
Kashperuk Ivan: Tutorial: Determine if a string is a valid UtcDateTime Blog bot DAX Blogs 0 24.02.2012 01:11
axblog4u: How to write UtcDateTime value along with Timezone in AX2012 Blog bot DAX Blogs 0 25.09.2011 23:11
emeadaxsupport: Passing UtcDateTime values in extended query syntax Blog bot DAX Blogs 0 10.05.2010 21:05
Kashperuk Ivan: UtcDateTime in Dynamics AX 2009 Blog bot DAX Blogs 0 17.02.2010 15:05
DAX 2009 & UtcDateTime & Primary Key SRF DAX: Программирование 8 05.06.2009 07:05

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Рейтинг@Mail.ru
All times are GMT +3. The time now is 17:30.
Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Contacts E-mail, Advertising.