Рассказываем о том, с помощью каких механизмов можно настроить обмен данными в 1С
Автоматизированные системы современных предприятий в большинстве случаев состоят из отдельных баз данных и имеют территориально распределенную структуру. Правильно реализованный обмен данными — необходимое условие для эффективной работы таких систем.
Когда нужен обмен данными
В каких случаях нужен обмен данными:
1. Географически удаленные системы. Организация имеет распределенную структуру, ее подразделения (филиалы, торговые точки) находятся далеко друг от друга и взаимодействуют только посредством интернета. Системы учета могут размещаться в разных местах одного населенного пункта либо в различных населенных пунктах. Это удобно, когда центральный офис находится, например, в центре города, а удаленные торговые точки либо склады расположены в разных частях города или открываются филиалы в других городах. В каждом из населенных пунктов или в каждой торговой точке устанавливается отдельная база данных конкретного назначения. Например, ставим торговые программы и нужно результат деятельности каждой торговой точки передавать в центральную базу данных. В центральной базе данных все это надо совмещать и там же нужно организовать обмен, например, в бухгалтерскую базу данных.
2. Разнородные системы. Организация расположена только в одном здании, но учет ведется в различных информационных базах разных программных продуктов 1С. В этом случае нужно настроить обмен между решениями различного назначения, где выходные данные одной системы могут быть входными для другой. Этот вариант называется разделением по видам учета. Разделение по видам учета очень полезно для разграничения доступа пользователей, более эффективно используется каждая из систем, рассчитанная под свой вид учета, фильтруется лишняя для другого вида учета информация. Для исключения двойного ввода и удобства учета необходимо организовать обмен информацией и данными между этими системами. Как правило, совместно используются такие системы, как база для ведения бухгалтерского учета, торгово-складская система, система по расчету заработной платы.
3. Обмен данными со сторонними программными решениями, которые используются для автоматизации процессов организации.
4. Распределение нагрузки. Можно клонировать базу данных для различных назначений. Предположим, основную базу мы используем для ввода первичных данных, и ее клон, дополнительную базу, мы можем использовать для формирования отчетности. Основную базу обычно называют Front Office, дополнительную базу называют Back Office и нужно организовать обмен данными между основной и дополнительной базами.
Обмен данными позволяет:
· Исключить двойной ввод одних и тех же документов в разные базы данных;
· Автоматизировать схожие бизнес-процессы;
· Оптимизировать взаимодействие между распределенными подразделениями;
· Организовать синхронизацию данных для работы специалистов разных отделов без интернет-соединения.
Методы обмена данными
Типовые обмены между типовыми конфигурациями
Под типовым обменом подразумевается настройка с помощью типового плана обмена из раздела синхронизации без изменения ключевых параметров регистрации, сопоставления и передачи данных объектов конфигураций.
Планы обмена — это общие объекты конфигурации, которые содержат информацию об узлах, участвующих в обмене данными, и определяют состав данных. В одном прикладном решении может существовать несколько планов обмена, для каждого конкретного случая, например, для обмена данными с филиалами нужен один план обмена, а для обмена данными с торговыми точками – другой.
Один из популярных методов обмена – обмен между «1С:Управление торговлей» и «1С:Бухгалтерия». При выполнении данного обмена, информация о продажах, товарах и клиентах в 1С:УТ передается в «1С:Бухгалтерию» для последующей обработки данных. Это позволяет избежать двойного ввода информации и минимизировать ошибки.
При настройке типового обмена нужно обратить внимание на:
1. Синхронизацию справочников. Элементы справочников могут иметь похожие, но не идентичные наименования и характеристики, следовательно, в случае пропуска этапа сопоставления данных в базе, куда загружается информация, могут возникнуть дубли элементов справочников, регистров, документов. Кроме того, для синхронизации справочников в программе 1С можно использовать такой механизм, как обмен табличными документами. С помощью этого механизма можно экспортировать данные из справочника в файл, а затем импортировать их обратно в другой справочник на другом узле системы. Это позволяет обновлять данные справочника на одном узле и синхронизировать их с данными на других узлах.
2. Установку правил обмена. Правильная настройка обмена данными позволяет обеспечить его эффективность и надежность. Можно использовать встроенный в платформу механизм «Правил обмена». С его помощью можно определить правила обмена данными для каждого объекта программы. В рамках этого механизма можно задать типы событий, при которых будет осуществляться обмен данными, указать источник и приемник данных, задать условия и правила преобразования данных. Также возможен вариант использования инструментов конфигурирования. В рамках конфигурации можно настроить правила обмена данных, указывая их тип, источник и приемник, а также настраивать условия фильтрации и преобразования данных. Инструменты конфигурирования обладают гибкостью и позволяют создавать сложные правила обмена данных, включающие в себя различные проверки и преобразования.
3. Расписание обмена в 1С. Оно определяет, когда и какие данные будут синхронизироваться между различными информационными базами. Для более гибкой настройки расписания обмена в 1С можно использовать условия срабатывания. Например, можно настроить обмен данных только для определенных объектов, измененных после определенной даты или по определенным правилам. Важно также учитывать возможность одновременного обмена с несколькими информационными базами. Для этого необходимо указать идентификатор информационной базы, с которой будет производиться обмен данных. После настройки расписания обмена в 1С необходимо выполнить его активацию. При этом программа 1С будет автоматически запускать обмен данных в указанное время и в указанный период.
Распределенные базы данных 1С (РБД)
Формат обмена с использованием распределенных информационных баз (РИБ) предназначен для обмена данными только с идентичными конфигурациями «1С:Предприятия 8».
В РИБ всегда есть четкая структура управления «главный и подчиненный». РИБ выступает в качестве составляющей технологической платформы, а также отправляет от главного к подчиненному административные сведения баз данных и изменения в конфигурации.
РИБ позволяет объединить несколько информационных баз в единую структуру, что обеспечивает централизованное управление данными и ускоряет процесс обмена информацией между базами.
Основным преимуществом РИБ является возможность обработки данных на разных серверах. Такой подход позволяет снизить нагрузку на сервер, распределить работу по базам данных и повысить общую производительность системы. Кроме того, благодаря сетевому взаимодействию, данные в РИБ могут обновляться в режиме реального времени, что обеспечивает актуальность информации.
Для создания РИБ необходимо наличие специального шлюза, который отвечает за управление обменом данных между информационными базами. Шлюз обеспечивает соединение между базами, контролирует передачу данных и обеспечивает их совместимость.
Для настройки РИБ необходимо определить структуру и параметры обмена данных. Структура обычно состоит из групп объектов данных и правил передачи. Группы объектов данных объединяют схожие объекты, например, справочники или документы, а правила передачи определяют порядок и условия обмена данных.
РИБ поддерживает различные способы обмена данными, такие как механизмы событий и системы управления версиями. Механизмы событий позволяют автоматически запускать процессы обмена данных при наступлении определенных событий, например, изменения данных в определенном документе. Системы управления версиями позволяют контролировать целостность и актуальность данных при их обмене.
Выгрузка-загрузка данных
Для эффективного функционирования информационной системы 1С необходимо наличие метода обмена данными между различными участками системы. Один из самых распространенных методов обмена данных в 1С — это выгрузка-загрузка данных.
Выгрузка-загрузка данных позволяет перемещать информацию между различными информационными базами, а также между разными программными продуктами, использующими стандарты обмена данными в 1С. Этот метод особенно полезен при необходимости обновления базы данных или обмена информацией с другими системами.
Для осуществления выгрузки-загрузки данных в 1С можно использовать различные способы. Один из них — это использование обмена данными в формате XML. XML-файлы позволяют представить информацию в удобном для обработки компьютером виде и являются универсальным форматом обмена данными.
К средствам платформы, используемым для работы с XML-файлами, относятся:
· Средства XML-сериализации, которые нужны для представления данных «1С:Предприятия 8» различных типов в виде данных формата XML, и наоборот. Каждый объект данных «1С:Предприятия 8» можно представить как элемент XML-документа, который, в свою очередь, может иметь подчиненные элементы, реквизиты, табличные части. Мы можем всю базу данных преобразовать в один XML-документ, имеющий вложенную структуру. И передать эту базу в другую пустую конфигурацию, восстановив целиком всю базу данных. Таким образом, XML-сериализация – это возможность перевода данных базы 1С в формат XML или наоборот.
· Средства чтения/записи XML-документов.
1С:Конвертация данных
Обмены между разными конфигурациями одной платформы основаны на универсальном механизме обмена данными и при создании обычно используется инструмент «1С:Конвертация данных».
Универсальный механизм обмена данными позволяет создавать произвольные распределенные системы и, в отличие от РБД, практически не накладывает никаких ограничений на структуру создаваемой системы.
«1С:Конвертация данных» – это программное решение, разработанное компанией 1С для организации конвертации данных между конфигурациями любой структуры и сложности. Программа позволяет автоматизировать процесс конвертации данных, что существенно облегчает работу с данными в различных конфигурациях 1С.
В 2015 фирма «1С» выпустила первую версию конфигурации Конвертация данных, редакция 3.0 (КД3), совершенно новую технологию, не являющуюся логическим продолжением Конвертации данных 2.0/2.1 (КД2). Основным отличием данной технологии явилось использование универсального формата данных EnterpriseData, через который производятся обмены.
Формат EnterpriseData (ED) позволяет использовать технологию обмена не только между конфигурациями на платформе «1С:Предприятие», но и между базой 1С и любой программой, которая может работать с форматом ED, считывать и загружать данные в нужном формате.
В настоящее время формат обмена данными EnterpriseData поддерживается в следующих продуктах:
· «1С:ERP Управление предприятием 2.0»,
· «Бухгалтерия предприятия», редакция 3.0,
· «Бухгалтерия предприятия КОРП», редакция 3.0,
· «Розница», редакция 2.0,
· «Управление торговлей базовая», редакция 11,
· «Управление торговлей», редакция 11,
· «Зарплата и управление персоналом КОРП», редакция 3.
Обмен в формате EnterpriseData осуществляется посредством обмена XML-файлов.
Основное отличие КД3 от КД2 — наличие промежуточного звена обмена данными, а именно формата EnterpriseData:
В КД2 для каждой базы, участвующей в обмене, нужно отдельно создавать правило выгрузки и правило загрузки данных.
В КД3 выгрузка происходит в едином универсальном формате данных, который может использоваться для любой конфигурации получателя.
Следовательно, если нужно разово и быстро выгрузить данные, то лучше использовать КД2. А для регулярного обмена стоит выбрать «1С Конвертацию данных 3.0».
1С:Шина
Среди новейших разработок фирмы 1С широкую популярность завоевала 1С:Шина, продукт для организации эффективного обмена данными как между системами, работающими на платформе «1С:Предприятие», так и с системами на других платформах.
В крупных компаниях ведется обычно несколько видов деятельности, по которым компания взаимодействует с различными электронными площадками, в результате образуется сложная инфраструктура разными протоколами обмена данными и большим количеством электронных потоков. Именно для таких случаев нужна 1С:Шина, основной целью применения которой является обеспечение регулярного и безошибочного обмена данными между системами, что позволяет автоматизировать многие бизнес-процессы, улучшить синхронизацию информации между разделами организации или даже между разными организациями, а также сократить время и усилия на обработку информации.
Основные преимущества 1С:Шины:
· Интеграция приложений: возможность связывания различных приложений и информационных систем. В этом случае 1С:Шина выступит как единый буфер транспорта данных, перенаправляя все обмены через себя.
· Стандартизированный обмен данными: использование стандартных протоколов и форматов данных (например, HTTP, HTTPS, SOAP, REST, XML, JSON) для обмена информацией между системами. Каждая из систем что-то отправляет и получает не непосредственно от других систем, а через 1С:Шину
· Контроль и управление обменами: предоставление инструментов для мониторинга и управления процессами обмена данными, что позволяет отслеживать успешность транзакций и быстро реагировать на возможные проблемы.
· Безопасность: обеспечение безопасности передаваемой информации с использованием различных механизмов шифрования и аутентификации.
1С:Шина может использоваться в самых разных отраслях и сферах деятельности для решения задач автоматизации обмена данными, например, между системой учёта, CRM-системой, системами электронной коммерции, внешними веб-сервисами, системами управления поставками и многими другими.
1С:Шина поставляется в трех вариантах поставок в зависимости от числа работающих пользователей систем, участвующих в обменах, на платформе «1С:Предприятие»: на 100, 500 и неограниченное число пользователей. Пользователи систем не на платформе «1С:Предприятие» в расчет не идут.
Обмены с «не 1С» решениями
Бизнесы все активнее используют возможности электронной коммерции: интернет-магазины, торговые площадки, облачные CRM, социальные сети, системы рассылок. При этом возникает задача интеграции внешних программ с корпоративной системой, чтобы и у директора, и у менеджеров на одном экране были все необходимые данные: заказы через интернет, цифры по конверсии, данные по продажам. списки клиентов и т.д.
Для обмена данными с внешними программами в 1С существуют различные методы:
1. Довольно часто для интеграции с веб-системой на стороне 1С используют стандартный обмен с web-сайтом в формате CommerceML. Эффективность этого варианта проверена на многих проектах.
В типовых конфигурациях есть 2 типа обмена с помощью формата CommerceML:
· Обмен по схеме Поставщик-Покупатель. В этом случае база 1С выступает в качестве Поставщика, а сайт —в качестве Покупателя. Недостаток обмена по данной схеме: загрузка и выгрузка производятся вручную.
· Обмен с web-сайтом 1С-Битрикс после настройки производится автоматически, но заказы необходимо проводить в 1С вручную. Заказ, выгружаемый по такой схеме, не контролируется на наличие остатка на складе.
2. Обмен данными через XML-файлы или CSV-файлы. 1С позволяет автоматически генерировать такие файлы с нужными данными, которые могут быть обработаны внешними программами.
3. Также 1С поддерживает обмен данными через Web-сервисы. Web-сервисы – это инструмент, предназначенный для интеграции с другими информационными платформами, в модуле которого можно описать методы доступные для использования сторонними программами (после публикации на веб-сервере). Используя веб-сервисы, можно с удобством выгружать и загружать сведения из одной информационной базы в другую.
4. Некоторые внешние программы имеют свои собственные API, которые позволяют получать и отправлять данные из 1С. В этом случае, для обмена данными между 1С и внешними программами, необходимо разработать соответствующий интеграционный модуль.
При выборе метода обмена данными необходимо учитывать требования внешних программ, объем данных, частоту обмена и другие факторы. Также важно обеспечить безопасность и целостность данных при передаче между программами.
Существует несколько основных протоколов, которые используются для обмена данными с «не 1С» решениями. Один из самых распространенных методов обмена — протокол HTTP. HTTP (Hypertext Transfer Protocol) является стандартным протоколом обмена данными в Интернете и широко используется для передачи информации между клиентом и сервером. В программе 1С данный протокол применяется для обмена данными с веб-сервисами и другими внешними системами. Кроме того, HTTP-сервисы поддерживают работу с различными форматами данных, включая XML, JSON и SOAP.
Еще одним важным протоколом, используемым в программах 1С, является FTP (File Transfer Protocol), который предназначен для передачи файлов по сети. FTP позволяет программе 1С загружать и скачивать файлы с удаленных серверов, что особенно полезно при обмене большими объемами данных.
Кроме того, для обмена данными в программах 1С можно использовать протокол SMTP (Simple Mail Transfer Protocol), который обеспечивает передачу электронной почты. SMTP позволяет программе 1С отправлять уведомления и отчеты по электронной почте, а также принимать почтовые сообщения с внешних источников.
Для обмена данными с удаленными базами данных в программах 1С часто используется протокол ODBC (Open Database Connectivity). ODBC позволяет программе 1С подключаться к базам данных, используя унифицированный интерфейс, и выполнять операции чтения и записи данных.
Кроме указанных протоколов, в программах 1С также могут использоваться другие методы обмена данными, такие как SOAP (Simple Object Access Protocol), REST (Representational State Transfer) и многие другие. Выбор протокола зависит от конкретных требований проекта и особенностей внешних систем, с которыми необходимо осуществлять обмен данными.
Более подробно о вариантах интеграции и методах обмена данными вы сможете узнать, поступив на обучение на курс аналитика 1С.
© Илья Отькало
Подписывайтесь:
CORS Клуб - сообщество и образовательная среда для специалистов из IT-сферы https://cors.su/klub/
АБП -Сообщество специалистов по автоматизации бизнес-процессов и по использованию ИТ технологий в бизнесе https://t.me/analitiki_1c
Канал руководителей IT компаний и подразделений, CIO, СDO, CDTO https://t.me/cio_channel
CIO. Сообщество IT руководителей https://vk.com/cio_club