Имя: Пароль:
1C
1С v8
Правила обмена: ОбменДанными.Загрузка
0 kdenis
 
19.11.19
12:01
Знатокам обмена данными по правилам обмена.

Есть две самописные конфигурации, внедрена БСП:ОбменДанными. Настраиваю обмен по правилам обмена.
Хочу обменивать три справочника Номенклатура, Виды номенклатуры, КартинкиНоменклатуры (в номенклатуре есть ссылки на два других).
Правила обмена элементарные. У Виды номенклатуры, КартинкиНоменклатуры в ПКО опцию "При переносе объекта по ссылке НЕ создавать новый объект (переносить ссылку)" включил (в выключенном состоянии эффект одинаков).

Суть проблемы:
При загрузке данных выполняется код обработчика ПриЗаписи модулей объектов всех справочников, после инструкции "Если ОбменДанными.Загрузка Тогда Возврат; КонецЕсли;". Хотя, по моему мнению, не должен.

К чему привело расследование:
Первый обмен. При загрузке данных из сообщения обмена, происходит создание новых объектов с признаком "ОбменДанными.Загрузка = Истина" и код ниже не выполняется.
Когда процесс загрузки доходит до 95%, прогресс заметно замедляется. Именно в этот момент происходит повторная запись загруженных объектов уже с признаком "ОбменДанными.Загрузка = Ложь". Соответственно, код проверок в обработчиках выполняется, нарушая логику работы.

Направьте в нужном направлении для поиска решения.
1 kdenis
 
19.11.19
13:34
Приподниму.
2 RomanYS
 
19.11.19
13:37
(1) отладчик и стек вызовов. Может в правилах есть какие-то обработчики после загрузки. Правила писал сам с нуля?
3 kdenis
 
19.11.19
13:39
Правила свои.
Единственный обработчик у справочника Номенклатура ПКО:ПослеЗагрузки с кодом:

Если НЕ Объект.ЭтоГруппа Тогда
    Объект.ТипНоменклатуры = Перечисления.ТипыНоменклатуры.Товар;
КонецЕсли;
4 RomanYS
 
19.11.19
13:41
(3) Не, имелся в виду глобальный обработчик правил, а не ПКО.
5 kdenis
 
19.11.19
13:43
Там пусто.
В сети нашел похожие вопросы, но касающиеся документов. Они без ответа.
6 Cyberhawk
 
19.11.19
13:46
Выложи правила
7 RomanYS
 
19.11.19
13:49
(5) Документы могут проводиться, там ОбменДанными.Загрузка не работает
8 kdenis
 
