Обмен через универсальный формат 1с. Обмен через универсальный формат

Отправить эту статью на мою почту

Основные причины потребности внедрения обмена между базами 1С - это наличие филиалов и разделение видов учета, т.к. зачастую компании работают в нескольких информационных базах. Настройка обмена 1С 8.3 позволяет исключить ведение двойной работы – ввода одних и тех же документов и справочников в двух программах, а так же оперативно поставлять нужные объекты системы для различных филиалов и отделов.

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

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

Одной из новейших разработок 1С является формат обмена данными EnterpriseData. Он прост в использовании и предназначен для обмена внутри компании как между базами 1С, так и сторонними программами.

Реализацию обмена данными на предприятии можно представить в виде последовательных процедур.

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

Затем выбираем подходящий формат: РИБ, универсальный формат; обмен по правилам обмена; обмен без правил обмена.

Следующим шагом будет выбор транспорта для выполнения обмена. Доступен большой выбор технологий, выделим основные: каталог (локальный или сетевой), FTP-ресурс, COM соединения, веб-сервис, электронная почта.

Четвертым шагом будет определение данных: документов, справочников и при необходимости детализация до отдельных их реквизитов, подлежащих передаче.

И в заключении прописывается расписание периодичности обмена

Каждый вариант настройки обмена 1С 8.3 требует тщательно подготовки. Его реализация не под силу каждому пользователю, здесь необходимо учитывать множество нюансов и понимать принципы работы обмена. Особое внимание потребуется уделить настройке, если базы: содержат доработки или множество доп. реквизитов, отличаются версиями платформы или используются устаревшие версии конфигураций, предприятие крупное и использует автоматизированную систему, состоящие из большого количества баз. Ошибки здесь недопустимы, т.к. могут привести к неисправимым последствиям. Самостоятельная реализация обмена в 1С рекомендуется только в том случае, если надо настроить простую передачу информации между типовыми конфигурациями.

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

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

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

Такой алгоритм подходят и для других типовых конфигураций на платформе 1С 8.3

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

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

Так как БП является только приемником информации, переходим к настройке УТ.

Здесь, так же как и в БП требуется включить синхронизацию и указать префикс. Доступны эти сведения в разделе НСИ и администрирование → Настройки синхронизации данных.

Выбираем способ настройки Указать настройки вручную. Далее.

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

Система проверит правильность указанных данных и в случае положительного результата выведет окно настройки обмена 1С 8.3.

По ссылке Изменить правила выгрузки данных доступны настройки выполнения обмена. Внесем уточнения НСИ – выгружать только используемые в документах, выберем организации и вариант работы с договорами - без привязки, разделение документов в разрезе складов. Начало обмена с 1 марта текущего года.

Внесенные правила записываем и закрываем.

Так как в примере речь идет об односторонней передачи информации, то в следующем окне настроек для получения данных из другой программы следует установить значения Не отправлять. Записать и закрыть. Далее.

Теперь надо проверить введенные параметры и если они верны нажать Далее, в противном случае вернуться к предыдущему шагу нажав Назад.

Затем будет предложено провести синхронизацию. Жмем Готово.

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

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

После выполнения синхронизации будет выведено окно с подтверждением успешного завершения этого процесса.

Здесь же по команде Настроить или после, в сценарии синхронизации можно настроить расписание автоматического выполнения обмена.

Для облегчения интеграции с программными продуктами фирмы «1С» разработан формат обмена данными EnterpriseData. Формат основан на XML и является бизнес-ориентированным – описанные в нем структуры данных соответствуют бизнес-сущностям (документам и элементам справочников), представленным в программах «1С», например: акт выполненных работ, приходный кассовый ордер, контрагент, договор и т. п. Это делает формат интуитивно понятным и легким в использовании.

Формат EnterpriseData предназначен для обмена данными внутри компании (в том числе между разнородными и территориально удаленными информационными системами) и призван покрыть все сферы деятельности предприятия – финансы, производство, закупки и продажи, складские операции и т. п.

Описание формата

