Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Интеграция - ручное управление очисткой регистрации изменений

Интеграция - ручное управление очисткой регистрации изменений
Я
   mg-samara
 
27.10.20 - 12:04
Добрый день, коллеги.
Вопрос следующий.
Есть обмен между двумя разными базами (например БУХ и ЕРП) Самостоятельно написаны правила обмена.
Выгружается пакет обмена в рамках которого несколько документов.
Один из документов, находящийся в файле обмена не загрузился в базу-преемник по некоторой причине, скажем некорректные данные. Ошибка проявляется в ходе загрузки.
Формируется файл-ответа и загружается в базе источнике.

Необходимо - после загрузки файла-ответа очистить регистрацию к обмену по все документам, участвующем в выгрузке, кроме тех, по которым была ошибка.

Таким образом документ будет передаваться несколько раз до того момента как ошибка при загрузке не уйдет.
   ДенисЧ
 
1 - 27.10.20 - 12:09
Типовые обмены (да и вообще механизм обменов в 1с) не предусматривают подтверждения или опровержения части пакета. Они работают по принципу "всё или ничего".
Колхозь свой механизм
   RomanYS
 
2 - 27.10.20 - 12:09
(0) хитрый план :)
По идее как-то нужно перерегистрировать такие объекты для повторной выгрузки. Только непонятно почему некорректные данные при повторной выгрузке могут стать вдруг корректными.
   DionisSergeevich
 
3 - 27.10.20 - 12:12
(0) в типовых интеграциях, например, бесшовная интеграция erp с документооборотом этот вопрос решен через формирование сообщений обмена.
   mg-samara
 
4 - 27.10.20 - 12:13
(1) Пичалька.
Давно не занимался обменами и надеялся, что восьмерка в своем буйном развитии что-то уже придумала.
   mg-samara
 
5 - 27.10.20 - 12:14
(2) Ошибка может быть из-за отсутствия данных, который приходят по своим собственным правилам откуда-то еще.
   RomanYS
 
6 - 27.10.20 - 12:16
(5) Зачем их выгружать повторно? Такая ситуация должна разруливаться уже в приемнике.
   mg-samara
 
7 - 27.10.20 - 12:16
(3) Интересно, а можно подробнее о алгоритме.

При загрузке мы знаем где есть ошибка, где нет.
Как передать эту информацию в базу-источник и убедиться о том, что объекты остаются зарегистрированными к обмену?
   mg-samara
 
8 - 27.10.20 - 12:22
(6) Да, согласен. Это возможный вариант.
Но мне пока нужно сделать так как изложил выше. :-)
   DionisSergeevich
 
9 - 27.10.20 - 12:23
(7) зарегистрированные изменения получаются из плана обмена и записываются в регистр - очередь сообщений, потом отдельно регламентное задание передает данные, при успехе запись удаляет.
   ДенисЧ
 
10 - 27.10.20 - 12:26
(9) Что, прямо подокументно, посправочно? А мягкие знаки они в эту схему встроили?
   DionisSergeevich
 
11 - 27.10.20 - 12:27
(10) типовой вариант тащит все изменения, но у себя я сделал пообъектно
   DionisSergeevich
 
12 - 27.10.20 - 12:29
По крайней мере можно будет отследить успешность отправки.
Ну и ни чего не мешает сделать 100 сообщений вместо одного.
   mg-samara
 
13 - 27.10.20 - 12:33
(9) Спасибо.
Я правильно понимаю, что это типовая реализация?
   mg-samara
 
14 - 27.10.20 - 12:36
(11) Прочитал, спасибо.

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.