19.11.19
13:54
<ПравилаОбмена>
    <ВерсияФормата РежимСовместимости="РежимСовместимостиСБСП20">2.01</ВерсияФормата>
    <Ид>31900a06-a650-4633-946c-2565edba97cb    </Ид>
    <Наименование>Ювелирное производство --&gt; Ювелирная торговля</Наименование>
    <ДатаВремяСоздания>2019-11-19T10:55:31</ДатаВремяСоздания>
    <Источник ВерсияПлатформы="8.0" ВерсияКонфигурации="3.2.0.41" СинонимКонфигурации="Ювелирное производство">ЮвелирноеПроизводство</Источник>
    <Приемник ВерсияПлатформы="8.0" ВерсияКонфигурации="2.2.15.0" СинонимКонфигурации="Ювелирная торговля">ЮвелирнаяТорговля</Приемник>
    <Параметры/>
    <Обработки/>
    <ПравилаКонвертацииОбъектов>
        <Группа>
            <Код>Справочники</Код>
            <Наименование>Справочники</Наименование>
            <Порядок>50</Порядок>
            <Правило>
                <Код>ВидыНоменклатуры</Код>
                <Наименование>Справочник: Виды номенклатуры</Наименование>
                <Порядок>50</Порядок>
                <СинхронизироватьПоИдентификатору>true</СинхронизироватьПоИдентификатору>
                <НеВыгружатьОбъектыСвойствПоСсылкам>true</НеВыгружатьОбъектыСвойствПоСсылкам>
                <ПриПереносеОбъектаПоСсылкеУстанавливатьТолькоGIUD>true</ПриПереносеОбъектаПоСсылкеУстанавливатьТолькоGIUD>
                <Источник>СправочникСсылка.ВидыНоменклатуры</Источник>
                <Приемник>СправочникСсылка.ВидыНоменклатуры</Приемник>
                <Свойства>
                    <Свойство>
                        <Код>1</Код>
                        <Наименование>Код --&gt; Код</Наименование>
                        <Порядок>50</Порядок>
                        <Источник Имя="Код" Вид="Свойство" Тип="Строка"/>
                        <Приемник Имя="Код" Вид="Свойство" Тип="Строка"/>
                        <ПриводитьКДлине>11</ПриводитьКДлине>
                    </Свойство>
                    <Свойство Поиск="true">
                        <Код>2</Код>
                        <Наименование>Наименование --&gt; Наименование</Наименование>
                        <Порядок>100</Порядок>
                        <Источник Имя="Наименование" Вид="Свойство" Тип="Строка"/>
                        <Приемник Имя="Наименование" Вид="Свойство" Тип="Строка"/>
                    </Свойство>
                    <Свойство>
                        <Код>3</Код>
                        <Наименование>ПометкаУдаления --&gt; ПометкаУдаления</Наименование>
                        <Порядок>150</Порядок>
                        <Источник Имя="ПометкаУдаления" Вид="Свойство" Тип="Булево"/>
                        <Приемник Имя="ПометкаУдаления" Вид="Свойство" Тип="Булево"/>
                    </Свойство>
                </Свойства>
                <Значения/>
            </Правило>
            <Правило>
                <Код>НоменклатураПрисоединенныеФайлы</Код>
                <Наименование>Справочник: Файлы картинок</Наименование>
                <Порядок>100</Порядок>
                <СинхронизироватьПоИдентификатору>true</СинхронизироватьПоИдентификатору>
                <НеВыгружатьОбъектыСвойствПоСсылкам>true</НеВыгружатьОбъектыСвойствПоСсылкам>
                <ПриПереносеОбъектаПоСсылкеУстанавливатьТолькоGIUD>true</ПриПереносеОбъектаПоСсылкеУстанавливатьТолькоGIUD>
                <Источник>СправочникСсылка.ФайлыКартинок</Источник>
                <Приемник>СправочникСсылка.НоменклатураПрисоединенныеФайлы</Приемник>
                <Свойства>
                    <Свойство Поиск="true">
                        <Код>1</Код>
                        <Наименование>Наименование --&gt; Наименование</Наименование>
                        <Порядок>50</Порядок>
                        <Источник Имя="Наименование" Вид="Свойство" Тип="Строка"/>
                        <Приемник Имя="Наименование" Вид="Свойство" Тип="Строка"/>
                    </Свойство>
                    <Свойство>
                        <Код>2</Код>
                        <Наименование>ПометкаУдаления --&gt; ПометкаУдаления</Наименование>
                        <Порядок>100</Порядок>
                        <Источник Имя="ПометкаУдаления" Вид="Свойство" Тип="Булево"/>
                        <Приемник Имя="ПометкаУдаления" Вид="Свойство" Тип="Булево"/>
                    </Свойство>
                </Свойства>
                <Значения/>
            </Правило>
            <Правило>
                <Код>Номенклатура</Код>
                <Наименование>Справочник: Номенклатура</Наименование>
                <Порядок>150</Порядок>
                <ПослеЗагрузки>Если НЕ Объект.ЭтоГруппа Тогда
    Объект.ТипНоменклатуры = Перечисления.ТипыНоменклатуры.ЮвелирноеИзделие;
КонецЕсли;</ПослеЗагрузки>
                <СинхронизироватьПоИдентификатору>true</СинхронизироватьПоИдентификатору>
                <ПродолжитьПоискПоПолямПоискаЕслиПоИдентификаторуНеНашли>true</ПродолжитьПоискПоПолямПоискаЕслиПоИдентификаторуНеНашли>
                <НеВыгружатьОбъектыСвойствПоСсылкам>true</НеВыгружатьОбъектыСвойствПоСсылкам>
                <Источник>СправочникСсылка.Номенклатура</Источник>
                <Приемник>СправочникСсылка.Номенклатура</Приемник>
                <Свойства>
                    <Свойство>
                        <Код>1</Код>
                        <Наименование>ВидНоменклатуры --&gt; ВидНоменклатуры</Наименование>
                        <Порядок>50</Порядок>
                        <Источник Имя="ВидНоменклатуры" Вид="Реквизит" Тип="СправочникСсылка.ВидыНоменклатуры"/>
                        <Приемник Имя="ВидНоменклатуры" Вид="Реквизит" Тип="СправочникСсылка.ВидыНоменклатуры"/>
                        <КодПравилаКонвертации>ВидыНоменклатуры                                  </КодПравилаКонвертации>
                    </Свойство>
                    <Свойство>
                        <Код>2</Код>
                        <Наименование>Код --&gt; Код</Наименование>
                        <Порядок>100</Порядок>
                        <Источник Имя="Код" Вид="Свойство" Тип="Строка"/>
                        <Приемник Имя="Код" Вид="Свойство" Тип="Строка"/>
                        <ПриводитьКДлине>11</ПриводитьКДлине>
                    </Свойство>
                    <Свойство Поиск="true">
                        <Код>4</Код>
                        <Наименование>Наименование --&gt; Наименование</Наименование>
                        <Порядок>200</Порядок>
                        <Источник Имя="Наименование" Вид="Свойство" Тип="Строка"/>
                        <Приемник Имя="Наименование" Вид="Свойство" Тип="Строка"/>
                        <ПередВыгрузкой>Если НЕ Источник.ЭтоГруппа Тогда
    Значение = "" + СокрЛП(Источник.ВидНоменклатуры.Наименование) + " " + СокрЛП(Источник.Наименование);
Иначе
    Значение = Источник.Наименование;
КонецЕсли;
</ПередВыгрузкой>
                    </Свойство>
                    <Свойство>
                        <Код>6</Код>
                        <Наименование>ПометкаУдаления --&gt; ПометкаУдаления</Наименование>
                        <Порядок>300</Порядок>
                        <Источник Имя="ПометкаУдаления" Вид="Свойство" Тип="Булево"/>
                        <Приемник Имя="ПометкаУдаления" Вид="Свойство" Тип="Булево"/>
                    </Свойство>
                    <Свойство>
                        <Код>7</Код>
                        <Наименование>Родитель --&gt; Родитель</Наименование>
                        <Порядок>350</Порядок>
                        <Источник Имя="Родитель" Вид="Свойство" Тип="СправочникСсылка.Номенклатура"/>
                        <Приемник Имя="Родитель" Вид="Свойство" Тип="СправочникСсылка.Номенклатура"/>
                        <КодПравилаКонвертации>Номенклатура                                      </КодПравилаКонвертации>
                    </Свойство>
                    <Свойство>
                        <Код>8</Код>
                        <Наименование>ФайлКартинки --&gt; ФайлКартинки</Наименование>
                        <Порядок>400</Порядок>
                        <Источник Имя="ФайлКартинки" Вид="Реквизит" Тип="СправочникСсылка.ФайлыКартинок"/>
                        <Приемник Имя="ФайлКартинки" Вид="Реквизит" Тип="СправочникСсылка.НоменклатураПрисоединенныеФайлы"/>
                    </Свойство>
                    <Свойство Поиск="true" Обязательное="true">
                        <Код>9</Код>
                        <Наименование>ЭтоГруппа --&gt; ЭтоГруппа</Наименование>
                        <Порядок>450</Порядок>
                        <Источник Имя="ЭтоГруппа" Вид="Свойство" Тип="Булево"/>
                        <Приемник Имя="ЭтоГруппа" Вид="Свойство" Тип="Булево"/>
                    </Свойство>
                </Свойства>
                <Значения/>
            </Правило>
        </Группа>
    </ПравилаКонвертацииОбъектов>
    <ПравилаВыгрузкиДанных>
        <Группа Отключить="false">
            <Код>Справочники</Код>
            <Наименование>Справочники</Наименование>
            <Порядок>50</Порядок>
            <Правило Отключить="false">
                <Код>ВидыНоменклатуры</Код>
                <Наименование>ВидыНоменклатуры</Наименование>
                <Порядок>50</Порядок>
                <КодПравилаКонвертации>ВидыНоменклатуры                                  </КодПравилаКонвертации>
                <СпособОтбораДанных>СтандартнаяВыборка</СпособОтбораДанных>
                <ОбъектВыборки>СправочникСсылка.ВидыНоменклатуры</ОбъектВыборки>
            </Правило>
            <Правило Отключить="false">
                <Код>Номенклатура</Код>
                <Наименование>Номенклатура</Наименование>
                <Порядок>100</Порядок>
                <КодПравилаКонвертации>Номенклатура                                      </КодПравилаКонвертации>
                <СпособОтбораДанных>СтандартнаяВыборка</СпособОтбораДанных>
                <ОбъектВыборки>СправочникСсылка.Номенклатура</ОбъектВыборки>
            </Правило>
            <Правило Отключить="false">
                <Код>ФайлыКартинок</Код>
                <Наименование>ФайлыКартинок</Наименование>
                <Порядок>150</Порядок>
                <КодПравилаКонвертации>НоменклатураПрисоединенныеФайлы                   </КодПравилаКонвертации>
                <СпособОтбораДанных>СтандартнаяВыборка</СпособОтбораДанных>
                <ОбъектВыборки>СправочникСсылка.ФайлыКартинок</ОбъектВыборки>
            </Правило>
        </Группа>
    </ПравилаВыгрузкиДанных>
    <ПравилаОчисткиДанных/>
    <Алгоритмы/>
    <Запросы/>
