В Управляющей Компании холдинга (даллее УК) возникла задача создания копий баз всех предприятий холдинга и ежедневной поддержки их в актуальном состоянии. Многие предприятия холдинга находятся на большом расстоянии от УК (порой в других регионах), имеют различное качество связи и пользуются разными конфигурациями 1С 8.1 и 8.2. Для решения этой задачи ежедневная пересылка полных копий баз не подходит, ибо предприятий много, у одних интернет плохой, у других администраторы не в состоянии наладить автоматическую высылку копии и т.д. и т.п. Для решения данной задачи подходит РИБ, но как обеспечить односторонность передачи данных и при этом не влезать в код? (Для некоторых предприятий снятие с поддержки критично). Для решения этой задачи необходим обмен с использовниаем правил обмена. Итак:
1. Создание правил обмена.
Если у вас одна из типовых конфигураций, указанных в анонсе, то возьмите правила из прикрепленных файлов, пропускайте 1й пункт и переходите ко 2му.
1.1 Для создания правил обмена используем конфигурацию конвертация данных ред.2. (Ее можно найти на любом диске ИТС либо скачать с сайта 1С). В конфигурации, которую мы распределяем, откроем файл MD81exp.epf либо MD82exp.epf, которые входят в комплект поставки конвертации данных. (Для 8.2 лежат, например, в C:Documents and Settings*user*Application Data1C1Cv82 mplts1cConversion2_1_5_1).
1.2 Выбираем файл, куда сохраним описание структуры метаданных, и жмем «Выгрузить«.
1.3 После завершения выгрузки запускаем конфигурацию Конвертация данных и открываем «Стартовый помощник«:
1.4 В появившемся окне жмем далее и выбираем пункт «Создать правила обмена с нуля» и «Далее«:
1.5 В следующем окне нам предлагают выбрать конфигурации для обмена- нажимаем «Новая«, и в появившемся окне выбираем наш файл из пункта 1.2 , жмем «Выполнить загрузку» :
1.6 Через некоторое время (5-10 мин.) загрузка закончится, и после нажатия «ОК» наша конфигурация появится в поле «конфигурация-источник«. Выбираем ее же в поле «конфигурация-приемник» и жмем «Далее«:
1.7 В появившемся окне выбираем 1й пункт и жмем «Выполнить«:
1.8 Через некоторое время правила создадутся, и мы увидим следующую картину:
1.9 В списке объектов есть один, который нам передавать точно не нужно. Я говорю о регистре сведений «ГраницыЗапретаИзмененияДанных» (Его передача приведет к коллизиям, в случае изменения даты запрета редактирования, что бывает не так и редко). Снимаем с него галочку и жмем «Создать правила выгрузки«:
1.10 Затем жмем кнопку «Сохранить правила«, выбираем имя файла и жмем «Сохранить«:
В результате мы получили файл с правилами обмена данными нашей конфигурации с идентичной конфигурацией. Этот файл мы и используем в настройке РИБ.
2. Настройка РИБ. (Я не буду расписывать создание РИБ, варианты настройки автообмена и т.д. Статьи на эту тему легко найти, опишу лишь нюансы, связанные с первоначальной задачей). Итак:
2.1 Настройка на основном узле: Переключаемся на полный интерфейс, заходим в меню «Сервис» —> «Распределенная информационная база (РИБ)» —> «Настроить узлы РИБ«. Нажимаем «Добавить» и попадаем в окно:
2.2 Выбираем наименование для настроек обмена данными, ставим галочку «Обмен по правилам обмена«, жмем кнопку «Загрузить правила«, выбираем наш файл из пункта 1.10 и на всякий случай жмем «Проверить правила«. (Не забудьте выбрать тип обмена и др. настройки).
Жмем сохранить и переходим к настройке 2го узла (Копия).
2.3 Настройка на 2м узле (на последующих узлах она идентична, если таких копий нужно несколько). Повторяем действия пунктов 2.1 и 2.2 в копии и переходим на закладку «Обмен по правилам«, жмем «Загрузить настройки«:
2.4 После загрузки объектов выбираем все (ctrl+A) и жмем «Изменить настройку«. Меняем на «не выгружать«, жмем «ОК» .
2.5 Далее записываем настройку , и так как мы ничего назад в основной узел выгружать не будем, не забываем изменить дату запрета редактирования на какую нибудь пораньше в разумных пределах (на пару лет назад, например, там точно ничего править не будут). Это необходимо для того , чтобы избежать проблем, связанных с изменением даты запрета редактирования, перепроведением документов и возврата даты обратно в между обменами. (Такое, как показывает практика, бывает сплошь и рядом).
2.6 Тестируем обмен.
Статья описывает простой универсальный алгоритм настройки одностороннего обмена в РИБ 8.1 и 8.2 для любых конфигураций, имеющих план обмена, БЕЗ ИЗМЕНЕНИЯ КОДА.
Перейти к публикации
А в ЗУПе можно сделать такой обмен?
Ну если очень нужно. То можно)
ололо, не проще было выложить книгу по конвертации?
то такое впечателение, шо Америку открылие еще раз…
и то такой обмен стал благодаря возможным после того как в РИБ добавили функцию обмена по правилам обмена… а ведь раньше таких возможностей не было 🙂
Ололо может дадите ссылку на решение указанной задачи без изменения конфы? Я например не нашел другого решения и или подобного описания. Если ссылки нет, то оставьте ваше ололо для себя.
В типовой УПП Украина, есть такая возможность сразу при настройке обмена указать: односторонний или нет обмен. При этом результат, будет такой же как и автор у себя описал, так что, если интересно как работает без просмотра кода, то в статье все точно описано. Да, еще там во второй базе правила пустые подгружаются.
Хотелось бы уточнить, а правила обмена корректно создаются? Помнится раньше на автомате создавались не все правила обмена, например, табличными частями и многими другими реквизитами?
при изменении конфигурации (добавлении и удалении объектов конфигурации или их реквизитов) придется обновлять и правила обмена ?
(5) pumbaE, Это будет уже не РИБ а независимые базы. Конфигурация передаваться не будет.
(6) Just, Задача , описанная в шапке взята из реальной жизни и сейчас все работает в более чем 10 ти конфигурациях, УПП , БП и УТ . Проблем, связанных с неполной передачей данных пока не обнаружено. Если появятся таковые, подправлю статью.
(7) Valerich, Придется редактировать правила.
Спасибо за статью, как раз занимаюсь вопросом.
Только вот мне кажется что есть проблемы в тех конфигурациях, где нет изначально плана обмена «Полный», например, «Розница».
(11) svsrus, Пока не пробовал, нужно проверить.
Попробовал действительно все работает корректно, только выскочил неприятный баг, после обновления обмен лег, сейчас занимаюсь реанимацией
Как все-таки правильно обновлять периферийную при такой реализации? Все работало, обмен на ура, конфа 2.0.32.4. Обновил центр до 2.0.33.7, правила пока не менял, обмен прошел, однако периферийная не запросила режим конфигуратора, в конфигураторе пункт «обновить конфигурацию БД» неактивный. Правила подготовил новые, но вопрос — обмен сам пройдет, после подсовывания новых правил и регистрации в центре новых документов или у меня тупо где-то галочка не стоит на формирование в файлах обмена изменений конфигурации??
(14) Estranger78, Я скоро проверю все и на след неделе вам отпишусь (постараюсь пораньше). Извините сейчас со временем проблемы.
Вопрос, таким способом можно например сделать так что бы в риб обмен был двух сторонний но в филиалы не выгружались данных других филиалов и цо — а выгружалось из ЦО в филиал только документы перемещения + еще несколько типов документов. (справочники должны при этом обмениваться как положено т.е. двухсторонний обмен)
Для меня статья — просто находка. Благодарю Вас.
monster6666, К сожалению большинство фото примеров не подгружаются в вашей статье, можно ли их восстановить?
Сделал все как в статье но при обмене выдает ошибку
Ошибка при выгрузке данных для узла плана обмена
Объект = Расход по налогу на прибыль
ОписаниеОшибки = Метод объекта не обнаружен (ОпределитьТипОтправкиДанных)
ПозицияМодуля = Обработка.ОбменДаннымиXML.МодульОбъекта(12009)
КодСообщения = 72
УзелПланаОбмена = РИБ Приемник
Произошла ошибка при выгрузке объектов. Было выгружено: 0
Подскажите как это исправить.
Заранее спасибо
Статья с картинками:
http://www.evernote.com/shard/s118/sh/b13c7eda-17b4-4f8b-88c4-2b0f5f09b853/dbbf22fda794149c442fee08a6463c79
Интересует один момент, в данном случае РегистрацияОбмена изменяется или файл выгрузки будет постоянно расти?
Грамотно изложено.Спасибо.
(22) 88wau24ru,
Важный вопрос про размер файла выгрузки остался без ответа. Еще раз повторю. Т.к. обмен идет в одном направлении, база отправитель не знает получена или нет выгрузка и (возможно) будет выгружать одни и те же старые данные + новые, что приведет к увеличению размера файла обмена. Кто пользуется таким способом обмена, проверьте размер файла.
Очень полезно. спасибо
(24) arjuna,
Как раз сейчас столкнулся с такой проблемой. Может удалось как-то настроить правила обмена, чтобы объекты снимались с регистрации после выгрузки?
Размер файла не увеличивается. Обмен идет не в одном направлении, выгрузка и загрузка данных идет в обе стороны, просто в базу отправитель новые или измененные объекты не загружаются. И таким образом база отправитель все -равно получает файл с информацией получена ли ее выгрузка
Дело было давно, но я сделал Односторонний РИБ с добавленной процедурой в модуль ПланаОбмена
Все принимает, и ничего не отдает…
А в статье очень много букв….
(28) 88wau24ru, Спасибо, сэкономило время.
Кто нибудь пробовал организовать односторонний обмен на БП 3.0?
Показать
Не делал, но если скопировать Полный, или ПоОрганизации и добавить процедуру из (28) думаю будет работать!
(28) 88wau24ru, Конечно вы правы, но ключевое слово «без изменения конфигурации». Для многих снятие с поддержки принципиально критично. Именно о таком случае статья собсно.
(14) Estranger78, не нашли решение проблемы?
Мы тоже с ней столкнулись.
За статью Спасибо! Пользуемся.
я так понял, при этой схеме, если обновли конфиурацию в центре, то на перефири она не попадет!? А как сделать что бы попадала, но данные мигрировали только в центр?
(34) NikolaST, Тогда придется воспользоваться советом из комента 28. И таки изменить конфигурацию.
(35) или добавить подписку на событие.
(24)
Все таки размер файла постоянно растет, регистрация изменений не очищается
(39) Забираю свои слова обратно =). Изменения очищаются только если все документы перепровелись в подчиненной базе.