Бывает, что при проведении документа необходимо учитывать, новый записывается это документ, или созданный ранее. В процедурах ПриЗаписи и ОбработкаПроведения у записываемого объекта нет признака, который бы указывал нужную характеристику. Однако, выход есть.

 Понять, что записываемый документ - новый, можно в процедуре ПередЗаписью. Здесь у документа ещё нет ссылки. Это и есть признак того, что документ новый.

А далее мы передадим этот признак туда, где он нам нужен. В процедуру ПриЗаписи или ОбработкаПроведения.

Для передачи воспользуемся конструкцией встроенного языка 1С: ДополнительныеСвойства.

Вот что об этой конструкции говорит встроенная справка платформы 1С:

ДополнительныеСвойства.
Тип: Структура. 

Может использоваться в тех случаях, когда необходимо хранить некоторые значения, связанные с объектом, на время выполнения некоторых операций, без изменения объекта. Например, при обработке событий в подписке на события.

Итак, в нашем случае мы реализуем передачу дополнительного свойства таким образом:

Если Не ЗначениеЗаполнено(Ссылка) Тогда
		
		ДополнительныеСвойства.Вставить("ЭтоНовыйОбъект", Истина);
		
	КонецЕсли;

Структура ДополнительныеСвойства будет доступна в процедурах ПриЗаписи и ОбработкаПроведения.

Проверка ключа и значения в структуре:

Если ДополнительныеСвойства.Свойство("ЭтоНовыйОбъект", Истина) Тогда

	// Обработка условия
		
КонецЕсли;

Комментарии

  • Moby 05.07.2018 11:51
    Спасибо! По "Варианту 2" заработало только после добавления ресурса в выбранные поля группировки строк. Не помню что до этого менял, может ресурс там и был когда-то.

    Подробнее...

     
  • MariNew 20.06.2018 15:36
    Отлично!!! У меня получилось!!!! СПАСИБО!

    Подробнее...

     
  • Ирина 09.06.2018 13:05
    Спасибо большое! Пригодилось.

    Подробнее...