Как стать автором
Обновить
27.42

Как мы внедрили и автоматизировали ЭДО Fix Price в Казахстане с помощью 1С

Уровень сложности Простой
Время на прочтение 9 мин
Количество просмотров 1.1K

Формировать, рассылать и контролировать подписание кадровых документов вручную не слишком удобно даже в маленькой фирме. Что уж говорить про компанию, в которой работает более полутора тысяч человек. Меня зовут Михаил Егоров, я работаю на проектах Fix Price в качестве программиста-консультанта. Расскажу вам о том, как мы упростили работу нашим кадровикам и автоматизировали эти процессы в сети Fix Price в Казахстане. А перед этим скажу, что код, связывающий API оператора и нашу 1С, был написан мною с нуля. При этом на момент внедрения (апрель 2022 года) разработок и примеров работы в открытом доступе не было.

От ручного труда к автоматизации

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

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

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

Для решения этой задачи мы получили SDK от государственного регулятора (НУЦ — Национальный Удостоверяющий Центр) и API коммерческих сервисов ЭДО (в частности, «Договор24» или Д24) для связи с их серверами. На этих сервисах люди могут создавать рабочие пространства и обмениваться документами внутри компании. Сделано это довольно удобно: в рабочем пространстве сотрудника собраны все подписанные им документы. Мы также используем эти сайты, чтобы наши работники в Казахстане могли туда заходить и подписывать электронные документы. А для связи API сервисов с 1С мы разработали собственный модуль.

Задачи и вводные

Главная проблема была в том, что в типовом 1С ЗУП для Казахстана нет программных инструментов для работы с НУЦ и Д24. Поэтому пришлось создавать всё с нуля, а также разрабатывать и схему учета и контроля отправленных документов. Основные задачи были следующие:

  • создать интерфейсы для работы с НУЦ и «Договор24»;

  • создать схему отправки, подписания и контроля подписания документов.

Чтобы пригласить работника подписать документ, необходимо, чтобы у него был указан адрес электронной почты. Желательно личной, поскольку к этому адресу привязывается документ на сервисе Д24, где есть возможность указывать несколько актуальных адресов почты для одного кабинета. Если же привязать документ к корпоративной почте, то после увольнения у сотрудника пропадет доступ к нему. Именно поэтому в справочнике «Сотрудники» адрес для ЭДО выделен в отдельный реквизит. Если же у сотрудника не указан адрес почты для ЭДО, то считается, что работник не участвует в процесс подписания документов с ЭЦП.

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

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

Интерфейсы отправки

Общая форма «Печать документов» обрабатывает все типовые вызовы отправки на печать, в том числе и внешние печатные формы. При открытии здесь определяется принадлежность вызываемой печатной формы к процессу. В случае необходимости на панель добавляются команды процесса ЭДО. Команда «Отправить» позволяет отправить документ на подписание. Таким образом отправляются примерно 80% используемых печатных форм.

Документы с множественной отправкой

В случае, если есть документы, содержащие список сотрудников (например «Изменение плановых начислений»), каждому работнику отправляется персональный пакет документов (дополнительные соглашения и т.п.). При этом не все сотрудники имеют адреса почты для ЭДО. Для таких случаев отправка документов в ЭДО описана отдельно.

Процесс пользователя

  1. Пользователь создает документ в 1С.

  2. Формирует печатную форму.

  3. Отправляет печатную форму на подписание.

  4. Отправленный документ попадает в список контроля ЭДО.

  5. Регулярно опрашивается сервис Д24 и принимается информация о подписании документов.

  6. Подписанные документы скачиваются в виде ZIP контейнера и помещаются в файловое хранилище.

Контроль статусов документов

Все отправленные на подписание ЭЦП документы получают статус ЭДО. Этот статус показывает, на каком этапе находится подписание документа: ожидание, подписан, нет приглашения и т.д.

Обновление происходит в ЭДО.Документы. 1С обращается к сервису Д24, получает список документов с данными о подписании, анализирует и на основании этого формирует данные в 1С. Владельцы сервиса предоставляют API, где есть все необходимые команды для взаимодействия с Д24.

