Что такое правила обмена в 1с.

В этой статье я опишу, как настраивается типовой обмен данными между БП 3.0 и УТ 10.3. (обмен с БП 3.0 доступен начиная с релиза 10.3.20)

Я настраивал обмен по следующим требованиям: движения товаров по партиям должна переноситься в БП; из БП выгружаются только информация по банковским движениям.

Для настройки обмена необходимо выполнить следующие шаги:

1. Определить из какой базы будет произведена первая выгрузка. В принципе можно делать первую выгрузку из любой базы, я например, первую выгрузку делал из УТ 10.3. Для этого в УТ необходимо сделать:

1.1. В настройке параметров учета установить флажок "Использовать обмен данными" и указать "Префикс ИБ" (в отличие от БП 2.0 количество символов в префиксе ограничено до 2).

1.2. Запустить помощник создания плана обмена ("Сервис->Обмен данными с продуктами на платформе 1С: Предприятие 8.2->Обмены данными") по кнопке "Настроить синхронизацию данных".

Я только кратко опишу шаги по настройке в помощнике:

а) "Выбор шага настройки синхронизации данных", тут два варианта создание нового плана обмена или продолжения уже созданного, в моем случае в УТ 10.3 выбираю создание новой, а в бухгалтерии продолжение настройки.

б) Выбирается способ передачи данных, я использую файл в общей папке.

в) Настройка параметров синхронизации, здесь нужно указать название другой базы (не обязательно точно, я указал "БП") и префикс (тут нужно точно указать), а также необходимо указать параметры, касаемые правила выгрузки (такие как "Начальная дата выгрузки документов", "Выгружать аналитику по складам", "Перенос себестоимости списания", настроить отборы выгрузки и др.)

2.1. В настройках программы (Раздел "Администрирование", пункт "Настройка программы") необходимо установить флаг "Использовать синхронизацию данных" на закладке "синхронизация данных".

2.2. Запустить помощник создания плана обмена (Раздел "Администрирование", пункт "Синхронизация данных"). По кнопке "Настроить синхронизацию данных" и выбрать вид синхронизации УТ 10.3.

2.3. В помощнике указывается:

а) Файл настроек, сохраненный из базы УТ 10.3 (см. п. 1.3.(г)) В этом файле храниться данные о названии конфигурации, префиксе, способе соединения.

б) Настройка параметров синхронизации. Здесь указывается: "Режим обмена" (односторонний или двухсторонний, меня интересует только двухсторонний), "Начальная дата выгрузки документов", "Отборы по организации", "Настройка значений по умолчанию".

2.4. В процессе первой загрузке пользователю будет предоставлена возможность вручную указать несопоставленные данные (данная функция будет доступна при синхронизации с дополнительными параметрами, как в УТ, так и в БП).

После выполнения первого обмена синхронизация считается выполненной, но при этом доступны настройки обмена данными, а также дополнительные функционал для работы с обменом. Для корректировки необходимо нажать кнопку изменить на форме синхронизации.

Приведу некоторые особенно важные функции:

1. "Загрузка правил конвертации объектов", здесь есть возможность задать файл с правилами обмена. Для работы с ними нужно использовать конфигурацию "Конвертация данных". В данной конфигурации есть возможность загружать, изменять, сравнивать между собой (важная функция при обновлении), сохранять правила конвертации.

2. "Загрузка правил регистрации объектов", здесь можно задать файл с правилами регистрации. Для корректировки правил, так же используется конфигурация "Конвертация данных". В этих правилах можно настроить дополнительные условия для регистрации объектов в базе для целей участия в обмене.

3. "Параметры транспорта сообщений", здесь можно изменить параметры подключения для обмена (например, изменилась папка или ftp ресурс, используемый для обмена).

4. "Получить настройки синхронизации для другой программы", в этом пункте возможно повторно выгрузить файл настроек для другой конфигурации.

5. "Состав отправляемых данных" (Данный пункт есть только в БП 3.0, в УТ 10.3 функция данного функционала реализована встроенной обработкой "Регистрация изменения для обмена") С помощью данной функции есть возможность изменить, удалить регистрацию объектов конфигурации в обмене.

