Имя: Пароль:
1C
1С v8
КД 2.0 Обмен, непосредственное удаление объекта в источнике = пометка удаления в приемнике
0 poisk87
 
17.05.20
13:20
Добрый день, уважаемые!

Помогите разобраться с проблемой. Есть правила обмена в кд, есть обмен между базами 1С 8. Ситуация - в базе Источнике создан документ, произведен обмен, документ попал в приемник. После чего, в источнике было произведено НЕПОСРЕДСТВЕННОЕ удаление документа, к регистрации на источнике принялся объект со ссылкой. После передачи в файл обмена попадают строка вида

<УдалениеОбъекта СсылкаНаОбъект="{&quot;#&quot;,01dd1dfd-a650-48ff-a354-1fa5be73515d,175:944b0cc47a514d5b11ea980fde5382ee}"/>
<УдалениеОбъекта СсылкаНаОбъект="{&quot;#&quot;,01dd1dfd-a650-48ff-a354-1fa5be73515d,175:944b0cc47a514d5b11ea980fde5382ef}"/>

В базе приемника идет загрузка без ошибок, после выгрузки, регистрация с них снимается.

Вопрос вот в чем, при удалении документа в базе источника надо передать, что в приемнике эти документы снять с проведения и пометить на удаление. В приемнике у пользователей прав на редактирование и изменение этих документов нет. Так что обратно они передать не смогут.

Решение желательно на уровне КД.

Спасибо.
1 mistеr
 
17.05.20
13:29
Такого поворота разработчики 1С не предусмотрели.

Надеюсь, эти "непосредственные удаления" это исправление ошибок пользователей, а не часть бизнес процесса?
2 Aleksey
 
17.05.20
13:52
Попробуй посмотреть что прилетает в обработчик при получения удаления



Обработчики "Конвертация"

При получении удаления

Условия возникновения события

Событие выполняется только для On-Line обмена при получении данных об удалении объекта.

Параметры:

Объект - Объект который предполагается удалить при обмене.

Отказ - булево. Служит для отказа от удаления объекта.

Пример:

Если ТипЗнч(Объект) = Тип("ДокументОбъект.РеализацияТоваровУслуг") Тогда

    Отказ = Истина;

КонецЕсли;
3 poisk87
 
17.05.20
14:03
(2) Да, уже копал в ту сторону.
Событие выполняется только для On-Line обмена при получении данных об удалении объекта. То есть для обычного обмена не сработает?

Вопрос больше про то, почему при загрузке удаленного объекта в базу приемник, сам объект не находится в приемнике.
<Свойство Имя="{КлючПоискаВИБИсточнике}">
<Значение>{"#",617be238-8983-4239-ba70-8ab7faa8bafa,122:bf4e0cc47a514d5a11e6ed0e8be3dc47}</Значение>

Значение КлючПоискаВИБИсточнике отличается при выгрузке из Источника, от выгрузки этого же объекта из Приемника
4 poisk87
 
17.05.20
14:05
(1) В КД есть в глобальных обработчиках событие При получении удаления. В справке написано что работает только для On-line обмена.
5 Aleksey
 
17.05.20
14:06
(3) я же написал, попробуй
В справки много где написано что работает только с обменом на 8-ки, но оно прекрасно работает и на 7-ки. Так что  верить нельзя, нужно каждый раз проверять