Обмен. Общий вопрос

1. vitasw.003 21.02.19 15:10 Сейчас в теме
Здравствуйте.
Вопрос наверное многим покажется простым, но ничего внятного поиск мне не показал
Есть типовой обмен. Допустим УТ->БП. (не суть вожно, вопрос общий).
Для конфигураций на обычных формах у нас был один фал с правилами обмена, загруженный в конфигурацию-источник. Если обмен двусторонний - то во второй конфигурации был свой файл правил обмена.
При выгрузке данных в xml имеем 2 основных тэга (массива данных - не знаю как правильно), это ПравилаОбмена (содержит файл правил обмена из источника) и ДанныеПоОбмену (собственно сами выгружаемые данные). Причем, если я не ошибаюсь, данные уже конвертированы в формат типов данных базы-приемника. Все логично вопросов нет.
Теперь смотрим на правила обмена под управляемый интерфейс, там уже 3 файла
ExchangeRules.xml - файл правил конвертации из базы источника (понятно, вопросов не вызывает)
RegistrationRules.xml - файл правил регистрации (тоже понятно)
CorrespondentExchangeRules.xml - файл правил конвертации из базы корреспондента (!?)
И собственно вопрос: зачем этот файл CorrespondentExchangeRules.xml вообще нужен. Ведь файл обмена уже в себе содержит часть данных, содержащие правила обмена. Где этот файл используется? а если файл ExchangeRules.xml в источнике будет отличаться от CorrespondentExchangeRules.xml...?
Спасибо всем откликнувшимся
По теме из базы знаний
Найденные решения
11. herfis 499 21.02.19 16:28 Сейчас в теме
(9) Я решал подобную задачу. Решил путем впендюривания обработки обмена из старой типовой в типовую на УФ и настраивания обмена через COM со стороны старой типовой. Ну, т.е. старая типовая лезет в новую за данными, думая что там все по-старому. Нужно ее не разочаровать :)
Показалось, что так проще всего будет сделать. Успешно работает.
Правда, у меня и задача стояла по односторонней выгрузке из новой в старую.
Из старой в новую будет пожестче... Малой кровью не взлетит, ИМХО.
vitasw.003; +1 Ответить
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. NatalkaBal 28 21.02.19 15:40 Сейчас в теме
Если я не ошибаюсь CorrespondentExchangeRules.xml это правила для загрузки, а ExchangeRules - для выгрузки из текущей базы
3. vitasw.003 21.02.19 15:58 Сейчас в теме
(2) ЭЭэээ что-то я или не понимаю, или почему...
Из источника выгружаются данные в формате базы приемника По правилам из файла ExchangeRules. Т.е. в файле с данными уже все данные сконвертированы + в файле с данными содержатся правила обмена, т.е. все необходимые алгоритмы уже есть в файле обмена. Так зачем нужен CorrespondentExchangeRules.xml? учитывая то, что этот файл должен быть симметричен ExchangeRules.
4. herfis 499 21.02.19 16:02 Сейчас в теме
В документации к БСП говорится о том, что макетов может быть несколько, но обязательным является только "ПравилаОбмена".
Т.е. корреспондирующие правила - это уже самодеятельность типовых конфигураций. Когда и как они задействуются - самому интересно, но лень выяснять :)
5. herfis 499 21.02.19 16:04 Сейчас в теме
Может, при обмене через COM он их с одной стороны берет?
6. vitasw.003 21.02.19 16:08 Сейчас в теме
(5) В том смысле что источником всех правил при ком-обмене выступает или только источник или только приемник?
7. herfis 499 21.02.19 16:20 Сейчас в теме
(6) Типа да. Хотя для меня самого это звучит неубедительно. Ведь как раз при обмене через COM можно взять и там и там. А через файл - правила в файле обмена и так. Получается, что единственный случай когда это может быть критично, это когда при выгрузке данных нужно зачем-то знать, как данные загружаются оттуда сюда. Но зачем это может быть необходимо - ума не приложу. Ведь изначально это изолированные процессы были.
Тут еще дело в том, что работа обмена БСП довольно хитрая и содержит массу недокументированных моментов. Шибко умный он, зараза.
Например, не регистрируются изменения объекта, если нет изменения данных по реквизитам ПКС в правилах обмена. Умеет регистрировать уже выгруженные элементы в регистре, чтобы при повторных выгрузках выгружать только ссылки. Более того - предусмотрено сопоставление элементов из разных баз по разным внутренним айдишникам. И т.п. Может, для каких-то хитрых плюшек оно ему надо... Но для каких, сообразить не могу.
vitasw.003; +1 Ответить
8. melenaspb 208 21.02.19 16:24 Сейчас в теме
Могу ошибаться, но именно CorrespondentExchangeRules будут использованы при загрузке, а не те правила что записаны в файле обмена.
Может для безопасности так сделано, вдруг файл обмена враги перехватят и поменяют в нем правила.
10. vitasw.003 21.02.19 16:26 Сейчас в теме
(8) Точно могу утверждать что при обмене через каталог CorrespondentExchangeRules точно не используется. Специально в источнике добавил новый реквизит и правила загрузил только в источник. CorrespondentExchangeRules оставил типовым. Нормально все загрузилось, с учетом нового реквизита в источнике.
9. vitasw.003 21.02.19 16:24 Сейчас в теме
Спасибо. Грани разумного теперь у меня шибко расширились. Пытаюсь подружить УТ 10 и бух на управляемых формах - пока только матные слова и очень далекий отблеск легкого понимания, что может все и выгорит.
11. herfis 499 21.02.19 16:28 Сейчас в теме
(9) Я решал подобную задачу. Решил путем впендюривания обработки обмена из старой типовой в типовую на УФ и настраивания обмена через COM со стороны старой типовой. Ну, т.е. старая типовая лезет в новую за данными, думая что там все по-старому. Нужно ее не разочаровать :)
Показалось, что так проще всего будет сделать. Успешно работает.
Правда, у меня и задача стояла по односторонней выгрузке из новой в старую.
Из старой в новую будет пожестче... Малой кровью не взлетит, ИМХО.
vitasw.003; +1 Ответить
12. vitasw.003 21.02.19 16:33 Сейчас в теме
(11) Даааа? как интересно. Надо подумать над этим...
У меня сейчас обмен по кому пока обе базы лежат на одном серваке.
Но нарисовалась проблема в том, что УТ не может работать на 8.3.8. У бухии нужна минимум 8.3.8. Прийдется их разносить на разные сервера и обмен по каталогу. Но идея с впендюриванием старой обработки мне кажется интересной. Спасибо.
13. oleg-x 26 21.02.19 16:41 Сейчас в теме
(12) А в чем проблема, у конфигурации есть режим совместимости. Ставите новую платформу и у каждой свой режим совместимости.
Ставьте 8.3.12 последнюю 8.3.13 и 14 не ставьте
14. vitasw.003 21.02.19 16:49 Сейчас в теме
(13) Проблема не с конфигурацией, а с вэб сервисами. К этим вэб сервисам сторонние программы не могут обратиться если платформа выше 8.3.6.
17. vitasw.003 05.03.19 10:15 Сейчас в теме
(11) Остановился именно на этом варианте. Взлетело и работает. Спасибо за подсказку.
15. oleg-x 26 21.02.19 16:55 Сейчас в теме
Странный веб сервис. Как вариант, обращаться к Веб сервисам и передавать им ложную версию конфигурации. Но здесь уже отдельно надо разбираться.
16. vitasw.003 21.02.19 17:01 Сейчас в теме
Подозреваю, что опять проблема не с вэб сервисами, они писаны на 1С. А со сторонней программой, писаной не очень ровными руками, которая и обращается к вэб сервисам.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот