Настройка подписания электронных документов

Подписание документов производится с помощью сертификатов электронной подписи.

Ведение сертификатов пользователей в системе SAP осуществляется в настроечной таблице /TRL/XDE_V_CERT.

Настройка типа подписания

Для подписания электронных документов может использоваться:

  • Серверное подписание – сертификат для подписания определяется в системе SAP, подписание ЭП производится на сервере ИМ.

  • Локальное подписание – подписание ЭП производится на локальной машине пользователя-подписанта.

Серверное подписание используется, если в настроечной таблице с сертификатами (/TRL/XDE_V_CERT) пользователю присвоен сертификат для соответствующего оператора ЭДО (о настройке сертификата см. раздел Назначение сертификатов пользователям для серверного подписания).

Локальное подписание используется по умолчанию, если в настроечной таблице с сертификатами (/TRL/XDE_V_CERT) пользователю присвоен сертификат с установленным флагом «Локальный сертификат» для соответствующего оператора ЭДО (о настройке сертификата см. раздел Назначение сертификатов пользователям для серверного подписания) или вообще не присвоен сертификат для соответствующего оператора ЭДО.

Таким образом, при использовании серверного типа подписания документов таблица /TRL/XDE_V_CERT должна содержать записи для данного пользователя по данному оператору ЭДО и запись должна иметь выключенный флаг «Локальный сертификат».

Чтобы изменить тип подписания с серверного на локальное, достаточно либо удалить запись с сертификатом пользователя по данному оператору, либо создать новую запись и указать, что это «Локальный сертификат» в соответствующем поле ракурса ведения. После этого подписание документов будет осуществляться локальной подписью.

Для исключения подписей из выборки локальных сертификатов можно использовать кастомный функциональный модуль, который необходимо внести в настройку /TRL/XDE_CUST-SIGN.LOCAL.FM_CHECK_CERT_INFO. Если внутри данного функционального модуля вызвать исключение, то текущий сертификат не попадет на экран выбора подписей. Функциональный модуль для примера /TRL/XDE_EXMPL_CHECK_CERT_INFO.

Назначение сертификатов пользователям для серверного подписания

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

  1. Запустите транзакцию SM30.

    Запуск транзакции ``SM30``
  2. Откроется страница Ведение ракурса таблицы: первый экран. Введите имя таблицы /TRL/XDE_V_CERT и нажмите Ведение.

    Открытие таблицы со списком сертификатов
  3. Откроется страница со списком уже назначенных сертификатов. Для добавления новой записи о сертификате нажмите кнопку Новые записи.

    Переход к добавлению нового сертификата
  4. Откроется страница Новые записи: добавленные/подробно с набором параметров, указанных в таблице.

Таблица 19 Данные о сертификате

Имя поля

Описание

Пользователь

Логин SAP-пользователя

Код оператора ЭД

Уникальный идентификатор оператора ЭДО, присвоенный ФНС, для которого будет использоваться сертификат

БЕ

Балансовая единица, для которой будет использоваться сертификат

Кредитор

Код кредитора в системе SAP

Дебитор

Код дебитора в системе SAP

Сертификат ФизЛица

Флаг, указывающий на то, что данный сертификат принадлежит физическому лицу

Сертификат ЛокПодпис

Флаг, указывающий на то, что данный сертификат содержит данные локального сертификата

Отпечаток серт-та

Отпечаток (номер) сертификата электронной подписи (об извлечении отпечатка подробнее см. раздел Извлечение отпечатка сертификата)

Имя

Значения полей заполнятся автоматически по отпечатку введенного сертификата в момент сохранения

Отчество

Фамилия

ИНН

Должность

Организация

Действует с

Действует по

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

Заполнение полей для нового сертификата

Примечание

Для одного и того же пользователя в системе может быть заведено несколько сертификатов электронных подписей. Например, для отправки через разных операторов ЭДО или для подписания документов разными подписями в разных БЕ.

Заполнение полей при заведении нового сертификата