</ПравилаОбмена>
9 kdenis
 
19.11.19
13:55
<ПравилаОбмена>
    <ВерсияФормата РежимСовместимости="РежимСовместимостиСБСП20">2.01</ВерсияФормата>
    <Ид>ee05d00b-2668-460b-ab21-70a048506567    </Ид>
    <Наименование>Ювелирная торговля --&gt; Ювелирное производство</Наименование>
    <ДатаВремяСоздания>2019-11-19T10:55:16</ДатаВремяСоздания>
    <Источник ВерсияПлатформы="8.0" ВерсияКонфигурации="2.2.15.0" СинонимКонфигурации="Ювелирная торговля">ЮвелирнаяТорговля</Источник>
    <Приемник ВерсияПлатформы="8.0" ВерсияКонфигурации="3.2.0.41" СинонимКонфигурации="Ювелирное производство">ЮвелирноеПроизводство</Приемник>
    <Параметры/>
    <Обработки/>
    <ПравилаКонвертацииОбъектов>
        <Группа>
            <Код>Справочники</Код>
            <Наименование>Справочники</Наименование>
            <Порядок>50</Порядок>
            <Правило>
                <Код>ВидыНоменклатуры</Код>
                <Наименование>Справочник: Виды номенклатуры</Наименование>
                <Порядок>50</Порядок>
                <СинхронизироватьПоИдентификатору>true</СинхронизироватьПоИдентификатору>
                <НеВыгружатьОбъектыСвойствПоСсылкам>true</НеВыгружатьОбъектыСвойствПоСсылкам>
                <ПриПереносеОбъектаПоСсылкеУстанавливатьТолькоGIUD>true</ПриПереносеОбъектаПоСсылкеУстанавливатьТолькоGIUD>
                <Источник>СправочникСсылка.ВидыНоменклатуры</Источник>
                <Приемник>СправочникСсылка.ВидыНоменклатуры</Приемник>
                <Свойства>
                    <Свойство>
                        <Код>1</Код>
                        <Наименование>Код --&gt; Код</Наименование>
                        <Порядок>50</Порядок>
                        <Источник Имя="Код" Вид="Свойство" Тип="Строка"/>
                        <Приемник Имя="Код" Вид="Свойство" Тип="Строка"/>
                        <ПриводитьКДлине>3</ПриводитьКДлине>
                    </Свойство>
                    <Свойство Поиск="true">
                        <Код>2</Код>
                        <Наименование>Наименование --&gt; Наименование</Наименование>
                        <Порядок>100</Порядок>
                        <Источник Имя="Наименование" Вид="Свойство" Тип="Строка"/>
                        <Приемник Имя="Наименование" Вид="Свойство" Тип="Строка"/>
                    </Свойство>
                    <Свойство>
                        <Код>3</Код>
                        <Наименование>ПометкаУдаления --&gt; ПометкаУдаления</Наименование>
                        <Порядок>150</Порядок>
                        <Источник Имя="ПометкаУдаления" Вид="Свойство" Тип="Булево"/>
                        <Приемник Имя="ПометкаУдаления" Вид="Свойство" Тип="Булево"/>
                    </Свойство>
                    <Свойство Поиск="true" Обязательное="true">
                        <Код>4</Код>
                        <Наименование>--&gt; ЭтоГруппа</Наименование>
                        <Порядок>200</Порядок>
                        <Источник Имя="" Вид=""/>
                        <Приемник Имя="ЭтоГруппа" Вид="Свойство" Тип="Булево"/>
                    </Свойство>
                </Свойства>
                <Значения/>
            </Правило>
            <Правило>
                <Код>ФайлыКартинок</Код>
                <Наименование>Справочник: Номенклатура присоединенные файлы</Наименование>
                <Порядок>100</Порядок>
                <СинхронизироватьПоИдентификатору>true</СинхронизироватьПоИдентификатору>
                <НеВыгружатьОбъектыСвойствПоСсылкам>true</НеВыгружатьОбъектыСвойствПоСсылкам>
                <ПриПереносеОбъектаПоСсылкеУстанавливатьТолькоGIUD>true</ПриПереносеОбъектаПоСсылкеУстанавливатьТолькоGIUD>
                <Источник>СправочникСсылка.НоменклатураПрисоединенныеФайлы</Источник>
                <Приемник>СправочникСсылка.ФайлыКартинок</Приемник>
                <Свойства>
                    <Свойство Поиск="true">
                        <Код>1</Код>
                        <Наименование>Наименование --&gt; Наименование</Наименование>
                        <Порядок>50</Порядок>
                        <Источник Имя="Наименование" Вид="Свойство" Тип="Строка"/>
                        <Приемник Имя="Наименование" Вид="Свойство" Тип="Строка"/>
                    </Свойство>
                    <Свойство>
                        <Код>2</Код>
                        <Наименование>ПометкаУдаления --&gt; ПометкаУдаления</Наименование>
                        <Порядок>100</Порядок>
                        <Источник Имя="ПометкаУдаления" Вид="Свойство" Тип="Булево"/>
                        <Приемник Имя="ПометкаУдаления" Вид="Свойство" Тип="Булево"/>
                    </Свойство>
                    <Свойство>
                        <Код>3</Код>
                        <Наименование>--&gt; Код</Наименование>
                        <Порядок>150</Порядок>
                        <Источник Имя="" Вид=""/>
                        <Приемник Имя="Код" Вид="Свойство" Тип="Строка"/>
                    </Свойство>
                </Свойства>
                <Значения/>
            </Правило>
            <Правило>
                <Код>Номенклатура</Код>
                <Наименование>Справочник: Номенклатура</Наименование>
                <Порядок>150</Порядок>
                <ПослеЗагрузки>Если НЕ Объект.ЭтоГруппа Тогда
    Объект.ГруппаНоменклатуры = Перечисления.ГруппыНоменклатуры.Изделие;