6. "Удалить настройку синхронизации", удаляет настройку.

7. Синхронизация с дополнительными параметрами. Здесь можно вручную настроить сопоставление передаваемых данных. Так же добавить дополнительные документы для обмена.

В случае если между базами данных 1с настроен обмен с использованием правил обмена. То в результате доработки конфигураций или обновления на более актуальный релиз возникает задача актуализации правил обмена.

ВВЕДЕНИЕ

В случае если между базами данных 1с настроен обмен с использованием правил обмена. То в результате доработки конфигураций или обновления на более актуальный релиз возникает задача актуализации правил обмена.

Схематический процесс актуализации правил представлен далее:

Обращаю внимание, что первый пункт в данной схеме не актуален, если у вас в базе конвертация данных уже находятся правила обмена.

Создание и обновление объектов метаданных конвертации

Выгрузка правил обмена из базы в XML файл (для новой конвертации)

Для того что выгрузить привила обмена, в типовых конфигурациях нужно зайти в справочник настройки обмена данными а нажать кнопку «Сохранить правила обмена

Загрузка правил обмена, в конфигурацию КД 2.0 (для новой конвертации)

После запуска Конвертации данных нужно открыть форму загрузки правил обмена, и указать файл с правилами обмена данными.

Выгрузка изменений конфигурации в файл XML (MD81Exp.epf, MD82Exp.epf)

Выгрузка конфигурации осуществляется обработкой MD81Exp.epf, MD82Exp.epf соответственно для версий 1с 8.1 и 8.2 .Данная обработка расположена в каталоге шаблона конфигурации КД (например C:\Users\RudakovDV\AppData\Roaming\1C\1Cv82\tmplts\1c\Conversion\2_1_7_1).

Осуществим выгрузку конфигурации БП 3.0.

Открываем обработку MD82Exp.epf, в ней отмечаем выгружать движения документов без проведения и нажем выгрузить (Рис. 3.)

Замена изменённой конфигурации в правилах обмена.

Откроем список правил обмена (Рис. 4.)

Вызываем форму элемента правил обмена (Рис.5). Далее взываем форму конфигурации заменимой конфигурации.

Появится форма элемента справочника конфигурации (Рис. 6.), в ней нужно заменить старую конфигурацию, на актуальную конфигурацию которую мы получили на втором шаге.


В форме загрузки метаданных конфигурации, следует обратить внимание, что вы действительно заменяете (а не дополняете и не создаете) нужную конфигурацию.

Редактирование правил обмена

Актуализация ПКС и ПКО

При редактировании правил обмена следует обратить внимание на списки правил конвертации объектов и списки правил конвертации свойств. Если объект или свойство удалены (возможно, переименованы) в новой версии конфигурации, то строка с данным полем будет выделена красным. Подобный пример приведен на Рис. 8, в результате обновления к новой конфигурации была удалена табличная часть «Пересортица» и реквизит «ПолученИзАстор», следовательно, данные строки выделены красным.

Для исправления данных недостатков, нужно изменить источник и приемник конвертируемого свойства. Для этого нужно кликнуть по выделенной строке дважды, и в появившейся форме правиле конвертации свойств (Рис. 9.), просмотреть свойства источника и свойства приемника. Если в конфигурации были удалены реквизиты или табличные части, то в конвертации данных при загрузке, эти свойства будут помечены на удаление. Следовательно, нужно переназначить свойства, помеченные на удаление на новые появившиеся свойства, или может быть удалить данную конвертацию свойства из ПКО.

Аналогичным образом нужно актуализировать правила конвертации объектов.

Актуализация кода обработчиков

Для актуализации кода обработчиков на данный момент нет средств, для выявления синтаксических ошибок.

Сохранение правил обмена и их загрузка в БД

Появится форма сохранения правил, в которой указывается файл сохранения правил обмена.

Теперь в форме элемента справочника настройки обмена данными, загружаем правила обмена в БД. Теперь можно провести обмен.

