|
Программное использование "Универсального обмена XML" с Планом Обмена | ☑ | ||
---|---|---|---|---|
0
Midasu
05.09.16
✎
16:26
|
Добрый день, товарищи.
Типовая обработка "УниверсальныйОбменДаннымиXML". Требуется её программный вызов с использованием плана обмена. УОД_XML = Обработки.УниверсальныйОбменДаннымиXML.Создать(); УОД_XML.РежимОбмена = "Выгрузка"; УОД_XML.ИмяФайлаПравилОбмена = ИмяФайлаПравилОбмена; УОД_XML.ИмяФайлаОбмена = ИмяФайлаОбмена; УОД_XML.ЗагрузитьПравилаОбмена(); Пытаюсь заполнить поля с узлами плана обмена: Для каждого Строк из УОД_XML.ТаблицаПравилВыгрузки.Строки Цикл Для каждого СтрокЭлем из Строк.Строки Цикл СтрокЭлем.СсылкаНаУзелОбмена = ПланыОбмена.План.НайтиПоКоду("План").Ссылка; КонецЦикла; КонецЦикла; В табло вижу, что узлы заполнены чем надо. Но при выгрузке план обмена не оказывает влияния и выгружает всё по всем элементам. Подскажите, товарищи, как программно передать план обмена этой обработке. Очень нужно, верю в Вас. :3 |
|||
1
FIXXXL
05.09.16
✎
17:29
|
там много на интерактив и ПостроительОтчета завязано
ставь точки останова в форме, смотри что происходит при указании узлов |
|||
2
Александр_
Тверь 05.09.16
✎
17:37
|
Если интересно, можешь взять как образец:
http://catalog.mista.ru/public/465898/ |
|||
3
Fragster
гуру
05.09.16
✎
18:50
|
БСП?
|
|||
4
Midasu
06.09.16
✎
09:45
|
(1) Дичь там дикая, не хочется в канализацию лезть.
Вот и спрашивал опыта. (2) Не могу, мне нужен УОД XML. (3) Да. Эх, а всего-то лишь нужен человек с опытом использования УОД XML в варианте правила+план обмена... Ищу Вас. |
|||
5
Midasu
06.09.16
✎
09:48
|
С опытом программного использования*
На клиенте в форме работает как надо. |
|||
6
Serg_1960
06.09.16
✎
10:39
|
Не знаю у кого как, а меня в обработке ТаблицаПравилВыгрузки - дерево. И заполняются строки дерева рекурсивным обходом (функция из УниверсальныйОбменДаннымиXML):
Процедура УстановитьУзелОбменаУСтрокДерева(Дерево, УзелОбмена) Для Каждого Строка Из Дерево Цикл Если Строка.ЭтоГруппа Тогда УстановитьУзелОбменаУСтрокДерева(Строка.Строки, УзелОбмена); Иначе Строка.СсылкаНаУзелОбмена = УзелОбмена; КонецЕсли; КонецЦикла; КонецПроцедуры |
|||
7
Serg_1960
06.09.16
✎
11:04
|
"Но при выгрузке план обмена не оказывает влияния и выгружает всё по всем элементам."- может быть у тебя в плане обмена зарегистрированы все элементы? Проверь регистрацию изменений в плане.
Перед началом выгрузки реквизиту обработки "ТипУдаленияРегистрацииИзмененийДляУзловОбменаПослеВыгрузки" присвой значение 2(число). Если при повторной выгрузке в файле сообщений не будет объектов, то регистрация изменений из план обмена (и сам план обмена) всё-таки работают, не игнорируются. |
|||
8
Fragster
гуру
06.09.16
✎
12:59
|
||||
9
Fragster
гуру
06.09.16
✎
12:59
|
код из (0) и (6) точно не нужен
|
|||
10
Midasu
06.09.16
✎
16:22
|
(6) (7) Кстати, уже утром разобрался, забыл, что не все объекты по группам, и некоторым элементам без иерархии в итоге план обмена не присваивается. (6) - правильный код.
(9) Скудно про УОД_XML там, точнее ничего, как раз по правильному пути я шёл, только чуть косячнул. В (6) всё правильно. |
|||
11
Fragster
гуру
06.09.16
✎
16:28
|
(10) выполнить все, что там "скудное" есть, и всё будет работать, включая обмен по вебсервисам по расписанию или электронной почте
|
|||
12
Fragster
гуру
06.09.16
✎
16:29
|
без кода из (6)
|
|||
14
Fragster
гуру
06.09.16
✎
16:29
|
и (0)
|
|||
15
Midasu
07.09.16
✎
09:28
|
(11) Нельзя мне по веб-сервисам, нужен локальный обмен через xml.
|
|||
16
Serg_1960
07.09.16
✎
10:02
|
Имхо: сканируешь регистрацию изменений по плану обмена; добавляешь в таблицу обработки объекты; делаешь выгрузку; очищаешь регистрацию (можно при загрузке данных). Таким образом универсальный обмен даже не догадывается о плане обмена.
|
|||
17
Fragster
гуру
07.09.16
✎
11:02
|
(15) локальный, конечно же, тоже работает. и через com, и через файлы.
|
|||
18
vi0
07.09.16
✎
11:09
|
(0) а разве не обработку ОбменДаннымиXML нужно использовать?
|
|||
19
Midasu
09.09.16
✎
08:54
|
(17) Ок, тогда спасибо, будет время - освою, пока УОД_XML спас.
(18) Может кому-то нужно, у меня УОД_XML неплохо справился с задачей. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |