I_WorkflowTask

DDL: I_WORKFLOWTASK Type: view BASIC

Workflow work items

I_WorkflowTask is a Basic CDS View that provides data about "Workflow work items" in SAP S/4HANA. It reads from 1 data source (swwwihead) and exposes 35 fields with key field WorkflowTaskInternalID. It has 16 associations to related views. It is exposed through 1 OData service (PLMI_PROCESS_ROUTE). It is used in 1 Fiori application: Process Routes.

Data Sources (1)

SourceAliasJoin Type
swwwihead head from

Associations (16)

CardinalityTargetAliasCondition
[0..1] I_WorkflowTaskResult _WorkflowTaskResult $projection.TopLevelWorkflowTask = _WorkflowTaskResult.WorkflowInternalID and $projection.WorkflowTaskInternalID = _WorkflowTaskResult.WorkflowTaskInternalID
[0..*] I_WorkflowTaskTitle _TaskTitle $projection.WorkflowTaskInternalID = _TaskTitle.WorkflowTaskInternalID
[1..1] I_WorkflowTaskType _TaskType $projection.WorkflowTaskType = _TaskType.WorkflowTaskType
[1..1] I_WorkflowTaskPriority _TaskPriority $projection.WorkflowTaskPriority = _TaskPriority.WorkflowTaskPriority
[1..1] I_WorkflowTaskStatus _TaskStatus $projection.WorkflowTaskStatus = _TaskStatus.WorkflowTaskStatus
[0..*] I_WorkflowTaskApplObject _TaskApplicationObject $projection.WorkflowTaskInternalID = _TaskApplicationObject.WorkflowTaskInternalID
[0..1] I_WorkflowTaskLeadingApplObj _TaskApplicationLeadingObject $projection.WorkflowTaskInternalID = _TaskApplicationLeadingObject.WorkflowTaskInternalID
[0..1] I_WorkflowTaskStartEvent _TaskStartEvent $projection.WorkflowTaskInternalID = _TaskStartEvent.WorkflowTaskInternalID
[0..1] I_WorkflowTaskDueDate _TaskDueDate $projection.WorkflowTaskInternalID = _TaskDueDate.WorkflowTaskInternalID
[0..*] I_WorkflowTaskRecipient _TaskRecipient $projection.WorkflowTaskInternalID = _TaskRecipient.WorkflowTaskInternalID
[1..1] I_WorkflowTaskDefinition _TaskDefinition $projection.WorkflowTaskDefinitionObjType = _TaskDefinition.WorkflowTaskDefinitionObjType and $projection.WorkflowTaskDefinitionObject = _TaskDefinition.WorkflowTaskDefinitionObject
[1..1] I_WorkflowTaskDefinition _TopLevelTaskDefinition $projection.TopLevelWrkflwTskDefObjType = _TopLevelTaskDefinition.WorkflowTaskDefinitionObjType and $projection.TopLevelWrkflwTskDefObject = _TopLevelTaskDefinition.WorkflowTaskDefinitionObject
[0..1] I_WorkflowStepType _WorkflowStepType $projection.WorkflowTaskStepType = _WorkflowStepType.WorkflowStepType and $projection.TopLevelWorkflowTaskDefinition = _WorkflowStepType.WrkflwScen and $projection.WorkflowTaskDefinitionVersion = _WorkflowStepType.WrkflwScenVers
[0..1] I_WorkflowStepResult _WorkflowTaskStepResult $projection.TopLevelWorkflowTaskDefinition = _WorkflowTaskStepResult.WorkflowScenarioDefinition and $projection.WorkflowTaskDefinitionVersion = _WorkflowTaskStepResult.WorkflowScenarioDefinitionVers and $projection.WorkflowTaskStepType = _WorkflowTaskStepResult.WorkflowStepType and $projection.workflowtaskresult = _WorkflowTaskStepResult.WorkflowStepResult
[0..1] I_WorkflowTaskCustomAttribute _WorkflowTaskCustomAttribute $projection.WorkflowTaskInternalID = _WorkflowTaskCustomAttribute.WorkflowTaskInternalID
[0..1] I_WorkflowTaskTitleFallback _WorkflowTaskTitleFallback $projection.WorkflowTaskInternalID = _WorkflowTaskTitleFallback.WorkflowTaskInternalID

Annotations (10)

NameValueLevelField
AbapCatalog.sqlViewName IWORKFLOWTASK view
AbapCatalog.buffering.type #NONE view
EndUserText.label Workflow work items view
VDM.viewType #BASIC view
AccessControl.authorizationCheck #NOT_REQUIRED view
ClientHandling.algorithm #SESSION_VARIABLE view
ObjectModel.usageType.serviceQuality #A view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
AbapCatalog.dbHints.hint USE_HEX_PLAN view

OData Services (1)

ServiceBindingVersionContractRelease
PLMI_PROCESS_ROUTE PLMI_PROCESS_ROUTE V2 C1 NOT_RELEASED

Fiori Apps (1)