Так же нужно обратить внимание, что при замене правил обмена в конфигурации конвертация данных новой версией правилами обмена, не всегда новые правила загружаются корректно. В частности если в вашей конфигурации конвертация данных имеются правила обмена, в которых галочка «Работа с параметрами версии 2.1» отключена, а в загружаемых правилах обмена включена, то ожидаемого результата что галочка будет включена не подтвердится, т.е. нужно будет вручную зайти и проставить данную галочку (Рис. 12.).

В файлах размещенных к скачиваю, последовательно рассказано как сохранить новую конфигурацию, заменить её в правилах обмена и доработать их в соответствии с новыми изменениями. Попытался обратить внимание на важные пункты при решении данной задачи.

Буду рад дополнениям и замечаниям в

Автоматизированные системы управления в большинстве случаев состоят из отдельных баз данных и зачастую имеют территориально распределенную структуру. При этом правильно реализованный обмен данными - необходимое условие для эффективной работы таких систем.

Первоначальная настройка обмена при этом может потребовать ряда действий, не только в части программирования, но и консалтинга, даже если мы имеем дело с однородными источниками, как в случае с продуктами на платформе «1С:Предприятие». Почему настройка обмена 1С (или, как еще это называется - синхронизация данных в 1С 8.3) может стать самой трудоемкой и недешевой задачей проекта интеграции, рассмотрим в этой статье.

Обмен данными в среде 1С позволяет:

  • Исключить двойной ввод документов;
  • Автоматизировать смежные бизнес-процессы;
  • Оптимизировать взаимодействие между распределенными подразделениями;
  • Оперативно актуализировать данные для работы специалистов разных отделов;
  • «Разграничить» разные виды учета.*

*В случае, когда данные одного вида учета существенно отличаются от другого, необходимо обеспечить конфиденциальность информации и «разграничить» информационные потоки. Например, обмен данными между 1С УТ и 1С Бухгалтерия не требует выгрузки в базу регламентного учета управленческих данных, т.е. синхронизация в 1С тут будет неполная .

Если представлять стандартный процесс реализации первичного обмена данными, когда хотя бы один из его объектов – продукт 1С, то можно выделить следующие этапы:

  • Согласование состава обмена;
  • Определение транспорта (протоколов обмена);
  • Установка правил;
  • Составление расписания.

Выявление состава обмена 1С

Объекты обмена можно условно поделить на «источник» и «приемник». При этом они могут исполнять две роли одновременно, что будет называться – двусторонним обменом. Определение источника и приемника происходит логическим путем в зависимости от необходимости или от функциональных возможностей системы.*

*Например, при интеграции «WA: Финансист» – решения для ведения финансового учета и управления процессами казначейства, разработанного на базе «1С:Предприятие», эксперты WiseAdvice рекомендуют именно его в качестве мастер-системы. Это обусловлено наличием инструментов контроля для соблюдения правил заявочной политики, а соответственно, и для обеспечения эффективности работы решения.

Далее на основе полученных и зафиксированных требований со стороны пользователей создается список данных для обмена, определяется их объем, требования к частоте обмена, прописывается процесс работы с ошибками и обработки исключительных ситуаций (коллизий).

На этом же этапе в зависимости от парка имеющихся систем и структуры предприятия определяются с форматом обмена:

Распределенная информационная база

  • РИБ подразумевает обмен между идентичными конфигурациями баз данных 1С, с четкой структурой управления «главный-подчиненный» для каждой пары обмена. Являясь элементом технологической платформы, РИБ помимо данных может передавать изменения в конфигурации и административную информацию БД (но только от главного к подчиненному).

Универсальный обмен данными в 1С

  • Механизм, позволяющий настроить обмен баз 1С, как с конфигурациями на платформе «1С:Предприятие», так и с системами сторонней разработки. Обмен осуществляется посредством перевода данных в универсальный xml-формат в соответствии с «Планами обмена».

EnterpriseData

  • Новейшая разработка фирмы 1С, предназначенная для реализации обмена данными в формате xml между продуктами, созданными на платформе «1С:Предприятие», с любыми системами автоматизации. Применение EnterpriseData упрощает доработки, связанные с обменом. Ранее при включении в систему новой конфигурации была необходима реализация механизма импорта и экспорта данных, как для нее, так и для уже имеющихся систем. Теперь системы, поддерживающие EnterpriseData, не нуждаются в доработках, имея только одну точку «входа-выхода».

Определение транспорта (протоколов обмена)

Для системы на платформе «1С:Предприятие 8» предусмотрен широкий спектр возможностей для организации обмена с любыми информационными ресурсами посредством общепринятых универсальных стандартов (xml, текстовые файлы, Excel, ADO-соединение и т.д.). Поэтому при определении транспорта для данных обмена следует отталкиваться от возможностей базы данных сторонней системы.

Синхронизация справочников

Основным принципом эффективной синхронизации справочников является наличие одной точки ввода. Но если речь идет о работе со справочниками, исторически заполнявшимися по разным правилам, необходимо четко определить поля синхронизации для приведения обмена к «общему знаменателю».*

*На этом этапе может потребоваться проведение работ по нормализации НСИ на стороне источника данных. В зависимости от состояния справочников и их объема, процесс сопоставления элементов, распознавания, выявления ошибок и дублей, а также заполнения недостающих полей и назначение полей синхронизации, может потребовать работы целой группы экспертов, как со стороны интегратора (владельца методики нормализации НСИ), так и со стороны заказчика.

Установка правил

Возможность отображения данных систем-источников в приемниках зависит от правильно заданных правил обмена. Правила, представленные в формате xml, регулируют соответствие ключевых реквизитов объектов источника-приемника. Решение «1С:Конвертация данных» предназначено для автоматизации создания правил для реализации как единоразового обмена, так и постоянного.

Гарантирует отсутствие потерь данных при обмене План обмена. Это составная часть любой конфигурации на платформе «1С:Предприятие», полностью описывающая порядок обмена 1С: состав данных (документы с «опознавательными» реквизитами) и узлы (информационные базы приемники-передатчики), а также активацию РИБ для избранных направлений обмена.

Любое изменение данных, занесенных в План обмена, фиксируется и получает признак «измененности». До тех пор, пока измененные данные не будут соответствовать друг другу в узлах приемника-передатчика, признак сброшен не будет, и система будет рассылать контрольные сообщения в оба узла. После выгрузки данных и подтверждения их полного соответствия в обеих системах, признак сбрасывается.

Расписание обмена в 1С

Для автоматизации регулярного обмена устанавливается периодичность выгрузки данных. Частота обмена зависит от необходимости и технических возможностей. Также конфигурации на платформе «1С:Предприятие» позволяют настроить обмен данными при наступлении какого-нибудь события.

Рассмотрев стандартный процесс реализации обмена, обратим внимание на факторы, которые потребуют доработок на разных этапах:

  • Не типовые, сильно доработанные конфигурации БД;
  • Разные версии платформы «1С:Предприятие»;
  • Давно не обновлявшиеся, не актуальные версии конфигурации;
  • Объекты обмена, ранее подвергшиеся доработкам;
  • Необходимость в нестандартных правилах обмена;
  • Сильно различающийся набор и состав реквизитов в имеющихся справочниках.

Поскольку даже стандартные действия по реализации первичного обмена данными требуют экспертных знаний, их рекомендуется проводить при участии специалистов 1С. Только после выполнения всех вышеописанных действий следует переходить к настройке обмена в конфигурации. Рассмотрим интеграцию баз данных на примере «1С:УПП» и «1С:Розница» (по этой же схеме настраивается обмен с «1С:УТ»). Также к типовой синхронизации относится обмен УПП - УПП, характерный для масштабных систем автоматизации на крупнейших промышленных предприятиях.

В подменю «Сервис» выбираем «Обмен данными c продуктами на платформе…» (выбор прямого обмена с «Розницей» зачастую грозит ошибками на уровне COM-объектов). Обратим внимание на служебное сообщение «Данная возможность недоступна».


Чтобы решить эту проблему, необходимо выбрать «Настройку обмена данными»


…и проставить галочку. Далее сообщение об ошибке игнорируем.


В настройках синхронизации данных выбираем «Создать обмен с «Розница»…



