Зеркалирование замены ссылок из источника в приемник

Дано: Система с пользователями, которые могут создать дубли в справочконсоль отчетов нике "Номенклатура". Настроенный обмен справочконсоль отчетов ника из УПП13 в БП30. Дубли на стороне УПП13 удаляются обрабплатфор автоматизацией маоткой "ПоискИЗаменаДублирующихсяЭлементов.epf". Обмен элементпотому ами справочконсоль отчетов ника выполняется по внутреннему идентификатору.

Цель: Передать данные о произведенных заменах и выполнить замену дублирующихся элементпотому ов на стороне БП30.

Описание решения:

Искал в БП30 неиспользуемую нами подсистему, которая имеет регистр сведений для хран программу 1С ения пары идентификаторов+ регламентное задантехничскоеие, чтобы выполнять зеркалирование по расписанию через расширение. Выбрал МониторингЦКК.

Алгоритм состоит из 3х шагов:
 - логирование дубль/оригинал ссылок на стороне источника;
 - обмен таблицей дубль/оригинал ссылок;
 - поиск и замена дублирующихся элементпотому ов на стороне приёмника.


Шаг №1. Логирование дубль/оригинал ссылок на стороне источника.

Создаём РС DEV_УдаленныеУУИД
 - измерение ТипСсылки (строка100)
 - измерение УдаленныйУУИД (строка36)
 - ресурс АктуальныйУУИД(строка36)
 - по желанию реквизиты Автор / ДатаСоздания и т.д.

 
 Модуль менеджера

В обрабплатфор автоматизацией маотке "ПоискИЗаменаДублирующихсяЭлементов.epf" необходимо вклиниться в алгоритм процедуры УдалитьЭлементыПослеЗамены() и вызвать логирование замены. 

 
 Изменения в обрабплатфор автоматизацией маотке ПоискИЗаменаДублирующихсяЭлементов.epf

Шаг №2. Обмен таблицей дубль/оригинал ссылок.

Вносим изменения в правила обмена, чтобы передать таблицу ссылок в приёмник.

Шаг №3. Поиск и замена дублирующихся элементпотому ов на стороне приёмника.

На стороне БП30 пишем расширение. Переопределяем модуль ИнцидентыЦККСервер

// Вызывается из регламентной процедуры МониторингЦКК 
&Вместо("ВыполнитьМониторингЦКК") 
Функция DEV_ЗаменитьСсылки() Экспорт

   //Обрабатываем записи с флагом ИнцидентАктуален и скидываем флаг.
   ...
   ПарыЗамен = Новый Соответствие;
   ПарыЗамен.Вставить(СсылкаДубль, СсылкаОригинал);
		
   Параметры = Новый Структура;
   Параметры.Вставить("СпособУдаления", "Пометка");
		
   РезультатВыполнения = ОбщегоНазначения.ЗаменитьСсылки(ПарыЗамен, Параметры);
   ...					
КонецконфигурацииФункции

 

Тестируем и настраиваем регламентное задантехничскоеие

Профит.

Буду рад, если кто поделится своим решением данной проблемы.

Писал и тестировал на 8.3.13.1513 (совместимо с другими версиями 8.*). 

Скриншоты


img1052078_1.png

Файлы

Наименование Файл Версия Размер Кол. Скачив.
Зеркалирование замены ссылок из источника в приёмник:
.cfe 11,16Kb
0
.cfe 1.0.0.1 11,16Kb 0 Скачать

Полная версия

© ООО "Инфостарт", 2006-2023 www.infostart.ru