Имя: Пароль:
1C
 
КД 2.1, выполнить код после записи в ИБ
0 Momus
 
10.03.21
10:27
После загрузки необходимо вызвать процедуру из общего модуля. Для выполнения этой операции необходимо записать объект в базе-приемнике. Можно такое в КД 2?
1 Momus
 
10.03.21
10:29
Можно, конечно, отдельной обработкой пройтись по всем выгруженным объектам и выполнить произвольный код, но хотелось бы знать, как это делает в КД. Выгрузка разовая
2 DrShad
 
10.03.21
10:31
в КД можно
3 mistеr
 
10.03.21
10:31
ПКО, событие После загрузки. Если еще не написан, принудительно записать, потом вызвать процедуру.
4 RomanYS
 
10.03.21
10:31
(0) Есть. Событие "ПослеЗагрузкиОбъекта" как у ПКО так и общее для всех правил
5 mistеr
 
10.03.21
10:32
(1) Если разовая, топроще отдельно
6 mistеr
 
10.03.21
10:34
(4) Вызывается до записи объекта, поэтому записывать принудительно, если это важно.

Еще есть событие конвертации После загрузки данных.
7 Momus
 
10.03.21
10:36
(3) не догадался записывать принудительно, попробую;
(5) это на будущее, чтобы знать как делать, если что)
8 RomanYS
 
10.03.21
10:39
(6) Действительно. Тогда только "После загрузки данных", а ссылки на записанные данные будут в параметрах, или это самому надо обеспечить?
9 mistеr
 
10.03.21
10:40
(7) Например:

    // проставим в ГоловнойКонтрагент ссылку на себя
    Если Не Объект.ЭтоГруппа Тогда
        Если НЕ ЗначениеЗаполнено(Объект.Ссылка) Тогда
            Объект.Записать();
        КонецЕсли;
        Объект.ГоловнойКонтрагент = Объект.Ссылка;
    Иначе
        ОбъектМодифицирован = Ложь;
    КонецЕсли;
10 mistеr
 
10.03.21
10:40
(8) Нет, это если по всем пройтись.
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс