СБИС Сапёр — различия между версиями

Материал из razgovorov.ru
Перейти к: навигация, поиск
(Порядок установки и настройки модуля)
(Доработка программы печати)
Строка 430: Строка 430:
 
В простейшем случае доработка сводится к добавлению к в программу печати (или её копию) вызова метода ИМ который завершает программу печати после формирования электронного документа.
 
В простейшем случае доработка сводится к добавлению к в программу печати (или её копию) вызова метода ИМ который завершает программу печати после формирования электронного документа.
  
Пример вызова ИМ для формирования электронного документа. Данный код необходимо добавить непосредственно перед печатью (вызовом формуляра).
+
Пример вызова ИМ для формирования электронного документа. Данный код необходимо добавить непосредственно перед вызовом формуляра.
  
 
<source lang=ABAP>
 
<source lang=ABAP>
Строка 444: Строка 444:
 
   ENDIF.
 
   ENDIF.
 
</source>
 
</source>
 +
 +
С интеграционным модулем поставляются примеры стандартных программ печати в которые добавлен вызов ИМ.
  
 
В ряде случаев этого может быть не достаточно.  
 
В ряде случаев этого может быть не достаточно.  

Версия 10:29, 5 февраля 2016

Содержание

Общие сведения

Назначение документа

Документ представляет собой техническое описание порядка установки, настройки и расширения стандартного функционала SBIS for SAP.

Область применения документа

Настоящий документ предназначен для описания технических аспектов внедрения продукта SBIS for SAP. Документ может использоваться для постановки задач техническим специалистам по внедрению и расширению функциональности Системы.

Общее назначение системы

Система предназначена для автоматизации процессов обмена электронными юридически значимыми документами.

Глоссарий

Настоящий раздел содержит полный список сокращений и определений, используемых в документе.

  • Служебные документы -Файлы, предусмотренные регламентом документооборота, содержащие описание процесса отправки и получения.
  • Формализованный документ - Структурированный документ (XML-формат)
  • Неформализованный документ - Неструктурированный документ (произвольный файл, например, в формате PDF)
  • ЭДО - Электронный документооборот
  • Документ / Вложение - Документ, полученный от контрагента или направляемый ему, отражающий факты проведения финансовых операций с контрагентом, выполнения каких-либо работ или оказания услуг, поставки каких либо * ТМЦ (например, Счёт-фактура, Накладная Торг-12, Акт приёма/сдачи работ и т.п.)
  • Пакет документов - Комплект Документов, полученных от контрагента или направляемых ему, необходимых для проведения финансовой операции с контрагентом.
  • ЭП Электронная подпись - реквизит электронного документа, предназначенный для защиты данного электронного документа от подделки, полученный в результате криптографического преобразования информации с использованием закрытого ключа электронной цифровой подписи и позволяющий идентифицировать владельца сертификата ключа подписи, а также установить отсутствие искажения информации в электронном документе
  • Техническая ЭП - ЭП, которая применяется для подписания технических документов (технологических уведомлений) в процессе обмена через ОЭД.
  • ИМ, IM Интеграционный модуль (Integration Module) - компонент Системы, отвечающий за обмен сообщениями между SAP-системой Заказчика и ОЭД
  • БЕ - Код балансовой единицы в системе SAP
  • ГФ - Группа функций, объект системы SAP
  • ФМ - Функциональный модуль, объект системы SAP
  • БО - Бизнес-объект SAP
  • СЭ - Селекционный экран, экран выбора данных

Общая характеристика продукта

Архитектура системы

Схема логической и программной архитектуры

В настоящем разделе приведена схема взаимодействия основных компонентов, дано краткое описание решения. На схеме отражены ключевые программные компоненты и логические подсистемы решения.

SBIS for SAP

Программный компонент, предназначен для интеграции учётной системы SAP ERP с СБИС. Условно SBIS for SAP (ИМ). ИМ имеет несколько пользовательских интерфейсов:

  • СБИС - пользователь работает с электронными документами в личном кабинете СБИС.
  • SAP GUI - стандартный интерфейс SAP, пользователь работает с электронными документами в стандартном интерфейсе SAP (в разработке)

SBIS Plugin

