Имя: Пароль:
1C
1С v8
Обмен данными УТ->БП: "не замещать существующие объекты в приемнике"
0 Medved_1
 
16.09.13
10:23
Ищу ответы с пятницы. Ничего вразумительного.

Объясняю проблему:

Используются доработанные правила УТ-БП (УТ 11.1.2.10, БП 2.0.49.6)
Направление обмена - только в БП.
Правила работают _НОРМАЛЬНО_.

Вся "фишка" началась после того, как клиент сказал, что ему надо в БП ТОЛЬКО СОЗДАВАТЬ объекты. Изменения объектов из УТ НЕ ПЕРЕНОСИТЬ.

Проставив галочки у ПКО "Не замещать существующие объекты в приемнике..." получил неприятную картину:
(пример)
в УТ создано РТУ, на основании его созданы ПКО и сч/ф выданный.
в БП этих объектов _пока_ нет.
Обмениваемся.
В БП появляются _ЗАПОЛНЕННЫЙ_ ПКО и незаполненные (пустые) сч/ф выданный и РТУ (заполнены только поля поиска - номер+дата) !!!

посмотрел в файле обмена порядок выгрузки документов - ПКО, сч/ф, РТУ.

Получается, что создаются и сохраняются И НЕ ЗАПОЛНЯЮТСЯ ссылки на сч/ф и РТУ???

снёс в БП всё: РТУ, ПКО, сч/ф...

Эксперименты привели к следующему:
Снял галочку "не замещать существующие объекты в приемнике" _ТОЛЬКО_ у РТУ - ВСЕ ДОКУМЕНТЫ в БП стали заполненными...

v8: КД "Не замещать существующие объекты ..." можно по условию? - читал, не помогло
v8: Конвертация данных - то же...

Остаются вопросы:
1. Что же происходит при установке этой паршивой галочки? Почему такое поведение обмена в БП???
2. В каких обработчиках ПКО что-нибудь можно использовать для идентификации заполненности найденного в БД-приёмнике объекта??
1 МойКодУныл
 
16.09.13
10:28
А попробуй установить галочку "не запоминать выгруженные объекты" у всех 3х. Интересно что будет.
2 МойКодУныл
 
16.09.13
10:32
и еще вопрос - ПКО и сф участвую в выгрузке, или идкт только по ссылке от РТУ? Можно их отдельно прогрузить от РТУ?
3 Medved_1
 
16.09.13
10:34
(2) ПКО и сч/ф имеют свои ПВД. и имеются ссылки у ПКО и сч/ф на РТУ как на документ-основание
4 Medved_1
 
16.09.13
10:40
(1) как провести эксперимент: с установленной "не замещать существующие объекты в приемнике" или нет?
5 МойКодУныл
 
16.09.13
10:43
С установкой конечно. Без установки же и так все работает. Был просто случай когда загружалдись элементы только с полями поиска - эта галка помогла. Но там никак не связано было с "не замещать объект".
6 Medved_1
 
16.09.13
10:59
(5) не помогает. ПКО - заполнено. Остальные - нет. Только есть объект с заполненными полями поиска.
7 МойКодУныл
 
16.09.13
11:04
Можно еще принудительно выгружать через ВыгрузитьПоПравилу(). Например, в ПВД РТУ выгрузить сразу ПКО и сф, но это уже не очень красиво.
8 МойКодУныл
 
16.09.13
11:06
Такое ощущение, что незаполненные документы сами не грузятся, а только идут по ссылкам. в файле с данными для этих объектов записаны только поля поиска?
9 Medved_1
 
16.09.13
11:08
(7) именно...
мне не хочется все ПВД переписывать, причем учитывая, что в ПВД документах (если вы в стандартных правилах посмотрите) находятся условия применения того или иного ПКО по определённым условиям... Например - "весёлая" схема выбора условий для выгрузки ПКО...
10 Medved_1
 
16.09.13
11:08
(8) точно
11 Medved_1
 
16.09.13
11:09
(8) не-не-не в (10) неправльно.
в файле выгрузки объекты выгружены ПОЛНОСТЬЮ. все поля заполнены. В этом убедился сразу.
12 МойКодУныл
 
16.09.13
11:15
(11) Странно. Может такое быть, как предположение: Объект создается по полям поиска из ПКО, затем уже начинает грузиться по правилу, но т.к. объект уже существует к этому моменту, то он не заменяется. Т.е. остается с заполненными полями поиска и все.
Ссылка на объекты в Основании есть после обмена?
13 Medved_1
 
16.09.13
11:24
(12) именно такое подозрение и у меня.
Есть. Замечательно строится в БП отчёт по подчинённости.
14 Medved_1
 
16.09.13
11:33
в обработчиках ПКО "При загрузке" и "после загрузки" мне не хочется использовать параметр "ОбъектНайден", так как не понятно мне _ЧТО_ обмен найдёт - скорее всего, именно эту незаполненную ссылку.

И тогда - по-барабану, сниму я галку "не замещать существующие объекты в приемнике" или нет...