Этапы взаимодействия с Д24 следующие:

  1. Отправка документа в Д24.

  2. Подписание от имени организации.

  3. Приглашение сотрудника к подписанию.

  4. Ожидание подписания документа сотрудником.

  5. Скачивание подписанного документа и сохранение в файловом хранилище.

Использование НУЦ

Для получения SDK для работы с НУЦ нужно зайти на страницу https://pki.gov.kz/developers/ , и в соответствии с рекомендациями отправить заявку в НУЦ. НУЦ предоставляет SDK с описанием и примерами на нескольких языках программирования.

К НУЦ мы обращаемся в следующих случаях:

  1. Получение данных ЭЦП. Содержит информацию о владельце, сроке действия и ИИН (ИИН — Индивидуальный Идентификационный Номер).

  2. Проверка актуальности ЭЦП (не отозвана ли она).

  3. Подписание документа.

  4. Верификация подписания.

Процесс отправки документа из 1С выглядит так:

  1. Отправляем документ в Д24. В ответ получаем уникальный ID документа.

  2. Отправляем в Д24 приглашение нашей организации к подписанию, включая ID документа, email организации. Получаем уникальный номер приглашения.

  3. Скачиваем с Д24 XML представление документа, отправляем ID документа. Получаем строку, содержащую XML-представление документа.

  4. Отправляем полученную XML строку в НУЦ для подписания, ЭЦП и пароль ЭЦП. Получаем результат с подписанной XML строкой.

  5. Отправляем данные в Д24: ID документа, ID приглашения и подписанную строку XML. Получаем ответ — ОК.

Данные о состоянии отправленного документа

После отправки документа в Д24 в системе необходимо сохранить связь данных 1С и Д24. Идентификатор документа в Д24 — GUID, который присваивается при загрузке документа. В системе 1С создан регистр сведений для хранения привязки документа и его GUID.

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

Обработка фп.ЭДО.Документы

Обработка работает с регистром сведений фп_ЭДО_Документы. На рабочем столе оператора ЭДО представлены списки документов, которые ожидают подписания и завершения. Также есть статусы и списки завершенных. Существуют различные команды для работы со списком отправленных документов: например, отправить приглашение повторно, отозвать приглашение, удалить документ.

Микросервис для подписания с ЭЦП

Предусматривалось использование НУЦ для подписания файлов с ЭЦП не только в кадровом учете, но и в других областях документооборота в компании. Поэтому для подписания был создана отдельная система FP_ECP на платформе 1С, которая содержала команды для обращения в НУЦ, а также HTTP-сервис для получения данных и отправки результата.

При необходимости подписания документа от имени организации запрос из системы 1С ЗУП отправляется в FP_ECP. После обращения в НУЦ сервис FP_ECP возвращает подписанный документ. В настоящее время рассматривается вариант использования сервиса FP_ECP для подписания документов в SAP.

Регистр сведений фп.Документы ЭДО

Это регистр сведений для хранения данных об отправленных документах, который позволяет учесть все варианты отправки документов, в том числе:

  • В одном документе может быть табличная часть со списком сотрудников, для каждого из которых нужно отправить отдельный документ. Документ в 1С один, а отправленных печатных документов для подписания несколько — по количеству сотрудников.

  • Один документ может является источником для нескольких видов печатных документов: например, для приема на работу. В этом случае сотрудник один, а документов целый пакет, при необходимости они раскидываются по разным значениям измерения Вид документа ЭДО.

Главный ресурс регистра — GUID документа, то есть ID документа в системе Договор24. Он формируется сервисом Д24 при первоначальной отправке документа и является связующим значением записи в 1С и файлом на Д24. С помощью GUID производятся все дальнейшие действия с этим объектом.

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

Справочник фп.Виды документов ЭДО

Этот справочник призван разграничить виды отправляемых документов. Используя его настройки, можно описать 90% вариантов отправки документов.

