|
06.07.2018, 10:22 | #1 |
Участник
|
Клиент обычный, попробовал поменять код 1033 (Английский) на 1030 (Датский), не помогло.
Создал новую таблицу HelloWorld, с двумя полями "Period Start" и "Period End", вручную забил несколько значений и попробовал аналогичный код на этой таблице, всё работает. Написал новый код, копирующий значения из этой магической таблицы Date в HelloWorld, падает на пятом по счету вызову HelloWorld.INSERT, с ошибкой типа "Значение 03-01-0001 не может быть записано в поле Period Start таблицы HelloWorld, т.к. значение или слишком длинное, или недействительное". Что это вообще за виртуальная таблица Date (не могу найти ее в базе)? Когда она заполняется этими недействительными значениями? OnRun() HelloWorld.RESET; HelloWorld.DELETEALL; Date.RESET; Date.SETRANGE("Period Type",Date."Period Type":ate); IF Date.FINDSET THEN BEGIN REPEAT HelloWorld."Period Start" := Date."Period Start"; HelloWorld."Period End" := Date."Period End"; HelloWorld.INSERT; UNTIL (Date.NEXT = 0) END; |
|
06.07.2018, 11:21 | #2 |
Участник
|
Похоже, у вас действительно проблема с региональными настройками. Я сейчас проверил ваш код на своей системе - все норма. 31 июля. Какой результат у вас выдает функция CALCDATE ? Попробуйте вместо setrange использовать setfilter.
Таблица Date - это вечный календарь. Его не надо заполнять. Он сам по себе существует. Создайте форму для этой таблицы со всеми колонками и посмотрите на нее, поиграйте с фильтрами, чтобы увидеть результат их работы. Там все просто. PS. И проверьте региональные настройки на сервере, на котором стоит NAV. Я ранее уже описывал странность работы функции DT2DATE с датой. Там независимо от настроек нав использовались настройки винды. Последний раз редактировалось BuzCom; 06.07.2018 в 11:28. |
|
06.07.2018, 11:24 | #3 |
Участник
|
Что это вообще за виртуальная таблица Date (не могу найти ее в базе)? Когда она заполняется этими недействительными значениями?
Она Виртуальная и храниться в памяти. Как её посмотреть - создайте Page и выберите её как источник данных (2000000007). Далее используя мастер выведите все поля в список. Откроете страницу и увидите формат даты в явном виде.
__________________
--------------------------------------------------------------------------------------------- "Собрать стадо из баранов легко, трудно собрать стадо из кошек" Профессор Сергей Капица |
|
|
За это сообщение автора поблагодарили: Stitch_MS (1). |
|
Похожие темы | ||||
Тема | Ответов | |||
Не только у нас "веселье" с переводом или Due date = Shipment Date? | 0 | |||
Код из Отчета в кодеюнит | 8 |
|