Имя: Пароль:
1C
1С v8
Как при КД2 правильно организовать удаление регистрации изменения?
0 Domovoi
 
15.03.24
15:46
Делаю обмен на КД2 через обработку Универсальный обмен данными. Сделал План обмена и узел для регистрации объектов для обмена. Надо чтоб удаление регистрации объектов из узла происходило, если они удачно созданы в приемнике. Как это организовывается? Может есть какой-то курс, или видео, или статья? Как делаете вы?
1 Волшебник
 
15.03.24
15:53
Нужно отправлять обратно и обрабатывать квитанцию о приёме сообщения, в которой будет указан номер сообщения.
Далее
ПланыОбмена.УдалитьРегистрациюИзменений(<Узлы>, <Данные>)


Если в качестве первого параметра <Узлы> указан одиночный узел, то в параметре <Данные> может быть указан номер сообщения. В этом случае метод УдалитьРегистрациюИзменений удаляет из всех таблиц регистрации изменений все записи относящиеся к указанному узлу, у которых номер сообщения меньше или равен значению второго параметра.
2 Domovoi
 
15.03.24
15:55
(1)"Нужно отправлять обратно и обрабатывать квитанцию о приёме сообщения, в которой будет указан номер сообщения"
Вот этот момент как делается? (вроде остальное понятно)
3 Garykom
 
гуру
15.03.24
15:58
(0) Планы обмена напрямую с КД2 (и обработкой Универсальный обмен данными) никак не связаны

Читайте/изучайте отдельно про планы обмена и РИБ
Отдельно про КД2
4 VladZ
 
15.03.24
15:57
Типовой механизм описан в (1).

Если пишешь свой - можешь обойтись односторонним обменом: после успешной загрузки (нет ошибок) удалять регистрацию программно (через сервис).
5 Волшебник
 
15.03.24
15:57
(2) Да хоть в Телеграм
6 MaxS
 
15.03.24
16:09
(3) А где по планы обмена почитать? )
Не себе спрашиваю. Клиенту. Никак не могу доказать, что если зарегистрировать к обмену только документ, номенклатура не попадёт в конечную базу, будут битые ссылки и это не ошибка.
7 Волшебник
 
15.03.24
16:16
(6) Почитайте в синтакс-помощнике.
8 MaxS
 
16.03.24
16:09
(7) Это не работает ( Нужно же логически связать разные разделы информации.  
Там то ли саботаж, то ли тяжелый случай. Ладно.
9 Garykom
 
гуру
16.03.24
16:26
(6) Зависит от кода обмена
Обычно да нет смысла реквизиты выгружать по ссылке, так в рекурсию бесконечную можно уйти
На практике может быть сделана выгрузка с ограничением уровня вложенности
Практиковал такое в 2005-2007 годах, когда интернет был на cd-дисках и usb флешках в ипенях области*

*Площадь Архангельской области (589 913 км²) больше чем площадь крупнейших стран Западной Европы — Франции (547 030 км²) и Испании (504 782 км²)
10 MaxS
 
16.03.24
19:24
(9) Это если выгружать обработкой, то связанные ссылки выгружаются. У моей доработанной можно указывать глубину - 1,2 или все.
Проблема с пользователями. Выгрузка через план обмена не выгружает связанные ссылки и они не могут этого принять.
ps.
В типовых конфигурациях на основе БСП есть такой код:
ОбработкаОбменаДанными.НеВыгружатьОбъектыПоСсылкам = Истина;
Если в план обмена загрузили правила КД2 с указанием выгружать связанные ссылки, они не будут выгружаться. Выгружается только то, что зарегистрировано к обмену. Так работают все типовые базы.
Искал официальные статьи по этому поводу, но находил обсуждения на форумах, где я же об этом и писал. Эх.
11 Garykom
 
гуру
16.03.24
21:03
(10) Ты тоже путаешь план обмена и код реализации РИБ (выгрузки/загрузки)?
12 MaxS
 
16.03.24
22:09
(11) В РИБ нет правил обмена.
Нужен ответ на (6) Почему при обмене через планы обмена номенклатура не выгружается? Клиент негодует, винит в этом мои неправильные правила обмена.
13 Garykom
 
гуру
16.03.24
23:07
(12) Потому что план обмена никак не связан с выгрузкой!
Это просто регистрация изменений для последующей выгрузки

И клиент правильно негодует, если в ТЗ было при выгрузке документа заодно выгружать и номенклатуру из него.
Надо было добавить это в правила ))
14 MaxS
 
17.03.24
06:30
(13) >регистрация изменений для последующей выгрузки
Да. И на каком основании выгружать потом то, что не зарегистрировано к обмену?

Не существует таких типовых конфигураций, в которых при регистрации документа заодно выгружается и номенклатура. Даже если специально загрузить в план обмена такие правила.
Но если доработать БСП и сделать такое, будет кошмар для пользователя. Если одна и та же номенклатура есть в каждом новом документе, она будет каждый раз заново выгружаться. Никто не сможет работать в базе, т.к. будет бесконечный обмен ради обмена.
AdBlock убивает бесплатный контент. 1Сергей