Имя: Пароль:
1C
1С v8
К новому документу прибавить одну секунду
0 wannado
 
27.07.12
07:24
Доброе утро.

Возникла такая необходимость для определенного вида документов при создании нового устанавливать время два часа ночи, но при это необходимо чтобы последующие новые документы создавались со временем + 1 секунда, т.е. документы создаются на следующий день.

написал перед записью следующий код:
Если ЭтоНовый() Тогда
       ЭтотОбъект.УстановитьВремя(АвтоВремя.НеИспользовать);
       Если НачалоДня(Дата) = НачалоДня(ТекущаяДата()) Тогда
           Дата = ТекущаяДата();
       Иначе
           Дата = НачалоДня(Дата) + 2*60*60;
       КонецЕсли;
   КонецЕсли;

Все хорошо, но по следующие документы не прибавляют во времени одну секунду. АвтоВремя.НеИспользовать на это не влияет.
Документы создаются в ручном режиме.
1 wannado
 
27.07.12
07:26
Создавать проверку с запросом а первый этот документ или нет, чтобы в дальнейшем прибавлять одну секунду, т.е. если запрос за период нового документа вернул хоть одну запись значит к последнему документу из запроса прибавлять одну секунду - как то не очень.
2 Мимохожий Однако
 
27.07.12
07:38
В подписке на событие записи данного документа попробуй добавить корректировку времени.
3 Галахад
 
гуру
27.07.12
07:38
(1) Почему не очень?
4 wannado
 
27.07.12
07:47
Сейчас пробую в подписке добавить.

Зачем усложнять, делать лишнюю проверку, если конечно другого варианта не найду, буду использовать его.
5 Рэйв
 
27.07.12
07:52
(0)зачем усложнять себе жизнь?  Пусть все будут одним времени на два часа. Ненаказуемо.
6 wannado
 
27.07.12
07:54
так ведь не интересно, на два часа, вот решил усложнить тут.
7 wannado
 
27.07.12
08:19
в подписке на событии не помогло.
8 wannado
 
27.07.12
08:32
ЭтотОбъект.УстановитьВремя(РежимАвтоВремя.Последним)

так же не работает, почему устанавливает 12 часов дня.
9 wannado
 
27.07.12
08:47
Реализовал через запрос.

Всем спасибо
Основная теорема систематики: Новые системы плодят новые проблемы.