Перед настройкой параметров подключения через локальный или сетевой каталог следует убедиться, что на диске под каталог есть место. Хотя, как правило, он не занимает более 30-50 Мб, в исключительных случаях под него может потребоваться до 600 Мб. Создать необходимый каталог можно прямо из конфигуратора.



При подключении через сетевой каталог предложения настроить подключение посредством FTP-адреса и по электронной почте игнорируем, нажимая «Далее».


В настройках вручную проставляем префиксы – условные обозначения баз (как правило, БП, УПП, РО), задаем правила и начальную дату выгрузки данных. Префикс будет указываться в названии документов, для обозначения базы, в которой они были созданы. Если правила выгрузки не будут отредактированы, данные по умолчанию будут выгружаться по всем имеющимся параметрам.



Создаем файл настройки обмена для «Розницы», чтобы не повторять свои действия. При необходимости немедленной отправки данных сразу после настройки синхронизации – проставляем галочку.


Для автоматизации процесса обмена необходимо настроить расписание.


Меню «Розница».


Проставляем галочку и выбираем «Синхронизацию».


Производим «обратную» настройку, выбирая Управление производственным предприятием.




Загружаем файл с настройками, созданный в УПП.


Проставляем галочку, адрес система подхватывает автоматически.





Действуем так же, как в УПП.









Проверочное сопоставление данных (Ручное сопоставление данных рекомендуется произвести на подготовительном этапе, поскольку эти работу могут стать самыми трудоемкими в процессе реализации обмена). Открытие окна сопоставления происходит по двойному щелчку мыши.



В случае ошибки в синхронизации «Подробно…» будет заменено на «Никогда…».


«Подробно…» открывает журнал регистрации с уточненной информацией по обмену.


Готово.

В каждом плане есть определенный список элементов, информацию об изменении которых он может хранить. Этот список называется «Состав плана обмена». Состав можно расширять, но при этом поддержка конфигурации снимается.

В «Макете плана» хранятся те самые правила, на основе которых работает синхронизация. Вот именно этот пакет конвертации (ПравилаРегистрации, ПравилаОбмена, ПравилаОбменаКорреспондента) нам и необходим для дальнейшего изучения.

Рассмотрим пример синхронизации данных между конфигурациями «1С:Зарплата и управление персоналом 3» (ЗУП) и «1С:Бухгалтерия предприятия 3» (БП). Отметим сразу, в данной задаче нам придется снять конфигурацию с поддержки. Данное потребуется по условию.

Живой пример потребности в доработке типовых правил обмена

Например, заказчик обратился к нам с такой проблемой: при синхронизации между ЗУП и БП нет возможности передать данные справочника «Регистрации в налоговом органе», которые необходимы для заполнения документа «Отражение зарплаты в бухучете». Сейчас табличная часть этого документа на стороне приемника БП содержит пустую «Регистрацию…» и пользователям приходится вручную создавать такие записи в справочнике. Согласитесь, это неудобно. Можем доработать этот момент.

Решение проблемы: доработаем пакет конвертации из плана обмена ОбменЗарплата3Бухгалтерия3. Добавим в типовые «Правила обмена 1С» новое «Правило конвертации объектов» (ПКО) для справочника «Регистрации в налоговом органе» и соответственно «Конвертацию свойств» этого справочника (ПКС). Обязательно доработаем типовые «Правила регистрации объектов», т.к. возникла необходимость зарегистрировать изменения справочника на узле обмена. И пересмотрим «Правила обмена 1С» базы корреспондента.

Где все это будем редактировать? для написания и изменения правил нам потребуется конфигурация «1С:Конвертация данных 2».

Доработка типовых правил конвертации из Плана обмена ЗУП - БП

Итак, доработку правил обмена 1С начнем с того, что в конфигураторе для плана обмена ОбменЗарплата3Бухгалтерия3 в состав добавим новый элемент - справочник РегистрацииВНалоговомОргане. Данное изменение сделаем в обоих конфигурациях «1С:Зарплата и управление предприятием 3» и «1С:Бухгалтерия предприятия 3».

Сохраним и обновим конфигурации.

