SAP Processes and Forms. Валидация полей формы в потоке операций.

Вступление

В последней заметке по теме SAP Processes and Forms, я описал вариант реализации проверки полей FPM процесса путем создания внедрения для BAdI HRASR00GEN_SERVICE_ADVANCED

См. заметку SAP Processes and Forms. Валидация полей формы

См. заметку Создание собственного backend-сервиса для процесса Processes and Forms
В этой заметке я хочу обозначить несколько моментов относительно вызова метода DO_OPERATIONS в потоке операций, используемого для вашего процесса.

Задачи потока операций для работы с FPM процессом

Вендор предоставляет несколько стандартных задач потока операций для работы с SAP Processes and Forms типа FPM

См. Task Group TG17900002: Interactive Components

The following standard tasks and workflow templates are available for processes that use forms of type FPM Form:

  • Standard Task TS33700021: Process Form (Web Dynpro)
  • Standard Task TS33700022: Approve Form (Web Dynpro)
  • Standard Task TS33700023: Form Is Edited Again by Author (Web Dynpro)
  • Standard Task TS33700018: Process PD Form (Web Dynpro)
  • Standard Task TS33700019: Approve PD Form (Web Dynpro)
  • Standard Task TS33700020: PD Form Is Edited Again by Author (Web Dynpro)

Задачи эти предназначены для работы с различными объектами системы посредством все той же функциональности Processes and Forms.

См. HCM Processes and Forms (Technical Overview)

...

The services determine the logic used to process form fields in the back-end system. The following types of service are available:

  • PA Service (enables Personnel Administration infotypes to be created, changed, and deleted)

  • PT Service (enables Time Management infotypes to be created, changed, and deleted)

  • PD Service (enables Personnel Development infotypes to be created, changed, and deleted)
    ...

Самыми распространенными типами задач потоков операций в функциональности Processes and Forms являются:

  • Задача обработки процесса
  • Задача утверждения процесса

Можно предположить, что это одно и то же, но не тут-то было. SAP подразумевает и позиционирует это как два отличных между собой типа задач. Далее я приведу пример использования каждой из таких задач в потоке операций, а также поведение метода валидации полей процесса.

Задача обработки процесса. TS33700021

См. Standard Task TS33700021: Process Form (Web Dynpro)

Задача обработки процесса TS33700021 позволит вам запустить проверку полей процесса по нажатию на кнопку , при условии, конечно,  что она реализована.

Например, в потоке операций вашего процесса используется задача TS33700021

Рисунок 1.

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

См. заметку Создание Workflow для процесса SAP Processes and Forms (FPM)

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

Задача утверждения процесса. TS33700022

См. Standard Task TS33700022: Approve Form (Web Dynpro)

В наименовании данного типа задачи уже кроется ее основное предназначение, заключающееся в утверждении, либо отклонении процесса.

Definition

You use this standard task to send a form of type FPM Form to a user for approval. The approver can execute the following functions in the relevant form application:

  • Approve or reject the content of the form. The approver cannot change the content of the form.

  • Return the form to the process initiator (optional)

  • Save a draft (optional)

Рисунок 2.

Выполняя тестирование потока операций с задачей TS33700022, метод DO_OPERATION будет вызван только один раз (в момент запуска)

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

Обзор задач TS33700022: Approve Form (Web Dynpro) и TS33700021: Process Form (Web Dynpro) также был выполнен мной в заметке Возвращение сформированного ASR процесса на доработку инициатору в Workflow

... с помощью задачи TS33700021 вы можете предоставить согласующему пользователю внести изменения в форму, и отправить ее на дальнейшее согласование. С помощью задачи TS33700022 вы предоставляете пользователю возможность согласования/утверждения формы, без возможности изменения ее содержимого

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

У меня все. Берегите себя.