При заполнении полей следуйте следующим правилам.

  • Поля «Пользователь», «Код оператора ЭД» и «Отпечаток серт-та» являются обязательными для заполнения.

  • Поля «БЕ», «Кредитор», «Дебитор», «Сертификат ФизЛица» и «Сертификат ЛокПодпис» не являются обязательными. При этом в Продукте применяется следующий алгоритм поиска номера сертификата (см. таблицу ниже):

    1. Сначала осуществляется поиск номера сертификата по полному соответствию логина пользователя в SAP-системе, идентификатора ОЭД, кода БЕ, кода кредитора, кода дебитора.

    2. Если на шаге 1 номер сертификата не определен – осуществляется поиск по следующим ограничениям: логин пользователя в SAP-системе, идентификатор ОЭД, код БЕ, код кредитора, пустое значение поля для кода дебитора (для любого дебитора).

    3. Если на шаге 2 номер сертификата не определен – осуществляется поиск по следующим ограничениям: логин пользователя в SAP-системе, идентификатор ОЭД, код БЕ, пустое значение поля для кода кредитора (для любого кредитора), пустое значение поля для кода дебитора (для любого дебитора).

    4. Если на шаге 3 номер сертификата не определен – осуществляется поиск по следующим ограничениям: логин пользователя в SAP-системе, идентификатор ОЭД, пустое значение поля для кода БЕ (для любой БЕ), пустое значение поля для кода кредитора (для любого кредитора), пустое значение поля для кода дебитора (для любого дебитора).

    5. Если на шаге 4 номер сертификата не определен – выдается сообщение об ошибке.

    Таблица 20 Алгоритм поиска сертификата

    Пользователь

    Код оператора ЭД

    БЕ

    Кредитор

    Дебитор

    Шаг 1

    X

    X

    X

    X

    X

    Шаг 2

    X

    X

    X

    X

    0

    Шаг 3

    X

    X

    X

    0

    0

    Шаг 4

    X

    X

    0

    0

    0

    Примечание

    Если сертификат для серверного подписания не был найден - производится поиск по аналогичному алгоритму сертификата с флагом «Локальный сертификат».

  • Значения полей «Имя», «Отчество», «Фамилия», «Должность», «ИНН», «Организация», «Действует с», «Действует по» заполнятся автоматически по отпечатку введенного сертификата в момент сохранения. Однако, нужно учитывать, что заполнение для отпечатка подписи физического лица происходит из таблицы, отличной от обычных сертификатов.

    Автоматическое заполнение полей по отпечатку сертификата

Важно

Модуль xDE для SAP ERP запрашивает информацию о сертификате (имя, фамилия и т.д.) из ИМ. При этом данная информация используется в модуле xDE для SAP ERP при формировании формализованных документов. Поэтому для корректной работы необходимо, чтобы данная информация была получена из ИМ для всех настроенных сертификатов.

Если ИМ в момент сохранения недоступен, информация не будет получена. Чтобы получить ее для ранее сохраненного сертификата, необходимо выделить строку с записью о соответствующем сертификате и нажать кнопку cert_update (Обновить сертификаты).

Обновление сертификата

Извлечение отпечатка сертификата

Чтобы скопировать отпечаток сертификата, выполните следующие действия.

  1. Откройте оснастку Certificates (Сертификаты). Выберите в левой области окна Console Root (Корень консоли), щелкните узел Сертификаты – текущий пользователь, последовательно разверните папки Personal\ Registry\ Certificates (Личные\ Реестр\ Сертификаты) и откройте нужный сертификат из списка сертификатов в правом окне.

    Выбор сертификата
  2. Перейдите на вкладку Details (Состав), выберите параметр Thumbrint (Отпечаток) и скопируйте отобразившиеся в текстовом поле значение.

    Отпечаток сертификата

Примечание

В отпечатке сертификата регистр символов и наличие/отсутствие пробелов значения не имеют.

Просмотр, изменение и удаление сертификатов

Для просмотра или изменения назначенного сертификата, выделите соответствующую запись в таблице /TRL/XDE_V_CERT и нажмите search2.

Просмотр/изменение сертификата

Для перехода между режимами просмотра/изменения используйте кнопку edit2.

Чтобы удалить запись с сертификатом, выделите соответствующую строку в таблице /TRL/XDE_V_CERT и нажмите delete.

Удаление сертификата для серверного подписания

Ведение списка сертификатов физических лиц

Таблица /TRL/XDE_CERT_F является источником тех данных для заполнения информации о подписанте в xml-файле формализованного документа, которые не содержатся в сертификате электронной подписи физического лица, например – должность. Для настройки сертификата выполните следующие действия.

  1. Запустите транзакцию SM30.

    Запуск транзакции ``SM30``
  2. Откроется страница Ведение ракурса таблицы: первый экран. Введите имя таблицы /TRL/XDE_V_CERT и нажмите Ведение.

    Открытие таблицы со списком сертификатов
  3. Для добавления новой записи о сертификате нажмите кнопку Новые записи.

    Переход к добавлению нового сертификата
  4. Откроется страница Новые записи: обзор добавленных с набором параметров, указанных в таблице.

    Таблица 21 Данные о сертификате физического лица

    Имя поля

    Описание

    Отпечаток серт-та

    Уникальный идентификатор (отпечаток) сертификата электронной подписи подписанта

    Код оператора ЭД

    Уникальный идентификатор оператора ЭДО, присвоенный ФНС

    БЕ

    Балансовая единица системы SAP

    Кредитор

    Код кредитора в системе SAP

    Дебитор

    Код дебитора в системе SAP

    Должность

    Наименование должности, которую занимает подписант

    ИНН организации

    ИНН организации, к которой относится подписант

    Название организации

    Наименование организации, к которой относится подписант

  5. В случае если для подписания документов используется сертификат электронной подписи, выпущенный на физическое лицо, необходимо в таблицe /TRL/XDE_V_CERT установить флаг «Сертификат ФизЛица». При этом будут открыты на редактирование поля «Должность», «ИНН», «Организация».

    Заполнение полей для нового сертификата
  6. Заполните поля и нажмите save.