Версия 1.0.1 формата включает в себя описание 94 типов бизнес-сущностей из различных областей бизнеса (подробное описание формата можно найти здесь). Формат является расширяемым – фирма «1С» будет добавлять в него описание новых бизнес-сущностей и расширять существующие сущности новыми полями. Поддержка формата в продуктах фирмы «1С» обеспечивает совместимость снизу вверх – все программы сторонних производителей, обменивающихся данными в формате EnterpriseData с продуктами «1С», при выходе новых версий формата корректно продолжат работу.

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

Обмен данными с программами «1С»

Предварительная настройка на стороне «1С»

Чтобы начать обмен данными в формате EnterpriseData между приложением «1С» и сторонним приложением, надо на стороне «1С» настроить синхронизацию данных. В ходе настройки указывается уникальный код приложения, с которым будет производиться обмен, а также по какому каналу будет происходить обмен данными. В настоящий момент доступны следующие опции:

  • веб-сервис,
  • файловый обмен через каталог,
  • файловый обмен через FTP.

Обмен через электронную почту

В случае обмена через веб-сервис стороннее приложение будет инициировать сеанс обмена данными путем вызова соответствующих веб-методов приложения «1С». В остальных случаях инициатором сеанса обмена будет приложение «1С».

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

по расписанию (с заданной периодичностью);

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

Формат файлов обмена

В ходе синхронизации приложения «1С» и сторонние приложения обмениваются сообщениями – XML-файлами определенной структуры. Эти файлы состоят из двух секций –

и . Секция
содержит сообщение-квитанцию (о ней ниже), а – информацию об измененных бизнес-сущностях в формате EnterpriseData.

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

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

Рассмотрим пример синхронизации данных между конфигурациями «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»:


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

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

Представляет собой свод правил, по которым объекты из одной конфигурации будут загружаться в другую. В нашей инструкции мы будем настраивать обмен между 1С Бухгалтерия 3.0 и 1С Управление торговлей 11 на базе платформы 1С 8.3.

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

Сначала рассмотрим последовательность действий в 1С Бухгалтерия предприятия 3.0. Найдем в разделе «Администрирование — Настройки» пункт «Настройка синхронизации данных» (рис.2).

Здесь необходимо включить флажок «Синхронизация данных» и обязательно указать префикс нашей базы (рис.3). При желании можно – ранее этой даты никакие данные загружаться или меняться не будут.

Теперь заходим на закладку «Синхронизация данных» и настраиваем сам обмен (Рис.4). Обменов может быть несколько. Для каждого создается своя строка (кнопка с плюсиком «Настроить синхронизацию данных»). В демо-базе 1С Бухгалтерия у нас уже есть две записи. Проверим настройки последней (кнопка с карандашиком «Настроить правила …»).

Заполняем только закладку «Правила получения данных» (рис.5), так как ничего отправлять не будем. На закладке «Правила отправки данных» устанавливаем флажки «Не отправлять».

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

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

Аналогичные настройки выполняются в базе «1С Управление торговлей 11».

Настройка обмена со стороны Управление торговлей 11

В разных релизах нужный нам раздел может иметь другое название. В нашем примере это пункт «Настройка интеграции – Другие программы» (Рис.7).

Остальное – похоже. Тот же флажок «Синхронизация данных», тот же пункт и похожие настройки. (Рис.8).

Только префикс другой. Это важно!

Получите 267 видеоуроков по 1С бесплатно:

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

С этого момента начинаются отличия от предыдущей настройки в БУХ.3.0. Нам нужно заполнить вкладку «Правила отправки данных» (рис.10). И главное, что нужно сделать, — определить состав отправляемых данных.

Выбрать данные, которые мы собираемся передавать, можно несколькими способами (рис.11). Все они собраны в пункте «Зарегистрировать». Можно выбрать как один объект, так и список. Или все сразу.

Вернемся на предыдущую закладку и выполним еще один важный пункт, уже знакомый нам – укажем параметры подключения (рис.12). Параметры настраиваются так же, как и для бухгалтерии. Только в этот раз мы используем виртуального пользователя с именем «Обмен».

Запуск и проверка обмена между 1С Бухгалтерия 3.0 и 1С Управление торговлей 11

