|
Натолкните на мысль по настройке правил обмена |
☑ |
0
Mihasya
15.07.20
✎
11:50
|
Есть две базы, одна производная от другой, но более старой версией, необходимо настроить обмен некоторыми справочниками.
Есть план обмена подходящий, НО, в него входят очень много лишних справочников, документов и т.д....
Соответственно в этом плане регистрируется все подряд...
Я написал правила конвертации только для тех объектов, которые необходимы и прописал для них ПВД.
Беда в том, что для тех объектов для которых не прописаны ПВД они не регистрируются как выгруженные, соответственно будут вечно копиться в плане... Что можно придумать?
|
|
1
Лефмихалыч
15.07.20
✎
11:53
|
Если 2 лоб", то - по "лишним" объектам регламентным заданием зачищать регистрацию всего, у чего заполнен номер исходящего.
Или просто зачищать любую регистрацию по лишним объектам
|
|
2
Пробел
15.07.20
✎
11:54
|
или скопировать план обмена и выкинуть оттуда все лишние объекты...
|
|
3
Лефмихалыч
15.07.20
✎
11:55
|
или городить огород по управлению регистрацией изменений, но возможно задача не стоит того
|
|
4
Mihasya
15.07.20
✎
12:50
|
(1) т.е. общего ПВД нет никакого, жаль ))
(2) не вариант, вторая база распределенка, новый план обмена низя...
(3) проще действительно периодически "подчищать"
|
|
5
Mihasya
15.07.20
✎
14:16
|
Кароч придумал! Может кому и пригодится...
В правилах обмена в глобальном обработчике "ПослеВыгрузкиДанных" пишем:
Если УспешнаяВыгрузка Тогда
// Помечаем все объекты как выгруженные...
ПланыОбмена.ВыбратьИзменения(УзелДляОбмена, УзелДляОбмена.НомерОтправленного - 1);
КонецЕсли;
У меня в модуле обработки выгрузки перед вызовом этого обработчика написано:
УспешнаяВыгрузка = ВыполнитьВыгрузкуИзмененныхДанныхДляУзлаОбмена(УзелДляОбмена, МассивПравилВыгрузки, СтрокаСообщенияОбОшибке, НужноОграничиватьВыгрузкуПоПринадлежностиОбъектовКИнформационнымБазам)
т.е. переменные "УспешнаяВыгрузка" и "УзелДляОбмена" могут быть у каждого свои, но в целом смысл думаю понятен.
|
|
6
Лефмихалыч
15.07.20
✎
14:28
|
я бы вынес это в регламентное хотя бы потому, что:
1. это увеличивает время выгрузки
2. если по какой-либо причине этот код стрельнет исключение, то файл обмена отправлен не будет, хотя в действтиельности этому ничего не мешает
|
|
7
ezhikofff
15.07.20
✎
14:34
|
(5) (6) ВыбратьИзменения лучше заменить простой запрос, так как если интенсивный поток данных - может стрельнуть конфликт блокировок..
|
|
8
Mihasya
15.07.20
✎
15:03
|
(7) Про простой запрос не понял
|
|
9
Лефмихалыч
15.07.20
✎
16:33
|
(8) ВЫБРАТЬ ... ИЗ Справочник.Контрагенты.Изменения КАК КонтрагентыИзменения
|
|
10
Mihasya
15.07.20
✎
23:42
|
(9) Выбрать выберу, а вот как проставить номер отправленного для объектов без ПВД?
|
|
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший