AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 14.12.2014, 13:33   #1  
AlGol is offline
AlGol
Участник
 
277 / 93 (4) ++++
Регистрация: 24.12.2001
Адрес: Тверь.
ValidTimeState и Дата сеанса
AX2012R3
Никто не пробовал заставить корректно работать таблицы с ValidTimeState c Системной датой?

Есть таблица с ValidTimeStateFieldType = Date.
Есть, соответственно, форма для работы с данной таблицей.

Меняю системную дату с сегодня (14.12) на 10.12 и начинаю вводить данные в форме.
Потом, открываю таблицу в браузере и вижу, что во всех записях, которые правил, установлены ValidFrom = 14.12.

Т.е. движок ValidTimeState применил текущую дату компа, игнорировав указанную мной дату сеанса.
Так и задумано или я чего-то не понимаю?
__________________
Ален ноби, ностра алис.
Что означает - если один человек построил, другой завсегда разобрать может.
Старый 14.12.2014, 13:52   #2  
Cardagant is offline
Cardagant
Участник
 
317 / 54 (2) ++++
Регистрация: 11.10.2011
К слову, по-моему, поля Созданные и Модифицированные дата/время тоже реагируют только на системную дату.
Старый 14.12.2014, 14:56   #3  
AlGol is offline
AlGol
Участник
 
277 / 93 (4) ++++
Регистрация: 24.12.2001
Адрес: Тверь.
Да, CreatedDateTime и ModifiedDateTime заполняется текущим временем хоста.
Но это системное поле, оно достаточно редко применяется в функциональности и именно так и описывается - реальное время когда менялась или создавалась запись.

А ValidTimeState сделан вроде совсем для другого.
__________________
Ален ноби, ностра алис.
Что означает - если один человек построил, другой завсегда разобрать может.
Старый 14.12.2014, 17:06   #4  
Raven Melancholic is offline
Raven Melancholic
Участник
Аватар для Raven Melancholic
Самостоятельные клиенты AX
Лучший по профессии 2015
 
2,164 / 1293 (48) ++++++++
Регистрация: 21.03.2005
Адрес: Москва-Петушки
А какой порядок действий? Сначала открыли форму и потом изменили системную дату или сначала сменили системную дату ,а потом открыли форму?
Кстати, про свойство ValidTimeStateAutoQuery датасорса в значении AsOfDate сказано, что "The default value is the current date and time from the server". Может быть клиентское изменение текущей даты не используется для ValidTimeState?
За это сообщение автора поблагодарили: AlGol (2).
Старый 15.12.2014, 12:55   #5  
AlGol is offline
AlGol
Участник
 
277 / 93 (4) ++++
Регистрация: 24.12.2001
Адрес: Тверь.
Делал в таком порядке:
- меняем системную дату сеанса
- открываем форму и правим данные
- закрываем форму
- открываем браузер таблиц и видим результат.

Да, похоже заставить ValidTimeState работать по дате сеанса без кодирования не получится.
В примерах кода этого фреймворка критерии даты "на сейчас" ставятся по функции today(),
а в описании работы источников данных на формах написано как уже сказано выше: "The default value is the current date and time from the server."

Если нужно заставить работать по дате сеанса, то придется писать "закат солнца вручную".
__________________
Ален ноби, ностра алис.
Что означает - если один человек построил, другой завсегда разобрать может.
За это сообщение автора поблагодарили: Artoodeetoo (1).
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
validTimeState не работает для join plumbum DAX: Программирование 5 22.03.2013 12:43
Дата оплаты заказа Harry DAX: Функционал 2 14.11.2011 13:08
DAX2009 зафиксировать дату и время сеанса Raven Melancholic DAX: Функционал 3 25.04.2011 16:26
Почему дата поставки в подпроизводстве становится при обновить приемка сегодняшней датой???? Murlin DAX: Функционал 8 27.08.2009 14:51
Закупка. Дата получения документа. AlexeyBP DAX: Функционал 5 15.12.2005 16:53

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 15:03.