Который раз убеждаюсь, что с проблемой надо переспать. Вчера полдня голову ломал, сегодня за 2 минуты разобрался. Этот код в обоих случаях работает одинаково:
X++:
queryRun.query().removeTimeZoneOffset(true);
qbdsRFID = queryRun.query().dataSourceTable(tablenum(RFIDTrans));
qbdsRFID.addRange(fieldnum(RFIDTrans, TransDateTime)).value(SysQuery::range(fromDateTime, toDateTime));
Или так, если кому-то нравится:
X++:
queryRun.query().removeTimeZoneOffset(false);
qbdsRFID = queryRun.query().dataSourceTable(tablenum(RFIDTrans));
fromDateTime = DateTimeUtil::removeTimeZoneOffset(fromDateTime, tz);
toDateTime = DateTimeUtil::removeTimeZoneOffset(toDateTime, tz);
qbdsRFID.addRange(fieldnum(RFIDTrans, TransDateTime)).value(SysQuery::range(fromDateTime, toDateTime));