Автоматизация горнодобывающей компании: когда каждый уголек на счету

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

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

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

coal.png

Задача сервиса

Решение должно было систематизировать и автоматизировать внесение данных из отчетов о выгрузках в учетную систему клиента. Отчеты из себя представляют Excel файлы с произвольной структурой, а в качестве учетной системы используется Microsoft Dynamics AX (ERP также известная как Axapta или Dynamics 365). 

Для ускорения разработки при реализации мы использовали 1С-Битрикс: Управление сайтом как framework платформу.

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

scheme.png

Подробнее по каждому из этапов.

Обработка почты - IMAP

Все отчеты в систему поступают через почту, в качестве вложений к письмам. Заранее был выделен пул email сотрудников клиента, которые будут получать письма с данными. На стороне сервиса, точнее веб-приложения, реализованы настройки обработки и фильтрации писем - СПАМ и флуд никому не нужны! Система позволяет при необходимости добавлять сколько угодно email адресов для сканирования.

Обработка отчетов – Excel

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

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

Отправка отчетов в учетную систему

После обработки входящих Excel файлов данные из них преобразуются в XML формат актов для Microsoft Dynamics и через промежуточный SOAP сервис передаются в ERP.

На этом цикл обработки данных заканчивается.

Интерфейсы

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

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

Итого

Что мы имеет в сухом остатке: автономное веб-приложение на 1С-Битрикс, которое преобразует входящий поток данных в виде email писем, фильтрует его и подтягивает только необходимые данные. Далее преобразует полученные данные в необходимый для ERP формат и отправляет их в учетную систему. Дополнительно к этому есть интерфейс для редактирования данных и контроля по всей цепочке процесса с подробным логированием каждого этапа работы системы.

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

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

Теперь вы знаете к кому обратиться, при нестандартной задаче по автоматизации бизнес-процесса в компании :)