КонецЕсли;</ПослеЗагрузки>
                <СинхронизироватьПоИдентификатору>true</СинхронизироватьПоИдентификатору>
                <ПродолжитьПоискПоПолямПоискаЕслиПоИдентификаторуНеНашли>true</ПродолжитьПоискПоПолямПоискаЕслиПоИдентификаторуНеНашли>
                <НеВыгружатьОбъектыСвойствПоСсылкам>true</НеВыгружатьОбъектыСвойствПоСсылкам>
                <Источник>СправочникСсылка.Номенклатура</Источник>
                <Приемник>СправочникСсылка.Номенклатура</Приемник>
                <Свойства>
                    <Свойство>
                        <Код>1</Код>
                        <Наименование>ВидНоменклатуры --&gt; ВидНоменклатуры</Наименование>
                        <Порядок>50</Порядок>
                        <Источник Имя="ВидНоменклатуры" Вид="Реквизит" Тип="СправочникСсылка.ВидыНоменклатуры"/>
                        <Приемник Имя="ВидНоменклатуры" Вид="Реквизит" Тип="СправочникСсылка.ВидыНоменклатуры"/>
                        <КодПравилаКонвертации>ВидыНоменклатуры                                  </КодПравилаКонвертации>
                    </Свойство>
                    <Свойство>
                        <Код>2</Код>
                        <Наименование>Код --&gt; Код</Наименование>
                        <Порядок>100</Порядок>
                        <Источник Имя="Код" Вид="Свойство" Тип="Строка"/>
                        <Приемник Имя="Код" Вид="Свойство" Тип="Строка"/>
                        <ПриводитьКДлине>9</ПриводитьКДлине>
                    </Свойство>
                    <Свойство Поиск="true">
                        <Код>4</Код>
                        <Наименование>Наименование --&gt; Наименование</Наименование>
                        <Порядок>200</Порядок>
                        <Источник Имя="Наименование" Вид="Свойство" Тип="Строка"/>
                        <Приемник Имя="Наименование" Вид="Свойство" Тип="Строка"/>
                        <ПередВыгрузкой>Если НЕ Источник.ЭтоГруппа Тогда
    Значение = СокрЛП(Источник.Артикул);
