Коллеги, я вообще по AX, а тут попался проект на NAV, сижу ковыряюсь.
Не могу понять, что происходит с Date.SETRANGE, если указаны и второй, и третий параметры.
К примеру, вот это:
Date.RESET;
Date.SETRANGE("Period Type",Date."Period Type"
ate);
Date.SETRANGE("Period Start",DMY2DATE(5,7,2018));
IF Date.FINDLAST THEN
MESSAGE('%1', Date."Period Start");
... как и положено возвращает сообщение "05-07-18".
А вот это:
Date.RESET;
Date.SETRANGE("Period Type",Date."Period Type"
ate);
Date.SETRANGE("Period Start",DMY2DATE(5,7,2018),CALCDATE('<CM>',DMY2DATE(5,7,2018)));
IF Date.FINDLAST THEN
MESSAGE('%1', Date."Period Start");
... возвращает 01-01-1999, т.е. не просто дата не та, но и год стал четырехзначный.
Подозреваю, что проблема в collations. Подскажите, куда копать?
---
NAV 2018
Server collation: Danish_Norwegian_CI_AS
Database collation: Latin1_General_100_CS_AS
И на клиенте, и на SQL сервере в Виндах выбран датский регион, т.е. с форматом даты dd-mm-yyyy