powered by simpleCommunicator - 2.0.36     © 2025 Programmizd 02
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / ZEN Осторожно с Timestamp InitialExpression!
6 сообщений из 6, страница 1 из 1
ZEN Осторожно с Timestamp InitialExpression!
    #39808667
Фотография kolesov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вроде простая штука:

Property DateTime As %TimeStamp [ InitialExpression = {$zdt($zts,3)} ];

А вот нет. В БД окажется таймстамп, соответствующий времени ОТКРЫТИЯ ZEN-формы для заполнения, а не время СОХРАНЕНИЯ.

Получается, что Timestamp лучше иметь без InitialExpression.

Я огреб в ситуации, когда некий инструмент проверял "новые" записи (за последние 30 секунд) - дальше сами понимаете, как было печально ;)

ЗЫ: Что-то мне подсказывает, что подобная история будет с любым MVC или подобным механизмом, не только с ZEN.
...
Рейтинг: 0 / 0
ZEN Осторожно с Timestamp InitialExpression!
    #39808671
vassil
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всё правильно. Вызываешь форму, создается объект ZEN-формы и соответствующий хранимый объект. InitialExpression срабатывает на момент создания объекта.
...
Рейтинг: 0 / 0
ZEN Осторожно с Timestamp InitialExpression!
    #39808680
Фотография kolesov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vassilВсё правильно. Вызываешь форму, создается объект ZEN-формы и соответствующий хранимый объект. InitialExpression срабатывает на момент создания объекта.

В том-то и дело, что не "соответствующий хранимый объект", а лишь проекция. Вроде и ИС правы, и ерунда в итоге... Несовместимы они, короче ;)
...
Рейтинг: 0 / 0
ZEN Осторожно с Timestamp InitialExpression!
    #39808764
ser_shu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
kolesov,

Timestamp время сохранение объекта логично в %OnBeforeSave фиксировать.
...
Рейтинг: 0 / 0
ZEN Осторожно с Timestamp InitialExpression!
    #39809022
ser_shu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
kolesovЯ огреб в ситуации, когда некий инструмент проверял "новые" записи (за последние 30 секунд) - дальше сами понимаете, как было печально ;)
В такой ситуации логичнее вести внешний протокол, прописывая его в %OnAfterSave типа
set ^Log($horolog,$classname(),..%Id())=""
Тогда можно легко просмотреть с конца, что и сколько за последние 30 секунд создалось или изменилось. По флагу insert можно отличить новые записи от старых.
...
Рейтинг: 0 / 0
ZEN Осторожно с Timestamp InitialExpression!
    #39809023
ser_shu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ser_shuВ такой ситуации логичнее вести внешний протокол, прописывая его в %OnAfterSave типа
set ^Log($horolog,$classname(),..%Id())=""
Тогда можно легко просмотреть с конца, что и сколько за последние 30 секунд создалось или изменилось. По флагу insert можно отличить новые записи от старых.
Извиняюсь, $horolog здесь неудобно, так как секунды через запятую, я имел в виду
set ^Log((дата),(время в секундах),$classname(),..%Id())=""

или можно set ^Log((дата),(время в секундах),$classname(),..%Id())=(время открытия объекта)($username),
тогда можно узнать кто, когда и как долго терзал объект в ZENе :)
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / ZEN Осторожно с Timestamp InitialExpression!
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]