Иначе
    Значение = Источник.Наименование;
КонецЕсли;</ПередВыгрузкой>
                    </Свойство>
                    <Свойство>
                        <Код>6</Код>
                        <Наименование>ПометкаУдаления --&gt; ПометкаУдаления</Наименование>
                        <Порядок>300</Порядок>
                        <Источник Имя="ПометкаУдаления" Вид="Свойство" Тип="Булево"/>
                        <Приемник Имя="ПометкаУдаления" Вид="Свойство" Тип="Булево"/>
                    </Свойство>
                    <Свойство>
                        <Код>7</Код>
                        <Наименование>Родитель --&gt; Родитель</Наименование>
                        <Порядок>350</Порядок>
                        <Источник Имя="Родитель" Вид="Свойство" Тип="СправочникСсылка.Номенклатура"/>
                        <Приемник Имя="Родитель" Вид="Свойство" Тип="СправочникСсылка.Номенклатура"/>
                        <КодПравилаКонвертации>Номенклатура                                      </КодПравилаКонвертации>
                    </Свойство>
                    <Свойство>
                        <Код>8</Код>
                        <Наименование>ФайлКартинки --&gt; ФайлКартинки</Наименование>
                        <Порядок>400</Порядок>
                        <Источник Имя="ФайлКартинки" Вид="Реквизит" Тип="СправочникСсылка.НоменклатураПрисоединенныеФайлы"/>
                        <Приемник Имя="ФайлКартинки" Вид="Реквизит" Тип="СправочникСсылка.ФайлыКартинок"/>
                    </Свойство>
                    <Свойство Поиск="true" Обязательное="true">
                        <Код>9</Код>
                        <Наименование>ЭтоГруппа --&gt; ЭтоГруппа</Наименование>
                        <Порядок>450</Порядок>
                        <Источник Имя="ЭтоГруппа" Вид="Свойство" Тип="Булево"/>
                        <Приемник Имя="ЭтоГруппа" Вид="Свойство" Тип="Булево"/>
                    </Свойство>
                </Свойства>
                <Значения/>
            </Правило>
        </Группа>
    </ПравилаКонвертацииОбъектов>
    <ПравилаВыгрузкиДанных>
        <Группа Отключить="false">
            <Код>Справочники</Код>
            <Наименование>Справочники</Наименование>
            <Порядок>50</Порядок>
            <Правило Отключить="false">
                <Код>ВидыНоменклатуры</Код>
                <Наименование>ВидыНоменклатуры</Наименование>
                <Порядок>50</Порядок>
                <КодПравилаКонвертации>ВидыНоменклатуры                                  </КодПравилаКонвертации>
                <СпособОтбораДанных>СтандартнаяВыборка</СпособОтбораДанных>
                <ОбъектВыборки>СправочникСсылка.ВидыНоменклатуры</ОбъектВыборки>
            </Правило>
            <Правило Отключить="false">
                <Код>Номенклатура</Код>
                <Наименование>Номенклатура</Наименование>
                <Порядок>100</Порядок>
                <КодПравилаКонвертации>Номенклатура                                      </КодПравилаКонвертации>
                <СпособОтбораДанных>СтандартнаяВыборка</СпособОтбораДанных>
                <ОбъектВыборки>СправочникСсылка.Номенклатура</ОбъектВыборки>
            </Правило>
            <Правило Отключить="false">
                <Код>НоменклатураПрисоединенныеФайлы</Код>
                <Наименование>НоменклатураПрисоединенныеФайлы</Наименование>
                <Порядок>150</Порядок>
                <КодПравилаКонвертации>ФайлыКартинок                                     </КодПравилаКонвертации>
                <СпособОтбораДанных>СтандартнаяВыборка</СпособОтбораДанных>
                <ОбъектВыборки>СправочникСсылка.НоменклатураПрисоединенныеФайлы</ОбъектВыборки>
            </Правило>
        </Группа>
    </ПравилаВыгрузкиДанных>
    <ПравилаОчисткиДанных/>
    <Алгоритмы/>
    <Запросы/>
