Цитата:
Сообщение от
mazzy
а какого типа поле1 и поле2?
насколько я понимаю, оба DateTime?
могут ли минуты(поля1) быть больше суток?
можно ли свести условие к следующему?
Сегодня >= дата(поле2) И минуты(поля1) > минуты(поля2)
}[/xpp]
Тип поля один - Time
Тип поля два - DateTime
В комплексе: DateTime(Date+Time)>DateTime
Да, минуты могут быть больше суток, и не одних.
Свести к
Сегодня >= дата(поле2) И минуты(поля1) > минуты(поля2) можно, но учитывая сдвиг в минутах больше суток возникают задачи другого характера.
В качестве Сегодня брал:
X++:
DateTimeUtil::newDateTime(systemdateget(),timenow());
DateTimeUtil::getUserPreferredTimeZone() решил не трогать, хотя присутствует вопрос в разности часовых поясов(решу позже).
Цитата:
Сообщение от
AndyD
Судя по использованию DateTimeUtil и полю modifiedDateTime речь идет о DAX2009 и, соответствено, о типе UTCDateTime
А так как используется метод addMinutes(), второй параметр которого int, то и поле TimeChange имеет тип, скорее всего, int и содержит смещение в в целых минутах

Всё верно DAX2009, смещение в минутах.
Решил сделать так:
X++:
while (qR.next())
{
...........
if (DateTimeUtil::addMinutes(Global_UN::serverDateTime_V(), -typeTable.TimeChange) > docTable.modifiedDateTime
&& DateTimeUtil::addMinutes(Global_UN::serverDateTime_V() , -2880) < docTable.modifiedDateTime)
{
...........
}
}
X++:
static server UtcDateTime serverDateTime_V()
{
return DateTimeUtil::newDateTime(systemdateget(),timenow());//DateTimeUtil::getUserPreferredTimeZone());
}
Работает быстро..

Спасибо.