Использование ссылки нового объекта Ключевые слова: Запись, Справочник, ЭтоНовый, Новый, УстановитьСсылкуНового, ПолучитьСсылкуНового
 
  Допустим, у нас есть переменная Контрагент типа СправочникОбъект.Контрагенты.
 И нам необходимо обратиться к ссылке на этого контрагента с учетом того, что это может быть новый объект, и ссылка в таком случае будет пустой. В такой ситуации можно использовать следующий код:
 
    Если Контрагент.ЭтоНовый() Тогда
        // Получаем возможно уже установленную ранее ссылку нового
        СсылкаНаОбъект = Контрагент.ПолучитьСсылкуНового();
        Если НЕ ЗначениеЗаполнено(СсылкаНаОбъект) Тогда
            // Если ссылка нового пустая, то запрашиваем ее у менеджера и устанавливаем
            СсылкаНаОбъект = Справочники.Контрагенты.ПолучитьСсылку(); 
            Контрагент.УстановитьСсылкуНового(СсылкаНаОбъект);
        КонецЕсли;
    Иначе
        СсылкаНаОбъект = Контрагент.Ссылка;
    КонецЕсли;
 Следует отметить, что полученная таким образом ссылка в случае нового объекта не будет гарантированной, т.к. запись объекта в БД может и не произойти. Поэтому такой прием рекомендуется применять только внутри транзакции. |