Имя: Пароль:
1C
1С v8
Дата документа в событиях
0 AlexYa
 
29.05.16
19:38
Задача: установить дату документа при создании нового для нескольких типов документов.
По умолчанию дата нового документа = рабочая дата без времени. При оперативном проведении добавляется текущее время. Т.е. от момента создания до записи время по умолчанию = 0.
Нужно, чтобы в редактируемой конфигурации время с самого начала по умолчанию = текущая дата со временем.
Попробовал посадить на подписку событий, но нет в списке события "Новый документ".
При анализе событий формы, в "ПередОткрытием" дата = 0, а уже "ПриОткрытии" = текущей без времени. Что происходит между событиями формы "ПередОткрытием" и "ПриОткрытии"? И как получить доступ к этому общему для всех документов событию?
1 Звездец
 
29.05.16
19:50
При создании на сервере проверяй и если новый то меняй дату
2 Лефмихалыч
 
29.05.16
19:53
используй подписку ПередЗаписью
3 Звездец
 
29.05.16
19:59
(2) не, я так понял он хочет сразу время устанавливать при открытии формы нового дока
4 AlexYa
 
01.06.16
12:09
(3) Точно. В момент формирования документа дата должна быть уже установлена.
И мне хотелось бы знать, что происходит между событиями ФОРМЫ "ПередОткрытием" (дата = 0) и "ПриОткрытии" (дата = текущая без времени).

Есть предположение, что новая Дата = РабочаяДата, которая всегда без времени, даже если она = ТекущаяДата().
5 Mankubus
 
01.06.16
12:17
6 aleks_default
 
01.06.16
12:25
(4) А зачем, если она потом все равно изменится?
Зачем устанавливать дату ОТКРЫТИЯ ФОМЫ а не СОЗДАНИЯ документа. Поясните мне?
7 AlexYa
 
02.06.16
18:17
(5) то, что надо! Спасибо!

"Установка даты документа

При открытии формы нового документа, если дата документа не установлена (равна значению типа Дата по умолчанию), то документу устанавливается рабочая дата. Следует заметить, что используется именно рабочая дата, а не текущая (если не установлено использование текущей даты в качестве рабочей). Это дает возможность пользователю настроить рабочую дату так, чтобы новые документы вводились определенной датой. При этом в качестве даты устанавливается начало дня (дата без времени), даже если в качестве рабочей даты выступает текущая дата.  Но если  свойство АвтоВремя имеет значение НеИспользовать, и рабочая дата равна текущей, то устанавливается текущая дата, вместе со временем. Таким образом, для варианта АвтоВремя = НеИспользовать при открытии берется рабочая дата (если она отличается от текущей) или текущая дата вместе со временем, а для остальных вариантов установка времени откладывается на момент записи документа.

При записи нового документа в форме если свойство АвтоВремя имеет значение отличное от НеИспользовать, и не используется оперативное проведение, и время документа пустое (0:00:00), то выполняется автоматическая установка времени на основании значения свойства АвтоВремя. Действие расширения формы в этом случае аналогично вызову метода УстановитьВремя() с вариантом выбранном в свойстве АвтоВремя  и с использованием журналов документа.

Расширение формы так же предоставляет команды для установки времени документа в начало дня, конец дня, перед предыдущим и за последующим документом."
Основная теорема систематики: Новые системы плодят новые проблемы.