Типичной является ситуация, когда на предприятиях среднего и крупного бизнеса развернуто несколько информационных систем. Если между ними не налажен обмен данными, это приводит не только к дублированию ввода данных и возрастанию трудозатрат в разы, но и к неизбежным поискам «концов» при выявлении несоответствий. Поэтому для эффективной работы компании нужно организовать синхронизацию данных между разными информационными системами. В статье мы рассмотрим расхожую ситуацию: обмен данными между современными и устаревшими версиями 1С, а также решениями других производителей.
Можно выделить следующие этапы процесса переноса данных
В зависимости от исходной и адресной программ, а также выбранного инструмента переноса, количество этапов может различаться.
Существует ряд механизмов для обмена данными между 1С и сторонними приложениями: web-сервисы, http-сервисы, REST-интерфейс, форматы XML, EnterpriseData, JSON. Все они предназначены для того, чтобы подготовить в 1С необходимые данные и передать их стороннему приложению, либо наоборот – запросить требуемые данные у внешнего приложения, получить их и передать для обработки на основании внутренних алгоритмов продукта 1С.
Помимо внешней обработки, существует возможность ручной обработки данных. Это может показаться «прошлым веком», но не советуем торопиться: важно предварительно осуществить анализ, какой из вариантов наиболее быстрый и экономичный. Бывает, что внешняя обработка настраивается настолько долго, что прибегать к ее помощи нецелесообразно.
Если для «старой» и «новой» программ нет типовых инструментов переноса данных, а осуществлять перенос вручную не хочется, инструмент можно разработать в индивидуальном порядке.
Перенос не всех типов данных возможен или рационален. Например, сложно переносить документы, счета, проводки, сальдовые ведомости. К данным, которые не подлежат переносу, относятся:
Если у вас есть сомнения насчет возможности переноса интересующего вас типа данных, рекомендуем обратиться к консультанту: это сможет сберечь время и деньги.
Рассмотрим одну из самых частых задач в контексте переноса данных из старых программ – синхронизацию 1С:Бухгалтерия 7.7 и 1С:Бухгалтерия 8
Приведем пошаговый алгоритм переноса. Предварительно нужно проверить исходную информационную базу на предмет отсутствия открытых сеансов.
Только справочники;
Остатки на начало года;
Остатки на начало года и обороты за период.
Если перенос данных прошёл успешно, выводится соответствующее сообщение.
Пошагово рассмотрим алгоритм типовой загрузки из внешнего файла Excel в 1С 8.3:
Вышеописанный способ подходит не для всех типов документов – к примеру, для счетов потребуется дополнительная внешняя обработка, после которой у файла появится расширение epf. В этом формате зафиксированы правила, какие данные и из какого столбца следует загружать.
Важно, чтобы программа Excel была обновлена до последней версии. Во время загрузки обработанного файла xls-документ должен был закрыт.
Открыть обработанный файл можно либо через меню Файл – Открыть, либо путем подключения внешней обработки. Второй способ производится по следующему сценарию:
Чтобы загрузить файл определенного формата, нужно в программе 1С создать внешнюю обработку, нажав кнопку «Файл» и выбрав пункт «Новый», а далее – «Внешняя обработка». Откроется окно формы обработки, где необходимо ввести программный код подключения к Excel с помощью COM-соединения. Для корректной загрузки в настройках требуется указать столбец в табличном документе и соответствующий ему элемент таблицы в файле обработки.
XML-формат является универсальным и используется как во всех конфигурациях 1С, так и в большинстве программных продуктов, независимо от структуры базы данных. Его применяют при обмене с удаленными подразделениями и сайтами, при загрузке документов из банков и от поставщиков, при выгрузке данных в отчетные органы и т. д.
JSON – текстовый формат обмена, применяемый в веб-приложениях и поддерживаемый всеми браузерами. Этот формат является более лаконичным, в 1С его используют для интеграции с внешними приложениями.
Благодаря кроссплатформенности, REST-интерфейс – это самое удобное решение для интеграции 1С с внешними системами. Его используют в следующих случаях:
Для публикации необходим веб-сервер.
Формат позволяет описать объект базы и содержит информацию об изменении или удалении объекта. Обмен осуществляется посредством обмена XML-файлов. В процессе обмена формируются файлы-запросы и файлы-ответы. Формат ориентирован на логику 1С, прост в использовании и не ограничен никакими требованиями к структуре систем.
HTTP-сервисы востребованы чаще всего при двустороннем обмене данными 1С с интернет-магазином. Среди преимуществ можно выделить простоту создания клиентского приложения и уменьшение объема передаваемых данных. Для HTTP-сервисов требуется меньшая, по сравнению с другими механизмами, потребность в вычислительных мощностях. С ними можно работать с мобильных устройств, но в любом случае необходима установка веб-сервера (Apache или IIS).
Веб-сервисы работают так: если данные в процессе обмена в режиме реального времени меняются в одной из систем, запускается обращение к веб-сервису. Пакет с измененными данными передается в другую систему. Нет необходимости предоставлять внешнему приложению доступ ко всей базе. Приложение получает только доступ к набору функций 1С.
Мы рассмотрели механизмы и алгоритмы синхронизации данных между внедренной в компании системой 1С и ее более ранними версиями, а также MS Excel. Платформа 1С предлагает удобные механизмы обмена данными, рассчитанные на различные бизнес-потребности, масштабы компаний-пользователей и навыки сопровождающих перенос данных ИТ-специалистов. Интеграция различных информационных систем на предприятии критически важна для эффективной и оперативной работы, для минимизации рисков финансовых потерь.