В разделе Печатная форма нужно указать ссылку на справочник «Дополнительные отчеты и обработки» и выбрать Идентификатор команды. Типовая печать всех документов происходит через общую форму Печать документов. В случае если используется внешняя печатная форма, при открытии формы Печать документов с помощью информации из справочника фп.Виды документов ЭДО определяется необходимость/возможность отправки документа в сервис Д24 для подписания. 

Доработанная общая форма Печать документов:

Таким образом можно быстро настраивать отправку в ЭДО с ЭЦП для любой внешней печатной формы, что покрывает 90% возможных вариантов в кадровом документообороте.

Универсальный документ фп.Заявление

В кадровом учете инициатором документа не всегда выступает организация. Например, заявления изначально исходят от сотрудника. Чтобы реализовать возможность подписания таких заявлений с ЭЦП, было создано решение фп.Заявление.

  • Сотрудник составляет заявление: пишет от руки, присылает электронное письмо или сообщение.

  • Работник кадровой службы создает в 1С документ Заявление, инициирует процесс подписания, отправляет на Договор24 и приглашает к подписанию сотрудника.

  • При необходимости приглашаются к подписанию и другие сотрудники для согласования.

Таким образом с сотрудника снимается обязанность самому регистрировать документ в Д24 (это платная услуга), так как за сотрудника этот документ регистрирует компания. А поскольку видов заявлений множество, был создан универсальный документ фп.Заявление, а также справочник фп.Виды заявлений, который хранит настройки для формирования документа и печатной формы.

Это форма вида заявления, в котором в режиме 1С Предприятия можно настроить печатные формы и параметры для ввода.

На вкладке Запрос вводится текст запроса для заполнения макета печатной формы:

На вкладке Виды документов на основании можно описать модуль для создания документа на основании заявления:

Эти настройки применяются, когда в документе фп.Заявление выбирается нужный вид заявления:

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

Первые результаты

Развитие системы ЭДО началось с кадровых документов по приему на работу и переводу, а затем мы расширили ее и на другие документы (табели, заявления от сотрудников и т.д.). Также было подключено СМС-информирование о поступивших документах. Разумеется, внедрение системы ЭДО позволило существенно снизить нагрузку на кадровую службу компании.

Свежий пример: при недавнем изменении штатного расписания данные 1200 сотрудников Fix Price в Казахстане были обработаны всего за час. Такое время ушло на создание и рассылку дополнительных соглашений, причем задействован для этой задачи был всего один сотрудник кадровой службы компании. И всё это благодаря разработанному модулю для 1С ЗУП.

Теперь даже обновление статусов (отправлен, подписан, ожидает подписания и т.д.) происходит автоматически. Также упростилось составление и подписание табелей, что нужно обязательно делать по закону. Все табели уже составляются и подписываются в электронном виде, так как ЭЦП имеет равную силу с бумажной подписью. А еще мы сделали автоматические отчеты по магазинам — теперь директора тех магазинов, в которых работники еще не подписали документы, получают уведомления.

Этим заинтересовалась и наша бухгалтерия — сотрудники попросили реализовать возможность подписания бухгалтерских документов непосредственно из SAP. И это вскоре должно быть сделано, поскольку модуль подписания был изначально выделен в отдельный микросервис, а API сервиса позволяет подписывать любые электронные документы и любой подписью.

Чего мы добились

В результате нам удалось:

  1. Исключить ручную передачу документов оператору ЭДО: теперь это происходит автоматически через 1С.

  2. Исключить человеческий фактор при формировании и отправке документов.

  3. Полностью контролировать статусы подписания документов со стороны работодателя и работников, не выходя из 1С.

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

  5. Упростить подписание документов работниками.

    С удовольствием отвечу на вопросы!

Теги:
Хабы:
+6
Комментарии 2
Комментарии Комментарии 2

Публикации

Информация

Сайт
tech.fix-price.com
Дата регистрации
Численность
свыше 10 000 человек
Местоположение
Россия