</ПравилаОбмена>
10 kdenis
 
19.11.19
13:56
(2) Воспользовался пока советом из 2.
Нашел метод
Обработка.КонвертацияОбъектовИнформационныхБаз.МодульОбъекта.ВыполнитьОтложеннуюЗаписьОбъектов()

Может в этом суть.
11 RomanYS
 
19.11.19
13:58
(10) Похоже. Но он же чем-то вызывается
12 kdenis
 
19.11.19
14:34
Судя по коду, это штатный механизм подсистемы.

1. Объект записывается, создается ссылка. ОбменДанными.Загрузка = Истина.
2. Объект добавляется в соответствие ПолеОбъектыДляОтложеннойЗаписи.
3. Объекты этого соответствия в циле записываются повторно. ОбменДанными.Загрузка = Ложь.

Справедливо для ссылочных типов.
Осталось выяснить, какой смысл в это вложен разработчиками БСП.
13 kdenis
 
19.11.19
15:34
Единственное объяснение, которое оправдывает этот алгоритм, это информирование пользователя об ошибках обмена.

Сначала, при ОбменДанными.Загрузка = Истина, объект записывается в ИБ как есть, без проверок.
Повторно, при ОбменДанными.Загрузка = Ложь, мало того, что отрабатывают стандартные обработчики модуля ПередЗаписью, ПриЗаписи и т.д. Принудительно вызывается Объект.ПроверкаЗаполнения(), которая стандартно вызывается только при интерактивной записи.
При этом собираются ошибки, которые после загрузки выводятся в список Предупреждения.

Как-то так. Может кому пригодится.
14 RomanYS
 
19.11.19
15:36
(13) По идее механизм для отложенного проведения (как минимуму чтобы загрузить все документы в произвольном порядке, а перепроводить по хронологии), зачем перезаписывать справочники не очень понимаю
15 kdenis
 
19.11.19
15:52
Видимо, чтобы собрать ошибки и показать их списком. Но объекты при этом создать, чтобы пользователь смог исправить загруженные.