Книга знаний

1С:Предприятие / v8 / Объекты конфигурации / Справочники

v8: Использование ссылки нового объекта

У нового объекта свойство Ссылка пустое, пока его не запишут в БД. Однако еще до первой записи объекта ему можно назначить и получить ссылку нового.Автор статьи: acsent | Редакторы: Neutron, TormozIT,
Последняя редакция №6 от 03.03.07 | История
URL: http://kb.mista.ru/article.php?id=320

Ключевые слова: Запись, Справочник, ЭтоНовый, Новый, УстановитьСсылкуНового, ПолучитьСсылкуНового


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

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

Описание | Рубрикатор | Поиск | ТелепатБот | Захваченные статьи | Установки | Форум
© Станислав Митичкин (Волшебник), 2005-2025 | Mista.ru

Яндекс.Метрика