Ведение списка сертификатов локального подписания

Для локального подписания не обязательно каждый раз производить вызов Ole-объекта для получения данных и вывода окна с выбором имеющихся локальных сертификатов. Для добавления локального сертификата в настройки для пользователя нужно выполнить следующие шаги.

  1. Запустите транзакцию SM30.

    Запуск транзакции ``SM30``
  2. Откроется страница Ведение ракурса таблицы: первый экран. Введите имя таблицы /TRL/XDE_V_CERT и нажмите Ведение.

    Открытие таблицы со списком сертификатов
  3. Для добавления новой записи о сертификате нажмите кнопку Новые записи.

    Переход к добавлению нового сертификата
  4. Для поиска отпечатка сертификата локальной подписи необходимо включить флаг «Сертификат ЛокПодпис», затем установить курсор на поле отпечатка и вызвать средство поиска с помощью клавиши F4 либо нажатия левой кнопкой мыши на знак вызова средства поиска. В этом случае будет вызван Ole-объект и появится экран со всеми локальными сертификатами, установленными на вашем рабочем месте.

    Автоматическое заполнение полей по отпечатку сертификата
  5. На появившемся экране выберите подходящий сертификат и дважды кликните по нему левой кнопкой мыши.

    Выбор сертификата для локального подписания
  6. Если хотите посмотреть данные по сертификату - нажмите на клавишу «Enter». Либо нажмите на кнопку сохранения save и данные по сертификату заполнятся автоматически.

Хранение данных сертификатов в таблице

В Продукте предусмотрено хранение данных сертификатов в следующих случаях:

  1. при добавлении новых сертификатов через ракурс ведения /TRL/XDE_V_CERT;

  2. при получении данных сертификата вместе с входящим документом;

  3. при выборе локального сертификата через OLE-объект.

Для этого существует таблица /TRL/XDE_CERTINF.

Таблица 22 Описание полей таблицы /TRL/XDE_CERTINF

Поле

Ключ

Тип

Описание

MANDT

X

MANDT

Мандант

THUMBPRINT

X

/TRL/XDE_ED_THUMBPRINTANDT

Отпечаток сертификата

FNAME

/TRL/XDE_ED_NAME_FIRST

Имя

NAME

/TRL/XDE_ED_NAME_MID

Отчество

SNAME

/TRL/XDE_ED_NAME_LAST

Фамилия

POSIT

/TRL/XDE_ED_POSIT

Должность

INNUL

/TRL/XDE_ED_INNUL

ИНН юрлица

INN_FL

/TRL/XDE_ED_INNFL

ИНН физического лица

ORGANIZAT_NAME

/TRL/XDE_ED_ORG_NAME

Название организации

SNILS

/TRL/XDE_ED_SNILS

Cтраховой номер индивидуального лицевого счета

EMAIL

/TRL/XDE_ED_EMAIL

Адрес электронной почты

DEPARTMENT

/TRL/XDE_ED_DEPARTMENT

Подразделение

CITY

/TRL/XDE_ED_CITY

Название города

STREET

/TRL/XDE_ED_STREET

Название улицы

OGRN

/TRL/XDE_ED_OGRN

Основной государственный регистрационный номер

OGRN_IP

/TRL/XDE_ED_OGRNIP

ОГРН индивидуального предпринимателя

REGION

/TRL/XDE_ED_REGION

Название региона

LOCALE

/TRL/XDE_ED_LOCALE

Язык

RNSFSS

/TRL/XDE_ED_RNSFSS

Регистрационный номер страхователя (ФСС)

VALIDFROM

/TRL/XDE_ED_VALIDFROM

Дата выпуска сертификата

VALIDTO

/TRL/XDE_ED_VALIDTO

Дата окончания действия сертификата

SERIALNUMBER

/TRL/XDE_ED_SERIALNUMBER

Серийный номер

SIGN_ALGORITHM

/TRL/XDE_ED_SIGNATURE_ALGORITH

Алгоритм подписи

KEY_ALGORITHM

/TRL/XDE_ED_KEY_ALGORITHM

Алгоритм ключа

VERSION

/TRL/XDE_ED_VERSION

Версия

ISSUER_SIMPLE_NAME

/TRL/XDE_ED_ISSUER_SIMPLE_NAME

Имя выдавшего сертификат

CERTIFICATE_TYPE

/TRL/XDE_ED_CERTIFICATE_TYPE

Тип сертификата

Важно

Следует обратить внимание, что ИНН юридического лица и ИНН физического лица попадают в разные поля. Кроме того, для сертификатов индивидуальных предпринимателей ОГРН попадает в отдельное поле OGRN_IP.