![]() |
#2 |
Administrator
|
Если смочь перевести часы на компьютере, где крутится АОС, то должно сработать. Правда у меня не получилось перевести часы
![]() Общий подход такой - есть 3 режима правки такого рода таблиц:Correction, CreateNewTimePeriod и EffectiveBased Все режимы запрещают правку в прошлом периоде, однако в текущем и будущем периодах ведут себя по-разному: Correction позволяет редактировать поля ValidFrom / ValidTo с последующей автоматической корректировкой дат у записей в прошлом / будущем периоде CreateNewTimePeriod всегда дробит период EffectiveBased - дробит только текущий период, а будущий правит в режиме Correction Т.е. если мы убедим систему считать дату из прошлого датой из настоящего, то тогда текущий период можно разбить таким кодом: X++: ttsBegin; dat = today() + 5; // Тут нужно поставить правильную дату select forUpdate validTimeState(dat) items; info(strFmt('Выбрана запись %1 со сроком с %2 по %3', items.name, items.ValidFrom, items.ValidTo)); items.validTimeStateUpdateMode(ValidTimeStateUpdate::CreateNewTimePeriod); items.ValidFrom = dat; items.write(); info(strFmt('Изменена запись %1 со сроком с %2 по %3', items.name, items.ValidFrom, items.ValidTo)); ttsCommit;
__________________
Возможно сделать все. Вопрос времени Последний раз редактировалось sukhanchik; 30.01.2018 в 17:43. |
|
|
За это сообщение автора поблагодарили: Logger (1). |
Теги |
ax2012 |
|
|