«Сбои разные «нужны», сбои разные важны»…
Очередная ситуация, когда количество переходит в качество и пример «разрешения» данных ситуаций. В процессе перемещения электронных документов от платформы к учетной системы возможны и происходят сбои, потери документов в движении. Когда документов было мало, то сбоев было мало и они отслеживались в ручную, но их стало очень много… Мне была поставлена задача придумать и сделать автоматизированный контроль утери информации?
Вспомним цепочку прохождения документов в системе EDI:
Входящие документы – заказы, подтверждение отгрузки. Документ с Web платформы --> перемещается на FTP сервер --> программа интеграции забирает документ с FTP, сохраняя его копию в архиве FTP и информацию о документе во внутренних таблицах, перемещает его в каталог программы обработки заказов zLeraOrd --> создаётся автозаказ в учетной системе --> заказ в УС дорабатывается или вообще может быть удален.
Исходящие документы – подтверждение заказа, уведомление об отгрузке, УПД. Задание на создание и отправку документов задаётся в учетной системе --> программа интеграции создаёт электронный документ и сохраняет его на FTP сервере, оставляя пометку об отправке в своей БД --> Web платформа забирает документ с FTP и проводит с ним дальнейшие работы.
В программах, созданных мной уже была вложена техника «запоминания» совершенных «деяний» в её БД и файловой системе, т.е. сам себя, в теории, мог проверить. Созвоны с ТП, изучение платформы привели к обнаружению в ней отчета по факту наличия и статусу любых видов документов на платформе. В этом отчете, присылаемом на e-mail в виде какого-то корявого XLS файла – внешние программы не понимали его тип было очень много мусорной информации, но были и некоторые атрибуты: исходные дата и номер заказа, UUID хвост файла, дата и номер документа из УС, где их уникальность жестко контролируется.
Далее «дело техники»… Создан режим верификации по анализу прохождения документов разных типов через цепочку документооборота и построение отчета по «выпадению» документов на разных этапах, где решаются задачи:
Для входящих документов. Правильно, если документ с платформе будет соответствовать документу в учетной системе, а если нет, то отражены этапы, где от «потерялся», т.е. с кем из специалистов нужно решать проблемы. Уже находилось: С Web не попал на FTP; операторы удалили заказ из УС, через программу интеграции заказ прошел, а zLeraOrd его забраковала, но операторы не обратили внимание на это демонстрирующееся событии.
Для исходящих. Правильно, если полностью, отправленные из УС документы будут доставлены получателю. Находилось только – из УС не выгружалось, а на платформу внесено в ручном режиме.