Приветствую Вас, дорогие друзья.
В сегодняшней статье я хочу описать процесс настройки нового обмена в конфигурации «Управление торговлей 11». Хочу сказать, что данный порядок действий можно отнести ко всем новым конфигурациям, которые основаны на БСП: Управление торговлей 3.0 для РБ, Бухгалтерия предприятия 3.0, Управление небольшой фирмой 1.4.
Все действия будем рассматривать на примере.
Пример.
Необходимо организовать онлайн обмен между конфигурацией «Управление торговлей 11» и базой «Тест».
Приступим к реализации.
1. Создадим новый план обмена «ОбменТестУправлениеТорговлей11».
2. Настраиваем состав плана обмена.
ВАЖНО! Для всех объектов авторегистрация ЗАПРЕЩЕНА. В составе обязательно должен быть регистр сведений «СоответствияОбъектовИнформационныхБаз».
3. Настраиваем модуль менеджера созданного плана обмена «ОбменТестУправлениеТорговлей11» (В модуль менеджера плана обмена
переносим код из плана обмена
«_ДемоОбменСБиблиотекойСтандартныхПодсистем»
демо-базы «БСП 2.1.2» либо если нет «БСП», то из любого подходящего плана обмена УТ 11). Модуль менеджера для нашего тестового плана обмена можно взять здесь.
4. Редактируем общие команды конфигурации. В параметр добавляем созданный план обмена. Необходимо отредактировать следующие команды:
- ВыполнитьОбменДанными
- ВыполнитьОбменДаннымиИнтерактивно
- ОткрытьПравилаКонвертацииОбъектов
- ОткрытьПравилаРегистрацииОбъектов
- ОткрытьСценарииОбменовДанными
- ОткрытьПравилаСинхронизацииДанных (Если такая команда есть, т.к. она добавилась в последних версиях)
- ПерейтиВЖурналРегистрацииСобытийВыгрузкиДанных
- ПерейтиВЖурналРегистрацииСобытийЗагрузкиДанных
- ПолучитьНастройкиОбменаДаннымиДляВторойИнформационнойБазы
5. Добавляем необходимые подписки на события:
- ОбменДаннымиОбменТестУправлениеТорговлей11ЗарегистрироватьИзменение. Данная подписка будет регистрировать изменения справочников. Настройки подписки:
- Источник подписки — справочники, участвующие в обмене.
- Событие — ПередЗаписью.
- Обработчик — обработчик данной подписки необходимо разместить в общем модуле «ОбменДаннымиСобытияУТ» с кодом ОбменДаннымиСобытия.МеханизмРегистрацииОбъектовПередЗаписью(» ОбменТестУправлениеТорговлей11″, Источник, Отказ) .
- ОбменДаннымиОбменТестУправлениеТорговлей11ИзменениеДокумента. Данная подписка будет регистрировать изменения документов. Настройки подписки:
- Источник подписки — документы, участвующие в обмене.
- Событие — ПередЗаписью.
- Обработчик — обработчик данной подписки необходимо разместить в общем модуле «ОбменДаннымиСобытияУТ» с кодом ОбменДаннымиСобытия.МеханизмРегистрацииОбъектовПередЗаписьюДокумента(» ОбменТестУправлениеТорговлей11«, Источник, Отказ);
- ОбменДаннымиОбменТестУправлениеТорговлей11ЗарегистрироватьУдаление. Данная подписка будет регистрировать удаление документов, справочников. Настройки подписки:
- Источник подписки — документы, справочники, участвующие в обмене.
- Событие — ПередУдалением.
- Обработчик — обработчик данной подписки необходимо разместить в общем модуле «ОбменДаннымиСобытияУТ» с кодом ОбменДаннымиСобытия.МеханизмРегистрацииОбъектовПередУдалением(» ОбменТестУправлениеТорговлей11«, Источник, Отказ);
- ОбменДаннымиОбменТестУправлениеТорговлей11ЗарегистрироватьИзменениеНабораЗаписей. Данная подписка будет регистрировать изменения регистров накопления, сведений, бухгалтерии, расчетов. Настройки подписки:
- Источник подписки — наборы записей регистров, необходимых для регистрации изменений.
- Событие — ПередЗаписью.
- Обработчик — обработчик данной подписки необходимо разместить в общем модуле «ОбменДаннымиСобытияУТ» с кодом ОбменДаннымиСобытия.МеханизмРегистрацииОбъектовПередЗаписьюРегистра(» ОбменТестУправлениеТорговлей11 «, Источник, Отказ) ;
6. Добавим общую команду «ПомощникНастройкиОбменаДаннымиСТестом«. Данная команда необходимо для реализации помощника обмена.
В обработчик команды необходимо добавить код: ОбменДаннымиКлиент.ОткрытьПомощникНастройкиОбменаДанными(» ОбменТестУправлениеТорговлей11«)
7. В общий модуль «ОбменДаннымиПереопределяемый»
в процедуру «ПолучитьПланыОбмена» добавить наш план обмена
ПланыОбменаПодсистемы.Добавить(Метаданные.ПланыОбмена.ОбменТестУправлениеТорговлей11)
8. Создаем макет плана обмена «ОбменТестУправлениеТорговлей11«
«ПравилаКонвертации» (тип — ТекстовыйДокумент) и загружаем
в это макет правила, созданные с помощью КонвертацииДанных.
9. Если необходимо, добавляем правила регистрации. Чтобы использовать правила регистрации необходимо добавить произвольную форму плана обмена «ФормаНастройкиУзла», макет «ПравилаРегистрации», в модуле менеджера плана обмена отредактировать процедуры «НастройкаОтборовНаУзле» и «ОписаниеОграниченийПередачиДанных«. В реквизиты формы «ФормаНастройкиУзла» добавить реквизиты, имена которых аналогичны именам реквизитов плана обмена, которые предназначены для фильтрации данных. Например «Организация», «Склад.»
Для примера «ФормуНастйрокиУзла» можно взять в плане обмена «ОбменУправлениеТорговлейБухгалтерияПредприятия30» и отредактировать под наши критерии.
10. В предприятии ПравилаКонвертации и ПравилаРегистрации необходимо ВСЕГДА загружать в регистр сведений «ПравилаДляОбменаДанными», для этого существует специальная форма для загрузки.
Для загрузки правил конвертации необходимо в форме обменов выбрать «Настройки — Изменить«. Затем в форме плана обмена выбрать «Параметры обмена данными — Открыть правила конвертации объектов«. В форме редактирования правил конвертации по кнопке «Загрузить» загружаем привила либо из файла либо из макета определенного в п.8.
В этой статье Вы узнаете как создавать и настраивать план обмена с регистрацией обмена по настраиваемым правилам. Официальные источники замалчивают вопросы этой тематики (на текущий момент времени), скорее всего это связано с доработками исходных кодов.
Для чего нужны настраиваемые правила регистрации? Иногда В большинстве случаев возникает необходимость передавать информацию об объектах в соответствии с некоторыми правилами: ограничение по дате, по контрагенту, по складу, по типу операций и т.д. Стандартный механизм позволяет настраивать ограничения по типу метаданных (тип документа и т.д.), поэтому для выборочной регистрации объектов в плане обмена необходимо использовать соответствующий механизм. Однако, ограничить передачу информации можно и на уровне правил обмена данными, но это не так эффективно, т.к. в этом случае у вас отбор объектов будет проводится на момент выгрузки-загрузки данных.
Для использования этого механизма необходимо в конфигурации наличия определенных объектов, которые доступны в наборе типовых объектов конфигурации – Обмен Данными.
И так, прежде всего вам необходимо настроить и создать правила регистрации объектов (ПРО), сделать это наиболее удобно в конфигурации «Конвертация». Более подробная и детальная схема по созданию ПРО описана в разделе справки.
Первый шаг . Создадим план обмена. Назовем его «Обмен с внешней базой», можно использовать типовой.
Создадим в нем два реквизита: Организация ( Справочник.Организации ) и ГраничнаяДата ( Дата и время ).
В регистрации свойств установим регистрацию документа и регистра сведений «Сопоставление Объектов Информационных Баз», если планируется использовать механизм «Универсального обмена данными XML».
Дополнительно в модуле плана обмена добавим функции необходимые для идентификации плана обмена — Функция ВерсияОбменаДанными() Экспорт и другие, есть в примерах.
Второй шаг . Остановимся на правилах регистрации для объекта: Документ "Реализация Товаров и Услуг".
Правила регистрации объектов для документа «Реализация товаров и услуг»
Рис. 1 Правила регистрации объектов для документа «Реализация товаров и услуг»
Т.к. мы создали в плане обмена два реквизита для фильтрации объектов, то в ПРО укажим эти условия сравнения. Для фильтра «Организации» установим равенство организации указанной в узле обмена и источника документа на равенство. А для фильтра «Граничная дата» сравним дату документа с датой из узла (больше и равно). Если требуются более сложные правила, то Вы всегда можете использовать обработчики событий. К примеру, если требуется проверить условия по вхождению контрагента по «неким правилам» используйте свой код проверки, результатом должно быть значение флага Отказ ( Отказ= Истина – не прошел, Отказ= Ложь – все ок).
Выгружаем и сохраняем ПРО.
Шаг третий . После, того как мы сохранили правила нам нужно связать его с соответствующим планом обмена. Эти функции выполняет регистр сведений «Правила для обмена данными», либо через мастер настроек.
Добавление данных в регистр сведений «Правила обмена данными»
Рис. 2 Добавление данных в регистр сведений «Правила обмена данными»
Выбираем план обмена из загружаем ПРО из типовых (список макетов) или из файла на диске. После этой операции наш план обмена будет связан с этими правилами.
Шаг четвертый . Если вы создаете свой план, тогда необходимо добавить еще подписку на событие. Для этого создадим объект с именем «Обмен данными с внешними базами», укажем событие при записи и тип источника «Документ Реализация Товаров и Услуг» (можно использовать составной), и создадим процедуру в которую необходимо вставить следующий код:
Процедура ОбменДаннымиСВнешнимиБазамиПриЗаписи(Источник, Отказ) Экспорт
// проверка для регистрации объекта
ОбменДаннымиСобытия.МеханизмРегистрацииОбъектовПередЗаписью("ОбменСБухгалтерией", Источник, Отказ);
КонецПроцедуры
Заключение . Все, теперь выбранные объекты данных будут регистрироваться в зависимости от необходимых произвольных условий. Если вы используете типовую конфигурацию – Бухгалтерию, УТ, УПП или др., то Вам всего, лишь необходимо создать ПРО и связать их с типовым планом обмена.
Комментариев нет
Извините, обсуждение на данный момент закрыто.
Для создания распределенной информационной базы необходимо зайти программу в режиме "1С: Предприятие". Для создания узлов распределенной базы в меню выбираем: Операции — Планы обмена. Откроется окно «Выбор объекта: План обмена».
1. Рассмотрим вариант с планом обмена «Полный».
Обмен будет, осуществляться по всем организациям, находящимся в распределенной информационной базе.
Выберем план обмена «Полный». Откроется окно «План обмена полный».
Заполняем две записи:
— первую запись назовем «Главный узел», код укажем «ГУ»,
— вторую запись назовем «Подчиненный узел», код укажем «ПУ».
Как видим из рисунка, у первой записи значок изображен с зеленным кружком, это значок «Главного узла».
Для создания копии информационной базы «Главного узла», кликаем на «Подчиненный узел» и нажимаем на значок «Создать начальный образ». Это будет информационная база «Подчиненного узла».
Откроется окно «Создание начального образа ИБ», выбираем «На данном компьютере или на компьютере в локальной сети», нажимаем «Далее».
В поле «Каталог информационной базы» выбираем местоположение, куда будет установлена копия «Главного узла», нажимаем «Готово».
После создания информационной базы «Подчиненного узла» появится сообщение:
Добавляем информационную базу «Подчиненного узла» в "1С: Предприятие". Заходим в подчиненную базу в режиме "1С: Предприятие". Откроем: Операции — Планы обмена. Откроется окно «Выбор объекта: План обмена». Выберем план обмена «Полный». Откроется окно «План обмена полный». Видим что значок «Главного узла» оранжевый, это значит, что этот узел является главным для той информационной базы, в которой мы находимся.
Следующие настройки делаем и в Главном и в Подчиненном узле:
1. Добавляем префикс для распределенной информационной базы.
Это делается для того чтобы не возникало конфликтов в номерах и кодах документов и справочников, созданных в двух базах, поэтому в каждой базе указываем префикс, который будет добавляться в номера документов и коды справочников. Открываем: Сервис — Настройка программы — закладка «Обмен данными». В поле «Префикс узла для распределенной информационной базы:» в подчиненной базе вводим «ПУ», в главной базе вводим «ГУ».
2. Добавляем настройку обмена данными между узлами:
Открываем: Сервис — Распределенная информационная база (РИБ) — Настроить узлы РИБ. Откроется окно «Настройки обменов данными».
Нажимаем «Добавить», откроется окно «Настройка обмена данными». Вводим «Наименование» вашей настройки.
В поле «Узел» автоматически появится узел, для «Главного узла» будет «Подчиненный узел», для «Подчиненного узла» будет «Главный узел».
В поле «Каталог» выберете папку, в которую будут поступать данные обмена, для главной и подчиненной базы лучше всего указывать один каталог.
В поле «Тип обмена» настраиваем передачу данных между базами: через файловый или фтп-ресурс. Выбирем например «обмен через файловый ресурс».
В остальных полях ничего не меняем.
Нажимаем «Ок». Видим, что появилась настройка.
3. Для обмена данными делаем следующее:
Сначала в базе, в которой были сделаны изменения, нажимаем на значок «Выполнить обмен по текущей настройке», как показано на рисунке.
После выгрузки появится окно результата выгрузки.
Потом в базе, в которую необходимо передать изменения, нажимаем на значок «Выполнить обмен по текущей настройке» и данные попадут в ту базу, в которую вы хотите.
2. Рассмотрим вариант с планом обмена «По организации».
Обмен будет, осуществляется по выбранным организациям, находящимся в распределенной информационной базе.
Для создание узлов распределенной базы в меню выбираем: Операции — Планы обмена. Откроется окно «Выбор объекта: План обмена».
Выберем план обмена «По организации». Откроется окно «План обмена По организации».
Заполняем две записи:
— первую запись назовем «Главный узел», код укажем «ГУ», видим отличие от «Плана обмена: Полный», появилась таблица, в которой указываем Организации по которым будет происходить обмен.
— вторую запись назовем «Подчиненный узел», код укажем «ПУ», указываем организации.
Во всем остальном настройка идет абсолютно аналогично с «Планом обмена: Полный».