сервисы автоматизации документооборота для фармацевтической компании

Разработали систему управления контрагентами и сервис автоматизации согласования заявок для производственной компании. Эти решения помогли сократить время обработки заявок в 5 раз, исключить ошибки и снизить нагрузку на сотрудников на 30%.
Решения для производства У меня похожая задача

Проблема и задачи

Клиент (NDA) активно сотрудничает с поставщиками сырья, логистическими партнерами, подрядчиками по обслуживанию оборудования. В связи с этим ведет учет всех контрагентов, с которыми заключает контракты на сотрудничество. Для учета использовалась устаревшая система управления контрагентами на PHP5. Она обрабатывала данные по двум основным направлениям: контрагенты-дебиторы и контрагенты-кредиторы. Заявки в этой системе использовали данные из системы управления предприятием (SAP) и различных справочников, но сам процесс был неавтоматизированным и требовал значительных трудозатрат.

Основные проблемы:

  • Устаревшая система на PHP5 не обновлялась, работала нестабильно при увеличении количества заявок.
  • Ручное согласование новых контрагентов занимало несколько дней, так как заявки проходили через бухгалтерию, юристов и службу безопасности по электронной почте или в бумажном виде.
  • До 30% рабочего времени сотрудников уходило на ручную обработку заявок, поиск данных в SAP, переписку и контроль статусов.
  • Внутренняя IT-команда работала с .NET, но система была на PHP5, что тормозило внедрение изменений и требовало привлечения подрядчиков.
  • Происходили задержки в согласовании заявок, потери документов из-за большого количества задействованных сотрудников.

Сервис «Дебитор Кредитор» — управление контрагентами и обработкой заявок

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

  • Много ручных операций – заявка создавалась и проверялась вручную, что вело к ошибкам.
  • Долгие согласования – процесс мог затянуться, если один из участников согласования был недоступен.
  • Отсутствие единого центра данных – информация о контрагентах хранилась в разных системах и требовала ручного переноса.

Чтобы решить эти проблемы, мы разработали на .NET отдельный сервис «Дебитор Кредитор», который полностью автоматизировал процесс. Теперь система позволяет быстро создавать, редактировать и согласовывать заявки. Умные фильтры упрощают поиск, а многоуровневое согласование гарантирует четкость и прозрачность процесса.

Как работает сервис

  1. Пользователь создает заявку: указывает данные о контрагенте, при этом система автоматически подсказывает корректные значения.
  2. Система проверяет информацию в SAP: если данные некорректны или контрагент уже существует, пользователь получает уведомление.
  3. Заявка отправляется на согласование: в зависимости от типа контрагента, она проходит через нужные уровни проверки.
  4. Автоматическая транслитерация: если SAP требует данные на латинице, система сама переводит их с кириллицы (через сервис ZWS_ABAP_SERVICE).
  5. Интеграция с SAP и Golden Box: после успешного согласования данные передаются в основные системы компании. Контрагент добавляется в систему без дополнительных действий со стороны пользователя.

Особенности

  • Автоматическая транслитерация. Если в SAP нужны данные на латинице, система сама переводит их с кириллицы.
  • Гибкий поиск и фильтрация. Заявки можно искать по статусу, инициатору, типу контрагента и другим параметрам.
  • Многоуровневая система доступа. Сотрудники видят только те заявки, с которыми им разрешено работать.
  • Прозрачность согласований. Каждый этап виден в системе, а если заявка задерживается, ответственный получает уведомление.

Сервис «Согласование» — автоматизация сложных цепочек согласования заявок

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

Мы разработали сервис «Согласование», который позволил не только автоматизировать согласование заявок на контрагентов, но и автоматизировать другие процессы в компании.

Как работает сервис

  1. Пользователь создаёт заявку в любом сервисе, связанном с системой согласований.
  2. Система автоматически определяет маршрут: кто должен утвердить заявку и в каком порядке.
  3. Согласующие получают уведомления и могут подтвердить или отклонить заявку в один клик.
  4. Если кто-то в отпуске или на больничном, система автоматически передаёт заявку замещающему.
  5. После завершения процесса информация передаётся обратно в исходный сервис, где заявка была создана.
Теперь не нужно привлекать разработчиков для настройки цепочек согласования — все можно сделать через удобный интерфейс. Согласование происходит без лишних задержек и человеческого фактора — система сама адаптируется к ситуации.

Особенности

  • Гибкие цепочки согласований. Можно создавать любое количество этапов, учитывать сложные маршруты с разными условиями. Все это — без участия разработчиков. Интерфейс интуитивный и понятный.
  • Настраиваемые роли пользователей. Система поддерживает профили сотрудников, модераторов, инженеров поддержки и администраторов.
  • Согласование в едином окне. Заявки из разных сервисов обрабатываются в одном месте, без необходимости переключаться между системами.
  • Динамическое построение флоу. Маршруты согласования формируются автоматически, адаптируясь под условия заявки.
  • История заявок. Вся информация о процессах согласования сохраняется, что обеспечивает полную прозрачность.
  • Гибкая система уведомлений. Участники процесса вовремя получают напоминания о необходимости согласования.
  • Интеграция с внешними сервисами. Новый сервис может загружать сценарии согласований из других систем и отправлять им статусы заявок. Данные о пользователях загружаются из MSSQL, что позволяет актуализировать роли и права доступа.

Автоматическая передача согласований замещающим

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

Мы решили эту проблему, реализовав автоматическое назначение замещающих сотрудников.

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


Изначально мы разрабатывали систему для согласования заявок по контрагентам, но быстро поняли, что её потенциал намного больше. Сейчас через этот сервис проходят различные процессы компании:

  • Согласование отпусков и командировок.
  • Запросы на доступ к корпоративным системам.
  • Согласование договоров и финансовых документов.
  • Регистрация новых контрагентов.

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

Результат

  • В 5 раз быстрее. Согласование заявок теперь занимает всего несколько часов вместо нескольких дней.
  • Полная автоматизация согласований. Документы не теряются, не зависают, а система учитывает замещение сотрудников, исключая задержки и утерю документов из-за человеческого фактора.
  • Минус 30% нагрузки. Автоматизация рутинных задач освободила сотрудников для более важных задач.
  • Гибкость и масштабируемость. Архитектура на .NET 6 позволяет легко добавлять новые функции и адаптировать систему под бизнес-задачи.
  • Прозрачность. Все этапы обработки заявок фиксируются в системе, что позволяет контролировать и ускорять процессы.

Стек

.Net 6, ASP.NET Web Api, RESTful API, SOAP, Swagger, MsSQL, Entity Framework Core, Serilog, ReactJs, gitlab ci, powershell, IIS