В режиме предприятия для каждой базы выгрузим описание структуры метаданных с помощью обработки MD83Exp.epf для платформы «1С:Предприятие 8.3». Обработку можно найти в комплекте «1С:Конвертация данных».

На следующем этапе выгрузим пакет конвертации из ЗУП и БП. Пакет должен состоять из 3 файлов: ПравилаРегистрации, ПравилаОбмена, ПравилаОбменаКорреспондента.

В рамках данной статьи не будет описания как настраивается синхронизация данных, это можно прочитать на сайте компании «Кодерлайн» в разделе «Статьи экспертов» либо посмотреть записи вебинаров . Сейчас в базах уже настроена данная опция. Поэтому переходим в настройку синхронизации (Администрирование -> Синхронизация данных -> Настройка синхронизации данных), нажимаем кнопку «Загрузить правила». Перед нами откроется форма «Правил для синхронизации». По кнопке «Еще» выберем пункт «Сохранить правила в файл».


Вот такой пакет после выгрузки должен у нас получиться.

Аналогичные действия выполним и для другой информационной базы «1С:Бухгалтерия предприятия».
В итоге все подготовительные работы для редактирования правил готовы. У нас есть:

Описание структуры метаданных для загрузки в «1С:Конвертация данных 2» (для ЗУП и БП);

Пакет конвертации, который содержит правила обмена 1С и правила регистрации, необходимые для загрузки в «1С:Конвертация данных 2» (для ЗУП и БП).

Переходим в «1С:Конвертация данных 2» . Выполним следующие действия по порядку для обоих информационных баз:

Загружаем структуры метаданных наших конфигураций;

Создаем конвертации и загружаем правила обмена данными 1С из пакетов конвертации (файл правил называется ExchangeRules);

Создаем регистрации и загружаем правила регистрации из пакетов конвертации (файл правил называется RegistrationRules).


Переходим непосредственно к нашей доработке. В правила обмена 1С добавляем новое правило конвертации объектов (ПКО) - справочник «Регистрации в налоговом органе». Добавляем правило конвертации свойств (ПКС) для этого справочника и правило выгрузки данных (ПВД). Такого рода доработку необходимо выполнить как для правил из пакета ЗУП, так и для правил обмена из пакета БП. Выгружаем наши правила обмена в соответствующие файлы ExchangeRules.

Переходим к правилам регистрации нового элемента. Добавляем справочник «Регистрации в налоговом органе». Выгружаем правила регистрации в соответствующий файл из пакета RegistrationRules. Это действие также выполняем для обоих баз.

Доработанные правила обмена и правила регистрации готовы. Теперь в правила корреспондента (CorrespondentExchangeRules) из пакета ЗУП копируем содержимое правил обмена (ExchangeRules) из пакета БП. В правила корреспондента (CorrespondentExchangeRules) из пакета БП копируем содержимое правил обмена (ExchangeRules) из пакета ЗУП.

В итоге должно получиться следующее:

На этом работа в «1С:Конвертация данных 2» завершена. Доработанные пакеты правил конвертации готовы, осталось загрузить их обратно в информационные базы и проверить синхронизацию.

Архивируем файлы из пакетов в Архив ZIP и загружаем в ЗУП и БП свои пакеты конвертации.

Все готово. Осталось протестировать.

Вспомним условия задачи. Необходимо было зарегистрировать к выгрузке справочник «Регистрации в налоговом органе» и проверить, как заполняется ТЧ документа «Отражение зарплаты в бухучете» на стороне «1С:Бухгалтерия предприятия 3».

В источнике «1С:Зарплата и управление предприятием 3» регистрируем к выгрузке наш справочник. Выполняем синхронизацию. Переходим в базу приемник и тоже выполняем синхронизацию для получения данных. Обратим внимание, что теперь в плане обмена появился нужный справочник для регистрации изменений.

Проверяем на стороне «1С:Бухгалтерия предприятия 3»:


Подведем итог. Результат поставленной задачи выполнен успешно. Мы доработали план обмена ЗУП - БП, добавив новый элемент для регистрации изменений и дописали правила конвертации для синхронизации данных.