Объект для обеспечения функционала личного кабинет СБИС (предназначен для генерации стандартизованной электронной цифровой подписи, которая базируется на формате PKCS#7, вывода информационных уведомлений о поступивших документах / заданиях, операций по ручной загрузке и выгрузке документов). Объект устанавливается на рабочих местах пользователей. Интеграция с SAP системой выполнена посредством SAP NET Connector 3, входит в состав компонентов ядра продукта.

Для работы требуется операционная система Windows XP SP3 и выше, а также NET Framework 2.0 или 4.0. Не поддерживается работа с NET Framework 4.0 Client profile.

SBIS SDK

Объект предназначен для обмена данными с API sbis.ru, а также генерации стандартизованной электронной цифровой подписи, которая базируется на формате PKCS#7 . Объект устанавливается на рабочих местах пользователей. Интеграция с SAP системой выполнена посредством технологии OLE2, входит в состав компонентов ядра продукта.

Стандартная поставка

В стандарте продукта SBIS for SAP поставляется следующий набор пакетов:

  • /SBIS/CORE – родительский пакет, содержит функционал необходимый для отправки документов через RFC. Не содержит GUI.
    • /SBIS/EJOURNAL - элементы отвечающие за работу через журнал электронных документов SAP;

Стандартная поставка позволяет настроить выгрузку из SAP любых пакетов документов в XML формате. Для генерации XML используются либо программы печати, либо стандартный модуль электронных документов разработанный SAP СНГ (на текущий момент он позволяет формировать фактуру, накладную и акт аналогичным способом - через программу печати).

Правила ведения разработки на проекте

Настоящий раздел содержит общие рекомендации к ведению разработки на проектах внедрения.

Именование объектов словаря

Настоящий раздел описывает концепцию наименований объектов словаря на стороне SAP системы.

Таблица 3 Именование объектов словаря

Объект репозитория Длина имени Маска
Домены 30 /SBIS/DM_[<ff>][_<XXXXXXXX>]
Элементы данных 30 /SBIS/ED_[<ff>][_<XXXXXXXX>]
Структуры 30 /SBIS/S_[<ff>][_<XXXXXXXX>]
Типы таблиц 30 /SBIS/T_[<ff>][_<XXXXXXXX>]
Таблицы БД 16 /SBIS/[<ff>][<XXXXXXXX>]

/SBIS/[<ff>][<XXXXXXXX>]T - для текстовых таблиц

Ракурсы 16 /SBIS/V_[<ff>][<XXXXXXXX>]
Search-Help 30 /SBIS/SH_[<ff>][_<XXXXXXXX>]
Объект блокировок 16 /SBIS/[<ff>][<XXXXXXXX>]
Группа функций 26 /SBIS/GF_[<ff>][_<XXXXXXXX>]
Функциональные Модули 30 /SBIS/FM_ [<ff>][_<XXXXXXXX>]

/SBIS/RFC_ [<ff>][_<XXXXXXXX>]

Программы, include 40 /SBIS/[<ff>][_<XXXXXXXX>]
Пулы модулей 40 /SBIS/[<ff>][_<XXXXXXXX>]
Классы 30 /SBIS/CL_[<ff>][_<XXXXXXXX>]
Интерфейсы 30 /SBIS/IF_[<ff>][_<XXXXXXXX>]
Транзакции 20 /SBIS/[<ff>][<XXXXXXXX>]
Smartforms/SAPScript 30 /SBIS/[<ff>][_<XXXXXXXX>]
Классы сообщений 20 /SBIS/[<ff>][<XXXXXXXX>]
Классы разработок 30 /SBIS/[<ff>][_<XXXXXXXX>]
Реализация BAdi (новый/старый) 30/20 /SBIS/[<имя определения BAdi>]
Проекты SAP-расширений 8 /SBIS/[<XXXXXXXX>]
SET/GET-параметры 20 /SBIS/[<ff>][<XXXXXXXX>]
Append – структуры в стандартных таблицах 30 /SBIS/A_[<ff>][_<XXXXXXXX>]
Поля в append-структурах стандартных таблиц 15 Z[<XXXXXXXX>]
Меню областей 30 /SBIS/[<ff>][_<XXXXXXXX>]
Объект полномочий 30 /SBIS/[<ff>][_<XXXXXXXX>]

Для именования остальных объектов репозитария используется маска формирования имени:

<ZZ>SBIS_[<ff>]_[<XXXXXXXX>] , где:

  • <ZZ> - буква Z (или две буквы Z, например, для полей в append - структурах стандартных таблиц) в соответствии с соглашением о пространстве имен для клиента;
  • <ff> - дополнительный квалификатор функциональности, опускается, в случае если объект принадлежит пакету ZCOMMON;
  • <XXXXXXXX> - произвольный набор символов, возможно, но не обязательно, как-то отражающий физический или производственный смысл объекта на английском языке. Возможно использование цифр для отражения следующей логики: 1 - создание, 2 - редактирование, 3 – удаление;

Объекты, не попадающие под требование, должны именоваться исходя из здравого смысла.

Именование переменных кода

Настоящий раздел описывает систему именования объектов и переменных программ продукта на стороне SAP. Таблица 4 Именование объектов и переменных программ

Объект Префикс Объект Префикс Объект Префикс Объект Префикс Объект Префикс
Class cl_
Parameter p_
Push Button pb_ Radio Button rb_ Select Option so_
Table type tt_
Type ty_
Global Constant gc_ Local Constant lc_
Global Field Symbol gfs_ Local Field Symbol lfs_
Global Structure gs_ Local Structure ls_ Importing Structure is_ Changing Structure cs_ Exporting Structure es_
Global Variable gv_ Local Variable lv_ Importing Variable iv_ Changing Variable cv_ Exporting Variable ev_
Global Internal Table gt_ Local Internal Table lt_ Importing Internal Table it_ Changing Internal Table ct_ Exporting Internal Table et_
Global Range gt_rng_ Local Range lt_rng_
Global Reference gr_ Local Reference lr_

Языковая поддержка

Текущая версия системы должна поддерживать (работать без дополнительной настройки) следующие языки: • Русский.

Пользовательский интерфейс и кастомизация

Интерфейсы

ГФ /SBIS/RFC – Набор RFC функций

Общее назначение

Настоящая группа функций обеспечивает работу с SAP из интерфейса личного кабинета СБИС. Соединение осуществляется через SBIS Plugin установленный на рабочем месте пользователя..

ФМ /SBIS/RFC_GET_LIST_PACKET – Получение списка пакетов документов.

Функциональный модуль предназначен для получения списка пакетов документов который отражается в интерфейсе СБИС, пользователь из данного списка выбирает документы для последующей отправки. В таблице ниже представлен локальный интерфейс модуля.

Параметр Описание
IMPORTING
IV_INI_NAME Код раздела настроек содержащих параметры необходимые для получения списка документов.
IS_FILTER Структура содержащая параметры для ограничения выборки списка документов (период, контрагент, балансовая единица и т.п.
TABLES
GET_LIST_PACKET Список пакетов документов

ФМ /SBIS/RFC_GET_ATTACHMENT – Данные отправки

Функциональный модуль предназначен для получения XML вложения в пакет.

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

Параметр Описание
IMPORTING
IV_INI_NAME Код раздела настроек содержащих параметры необходимые для получения данных документа.
IS_DOC_KEY Уникальный идентификатор документа
EXPORTING
ES_XML_PACKET Структура с описанием пакета, на основании данных данной структуры формируется описание пакета, актуально для первого вложения
ES_XML_ATTACHEMENT Структура с вложением, содержит описание формата, его версии и содержит XML файл взакодированный в BASE64. В общем случае передается XML универсального формата который в последующем конвертируется в формат ФНС.

ФМ /SBIS/RFC_GET_PARAM – Получение списка настроек аддона

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

В таблице ниже представлен локальный интерфейс модуля.

Параметр Описание
IMPORTING
IV_INI_NAME Название группы параметров
IV_PARENT Название подгруппы параметров
IV_PARAM_NAME Имя параметра
TABLE
ET_SETTINGS Таблица со списком параметров

ФМ /SBIS/RFC_DEL_PARAM – Удаление настроек аддона

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

Параметр Описание
IMPORTING
IV_INI_NAME Параметр для ограничения списка удаляемых параметров.
IV_PARENT Параметр для ограничения списка удаляемых параметров.
IV_PARAM_NAME Имя удаляемого параметра.

ФМ /SBIS/RFC_ADD_PARAM – Добавление настроек аддона

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

Параметр Описание
TABLE
IT_SETTINGS Список настроек которые надо добавить/обновить.

Порядок установки и настройки модуля

  • Определить список документов которые предполагается передавать в электронном виде, если внести изменения в SAP проблематично, то лучше сделать этот список с запасом.
  • Сформировать список программ использующихся для печати документов.
  • Импортировать транспортный запрос с модулем (требуется ключ разработчика).
    • Распаковать архив с модулем на сервере разработки в DIR_TRANS (путь посмотреть можно в транзакции AL11)
    • Запустить транзакцию STMS
      • Import overview (F5)
      • Выбрать систему куда импортируем
      • Меню Extras -> Other requests -> Add
      • Выбираем запрос (имя такое же как у архива)
      • Import Request
  • Доработать программы печати (требуется ключ разработчика).
    • Копируем программу, к старому имени добавляем префикс ZSBIS_
    • Перед кодом вызова формуляра добавляем вызов интеграционного модуля. Подробнее.
  • Заполнить таблицу настроек /SBIS/SETTING. Подробнее.

Доработка программы печати

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

В простейшем случае доработка сводится к добавлению к в программу печати (или её копию) вызова метода ИМ который завершает программу печати после формирования электронного документа.

Пример вызова ИМ для формирования электронного документа. Данный код необходимо добавить непосредственно перед вызовом формуляра.

  DATA lv_not_print TYPE c VALUE 'X'.
  DATA cl_mapping TYPE REF TO /sbis/cl_mapping.
  CREATE OBJECT cl_mapping.
  CALL METHOD cl_mapping->calc_doc
    IMPORTING
      ev_not_print = lv_not_print.

  IF lv_not_print = 'X'.
    EXIT.
  ENDIF.

С интеграционным модулем поставляются примеры стандартных программ печати в которые добавлен вызов ИМ.

В ряде случаев этого может быть не достаточно.

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

Алгоритм выгрузки документов из SAP в СБИС для последующей отправки

Алгоритм выгрузки в СБИС документов SAP из интерфейса СБИС

Алгоритм загрузки документов в SAP из СБИС

Алгоритм загрузки документов в SAP из интерфейса СБИС