Обмен выполняется по кнопке «Синхронизировать», которая находится на первой странице настройки (рис.13). Эту кнопку можно найти и на других страничках. Более того, нет особой разницы, в какой из двух конфигураций эту кнопку нажимать. Обмен двухсторонний.

Жмем кнопку и переходим к следующему шагу.

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

На следующем шаге появится возможность выбрать организации, по которым будут передаваться данные, и некоторые другие отборы (рис.15).

Описание всех отборов появляется в специальном окне, а полный список объектов, которые будут отправлены, можно получить в отчете о составе отправляемых данных (рис.16).

Обмен может выполняться долго, время зависит от количества передаваемых объектов. После завершения процесса получаем картинку следующего вида – рис.17. По кнопке «Настроить» можно настроить расписание, по которому обмен будет выполняться автоматически.

И показываем, как с ее помощью СИЛЬНО упростить решение своих задач

Сегодня мы разберем, как буквально за 10-15 минут настроить и сделать простой перенос справочников и начальных остатков.

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

Поэтому позовите коллег, им это будет тоже очень полезно.

Особенно, если они уже видели КД 3 и успели испугаться:)

Да, когда ее видишь в первый раз – там вообще ни фига не понятно.

Но на самом деле – все ОЧЕНЬ просто. Настолько просто, что вам потом даже скучно будет:)

Что конкретно в сегодняшних видео

Это 4 видео по обмену данными через универсальный формат обмена EnterpriseData .

Кроме того, мы покажем пример доработки типовых правил обмена в 1С:Конвертации данных 3.0

Общая длительность – 34 минуты . Содержание:

  • Настройка обмена на примере 1С:Бухгалтерии 8 и 1C:ERP
  • Как сделать загрузку типовых правил и универсального формата обмена в Конвертации Данных 3.0
  • Перенос структуры метаданных в КД 3.0
  • Как выполнить первый обмен данными
  • Доработка правил конвертации
  • Как загрузить новые правила без изменения конфигурации (без снятия с поддержки )

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

Если бы подобная задача решалась в Конвертации данных 2.0, то изменения пришлось бы вносить в правилах и источника, и приемника.

Данные видеоуроки актуальны для БСП редакции 2.3.2 (для любой сборки старше 2.3.2.43).

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

Видео 1:
Загрузка правил обмена между типовыми конфигурациями в Конвертацию данных 3.0

В этом уроке выполним подготовительные действия при внесении изменений в правила обмена между типовыми конфигурациями:

  • Загрузка в КД структуры формата обмена (
  • Создание конвертации
  • Выгрузка файлов правил из типовой конфигурации
  • Выгрузка модуля менеджера обмена

Видео 2:
Доработка правил обмена в КД 3.0

В этом уроке мы покажем, как дозаполнить реквизиты объектов при загрузке данных.

Будет решена задача – при загрузке объектов из конфигурации-источника устанавливать комментарий “Загружено из БП 3.0”.

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

Разработанные правила будут сохранены в виде внешней обработки для дальнейшего использования.

Видео 3:
Настройка универсального обмена между типовыми конфигурациями

В этом уроке мы покажем, как настраивать новый обмен между типовыми.

Настройки будут сделаны в конфигурации-источнике и затем загружены в конфигурацию-приемник.

Также в этом видео мы покажем, как без изменения конфигурации подгрузить новые правила обмена.

Видео 4:
Перенос начальных остатков с помощью правил обмена

В уроке покажем типовой функционал переноса начальных остатков.

P.S.

Да, обмены через txt / dbf / ole и т.д. имеют право на существование. В каких-то специальных случаях, типа стыковки с веб-сервером или переноса из готового формата внешнего приложения.

Однако для стандартных обменов – стандартные методы и быстрее, и сильно проще.

А если кто-то изобретает велосипед, когда есть готовое универсальное решение – это как написать себе на лбу “инструментом не владею, изучать не хочу, буду строить костыли за ваши деньги” .

P.P.S.

Мы хотим показать, что Конвертация Данных 3.0 – это не сложно.

Непривычно – да. Не все сразу понятно – да. Есть очень неоднозначные моменты – да.

Но с помощью готовых инструкций и видео ее можно освоить буквально за 1-2 недели.

Windows