App IDApp NameTypeDescription
F5070 Process Routes Transactional, Reuse Component Process Routes is a reusable application component to provide workflow capabilities including parallel tasks, sequential tasks, ad-hoc tasks, and background tasks which can be loaded automatically into consumer apps based on business rule framework.

Process Routes

Business Role: Development Manager - Discrete Industries

Users can manage process route tasks of the change record; setting processing times or deadlines, priorities and the recipients (agents) to each. Tasks can be parallel or sequential and can be added ad-hoc or via a template, executed by the user or in the background. Users can configure the change record to use the new advanced process route (based on BRFplus) for a change record type by selecting the Proc.Route checkbox in Customizing activity Define Engineering Change Record Types. In this case, no SAP Business Workflow scenario is required, as that is related to the simple workflow. Process route based on BRFplus will use the workflow template defined via Global Process Route Templates Workbench application. Power users can create global templates which can be used across change record types and transported across the landscape. Templates can have parallel or sequential tasks, either executed in the background or by the user.

Fields (35)

KeyFieldSource TableSource FieldDescription
KEY WorkflowTaskInternalID swwwihead wi_id
WorkflowTaskType wi_type
WorkflowTaskPriority wi_prio
WorkflowTaskStatus wi_stat
WrkflwTskCreationUTCDateTime crea_tmp
WrkflwTskCompletionUTCDateTime wi_aed_timestamp
TopLevelWorkflowTask top_wi_id
ParentWorkflowTask wi_chckwi
WorkflowTaskCreatedByUser wi_cruser
WorkflowTaskCurrentUser wi_aagent
WorkflowTaskDefinition wi_rh_task
WorkflowTaskDefinitionObjType
WorkflowTaskDefinitionObject
TopLevelWorkflowTaskDefinition top_task
TopLevelWrkflwTskDefObjType
TopLevelWrkflwTskDefObject
WorkflowTaskStepType step_id
WorkflowTaskProcessorRole agent_rule_id
WorkflowTaskResult _WorkflowTaskResult WorkflowTaskResult
_TaskTitle _TaskTitle
_TaskType _TaskType
_TaskPriority _TaskPriority
_TaskStatus _TaskStatus
_TaskApplicationObject _TaskApplicationObject
_TaskApplicationLeadingObject _TaskApplicationLeadingObject
_TaskStartEvent _TaskStartEvent
_TaskDueDate _TaskDueDate
_TaskRecipient _TaskRecipient
_TaskDefinition _TaskDefinition
_TopLevelTaskDefinition _TopLevelTaskDefinition
_WorkflowStepType _WorkflowStepType
_WorkflowTaskStepResult _WorkflowTaskStepResult
_WorkflowTaskCustomAttribute _WorkflowTaskCustomAttribute
_WorkflowTaskTitleFallback _WorkflowTaskTitleFallback
_WorkflowTaskResult _WorkflowTaskResult
@AbapCatalog : {
  sqlViewName: 'IWORKFLOWTASK',
  buffering.type: #NONE
}
@EndUserText.label: 'Workflow work items'
@VDM.viewType: #BASIC
@AccessControl.authorizationCheck: #NOT_REQUIRED
@ClientHandling.algorithm: #SESSION_VARIABLE
@ObjectModel.usageType.serviceQuality: #A
@ObjectModel.usageType.sizeCategory: #L
@ObjectModel.usageType.dataClass: #TRANSACTIONAL
@AbapCatalog.dbHints.hint: 'USE_HEX_PLAN'
define view I_WorkflowTask
  as select from    swwwihead            as head
  association [0..1] to I_WorkflowTaskResult          as _WorkflowTaskResult           on  $projection.TopLevelWorkflowTask = _WorkflowTaskResult.WorkflowInternalID
                                                                                       and $projection.WorkflowTaskInternalID = _WorkflowTaskResult.WorkflowTaskInternalID
  association [0..*] to I_WorkflowTaskTitle           as _TaskTitle                    on  $projection.WorkflowTaskInternalID = _TaskTitle.WorkflowTaskInternalID
  association [1..1] to I_WorkflowTaskType            as _TaskType                     on  $projection.WorkflowTaskType = _TaskType.WorkflowTaskType
  association [1..1] to I_WorkflowTaskPriority        as _TaskPriority                 on  $projection.WorkflowTaskPriority = _TaskPriority.WorkflowTaskPriority
  association [1..1] to I_WorkflowTaskStatus          as _TaskStatus                   on  $projection.WorkflowTaskStatus = _TaskStatus.WorkflowTaskStatus
  association [0..*] to I_WorkflowTaskApplObject      as _TaskApplicationObject        on  $projection.WorkflowTaskInternalID = _TaskApplicationObject.WorkflowTaskInternalID
  association [0..1] to I_WorkflowTaskLeadingApplObj  as _TaskApplicationLeadingObject on  $projection.WorkflowTaskInternalID = _TaskApplicationLeadingObject.WorkflowTaskInternalID
  association [0..1] to I_WorkflowTaskStartEvent      as _TaskStartEvent               on  $projection.WorkflowTaskInternalID = _TaskStartEvent.WorkflowTaskInternalID
  association [0..1] to I_WorkflowTaskDueDate         as _TaskDueDate                  on  $projection.WorkflowTaskInternalID = _TaskDueDate.WorkflowTaskInternalID
  association [0..*] to I_WorkflowTaskRecipient       as _TaskRecipient                on  $projection.WorkflowTaskInternalID = _TaskRecipient.WorkflowTaskInternalID
  association [1..1] to I_WorkflowTaskDefinition      as _TaskDefinition               on  $projection.WorkflowTaskDefinitionObjType = _TaskDefinition.WorkflowTaskDefinitionObjType
                                                                                       and $projection.WorkflowTaskDefinitionObject  = _TaskDefinition.WorkflowTaskDefinitionObject
  association [1..1] to I_WorkflowTaskDefinition      as _TopLevelTaskDefinition       on  $projection.TopLevelWrkflwTskDefObjType = _TopLevelTaskDefinition.WorkflowTaskDefinitionObjType
                                                                                       and $projection.TopLevelWrkflwTskDefObject  = _TopLevelTaskDefinition.WorkflowTaskDefinitionObject
  association [0..1] to I_WorkflowStepType            as _WorkflowStepType             on  $projection.WorkflowTaskStepType           = _WorkflowStepType.WorkflowStepType
                                                                                       and $projection.TopLevelWorkflowTaskDefinition = _WorkflowStepType.WrkflwScen
                                                                                       and $projection.WorkflowTaskDefinitionVersion  = _WorkflowStepType.WrkflwScenVers
  association [0..1] to I_WorkflowStepResult          as _WorkflowTaskStepResult       on  $projection.TopLevelWorkflowTaskDefinition = _WorkflowTaskStepResult.WorkflowScenarioDefinition
                                                                                       and $projection.WorkflowTaskDefinitionVersion  = _WorkflowTaskStepResult.WorkflowScenarioDefinitionVers
                                                                                       and $projection.WorkflowTaskStepType           = _WorkflowTaskStepResult.WorkflowStepType
                                                                                       and $projection.workflowtaskresult             = _WorkflowTaskStepResult.WorkflowStepResult
  association [0..1] to I_WorkflowTaskCustomAttribute as _WorkflowTaskCustomAttribute  on  $projection.WorkflowTaskInternalID = _WorkflowTaskCustomAttribute.WorkflowTaskInternalID
  association [0..1] to I_WorkflowTaskTitleFallback   as _WorkflowTaskTitleFallback    on  $projection.WorkflowTaskInternalID = _WorkflowTaskTitleFallback.WorkflowTaskInternalID
{
  key head.wi_id                                       as WorkflowTaskInternalID,
      wi_type                                          as WorkflowTaskType,
      wi_prio                                          as WorkflowTaskPriority,
      wi_stat                                          as WorkflowTaskStatus,
      crea_tmp                                         as WrkflwTskCreationUTCDateTime,
      wi_aed_timestamp                                 as WrkflwTskCompletionUTCDateTime,
      top_wi_id                                        as TopLevelWorkflowTask,
      wi_chckwi                                        as ParentWorkflowTask,
      wi_cruser                                        as WorkflowTaskCreatedByUser,
      wi_aagent                                        as WorkflowTaskCurrentUser,
      wi_rh_task                                       as WorkflowTaskDefinition,
      cast( substring(wi_rh_task, 1, 2) as hr_sotype ) as WorkflowTaskDefinitionObjType,
      cast( substring(wi_rh_task, 3, 8) as hr_sobjid ) as WorkflowTaskDefinitionObject,
      top_task                                         as TopLevelWorkflowTaskDefinition,
      cast( substring(top_task, 1, 2) as hr_sotype )   as TopLevelWrkflwTskDefObjType,
      cast( substring(top_task, 3, 8) as hr_sobjid )   as TopLevelWrkflwTskDefObject,
      step_id                                          as WorkflowTaskStepType,
      agent_rule_id                                    as WorkflowTaskProcessorRole,
      case
        when wi_chckwi is initial and wi_type <> 'F' then '0000'
        else cast( substring(def_guid, 25, 4) as swd_versio )
      end                                              as WorkflowTaskDefinitionVersion,
      case
        when wf_type = '1024' or wf_type = '1032' or wf_type = '1040' then cast( 'SCENARIO' as sww_definition_type )
        else cast( 'STANDARD' as sww_definition_type )
      end                                              as WorkflowTaskDefinitionType,
      _WorkflowTaskResult.WorkflowTaskResult,
      _TaskTitle,
      _TaskType,
      _TaskPriority,
      _TaskStatus,
      _TaskApplicationObject,
      _TaskApplicationLeadingObject,
      _TaskStartEvent,
      _TaskDueDate,
      _TaskRecipient,
      _TaskDefinition,
      _TopLevelTaskDefinition,
      _WorkflowStepType,
      _WorkflowTaskStepResult,
      _WorkflowTaskCustomAttribute,
      _WorkflowTaskTitleFallback,
      _WorkflowTaskResult
}
where
     wi_type = 'W'
  or wi_type = 'B'
  or wi_type = 'F'
  or wi_type = 'A'