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

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

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

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

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

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

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

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

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

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

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

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

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

Комментарии

  • pavlo 18.09.2018 13:59
    У меня по второму варианту не получилось. При такой настройке появилась колонка построчно со словами названия колонки ресурса.

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

     
  • Altavista- 17.09.2018 20:51
    Не бесспорное решение: 1. В регистр логичнее добавить 2й ресурс ("вТрансфертныхЦенах"); 2. РС "Наценки"? Однозначно, нет. Это реквизит справочника; 3. Реквизита "Контрагент" в условии задачи тоже нет и ...

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

     
  • Андрей 02.08.2018 09:55
    Большое спасибо! По "Варианту 2": в выбранных полях группировки колонок (у меня их несколько) кроме поля самой колонки пришлось добавить и ресурс.

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