C_SuplrConfWrkflwApprovalEmail

DDL: C_SUPLRCONFWRKFLWAPPROVALEMAIL SQL: CMMSCWFLAPPR Type: view CONSUMPTION

Supplier Confirmation Details for Workflow Approval Email

C_SuplrConfWrkflwApprovalEmail is a Consumption CDS View that provides data about "Supplier Confirmation Details for Workflow Approval Email" in SAP S/4HANA. It reads from 4 data sources (I_WorkflowTask, I_WorkflowTaskApplObject, P_PurchasingLastWorkflowStep, I_WorkflowTask) and exposes 14 fields with key field WorkflowTaskInternalID. It has 1 association to related views.

Data Sources (4)

SourceAliasJoin Type
I_WorkflowTask _Workflowtask from
I_WorkflowTaskApplObject _WorkflowTaskApplObject inner
P_PurchasingLastWorkflowStep _WorkitemData inner
I_WorkflowTask _WorkitemDet inner

Associations (1)

CardinalityTargetAliasCondition
[0..1] I_WorkflowTaskResultComment _WorkflowTaskResultComment _WorkflowTaskResultComment.WorkflowTaskInternalID = _WorkitemDet.WorkflowTaskInternalID

Annotations (13)

NameValueLevelField
AbapCatalog.sqlViewName CMMSCWFLAPPR view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
AccessControl.authorizationCheck #CHECK view
AccessControl.personalData.blocking #NOT_REQUIRED view
EndUserText.label Supplier Confirmation Details for Workflow Approval Email view
VDM.viewType #CONSUMPTION view
ClientHandling.algorithm #SESSION_VARIABLE view
ObjectModel.usageType.serviceQuality #D view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.supportedCapabilities #OUTPUT_EMAIL_DATA_PROVIDER view
Metadata.ignorePropagatedAnnotations true view

Fields (14)

KeyFieldSource TableSource FieldDescription
KEY WorkflowTaskInternalID I_WorkflowTask WorkflowTaskInternalID
SupplierConfirmation _SupplierConfirmation SupplierConfirmation
DocumentCurrency _PurchaseOrderNetAmount DocumentCurrency
PurchaseOrderNetAmount
PurchaseOrder _SupplierConfirmation SuplrConfRefPurchaseOrder
CreatedByUserName
Supplier _SupplierConfirmation Supplier
SupplierName _Supplier SupplierName
PurchasingDocumentType _SupplierConfirmation PurchasingDocumentType
CreationDate _SupplierConfirmation CreationDate
PurchasingDocumentTypeName
WorkflowTaskResultReasonText
LastStepWorkflowTaskInternalID I_WorkflowTask WorkflowTaskInternalID
_WorkflowTaskResultComment _WorkflowTaskResultComment
@AbapCatalog.sqlViewName: 'CMMSCWFLAPPR'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #NOT_REQUIRED
@EndUserText.label: 'Supplier Confirmation Details for Workflow Approval Email'

@VDM.viewType : #CONSUMPTION
@ClientHandling.algorithm: #SESSION_VARIABLE

@ObjectModel.usageType : {
  serviceQuality: #D,
  sizeCategory: #L,
  dataClass: #TRANSACTIONAL
}
@ObjectModel.supportedCapabilities: #OUTPUT_EMAIL_DATA_PROVIDER
@Metadata.ignorePropagatedAnnotations:true

define view C_SuplrConfWrkflwApprovalEmail
  as select from           I_WorkflowTask               as _Workflowtask

    inner join             I_WorkflowTaskApplObject     as _WorkflowTaskApplObject on  _WorkflowTaskApplObject.WorkflowTaskInternalID        = _Workflowtask.WorkflowTaskInternalID
                                                                                   and _WorkflowTaskApplObject.WorkflowObjectRole            = '01'
                                                                                   and _WorkflowTaskApplObject.SAPObjectNodeRepresentation   = 'SupplierConfirmation'
                                                                                   and _WorkflowTaskApplObject.TechnicalWrkflwObjectCategory = 'CL'

    left outer to one join I_SupplierConfirmation       as _SupplierConfirmation   on _SupplierConfirmation.SupplierConfirmation = _WorkflowTaskApplObject.TechnicalWrkflwObject

    left outer to one join I_PurchaseOrderNetAmount     as _PurchaseOrderNetAmount on _PurchaseOrderNetAmount.PurchaseOrder = _SupplierConfirmation.SuplrConfRefPurchaseOrder

    left outer to one join I_User                       as _User                   on _User.UserID = _SupplierConfirmation.CreatedByUser

    left outer to one join I_Supplier                   as _Supplier               on _Supplier.Supplier = _SupplierConfirmation.Supplier

    inner join             P_PurchasingLastWorkflowStep as _WorkitemData           on _WorkitemData.TopLevelWorkflowTask = _Workflowtask.TopLevelWorkflowTask

    inner join             I_WorkflowTask               as _WorkitemDet            on  _WorkitemDet.WrkflwTskCompletionUTCDateTime = _WorkitemData.MaxWrkflwTskCompDateTime
                                                                                   and _WorkitemDet.TopLevelWorkflowTask           = _WorkitemData.TopLevelWorkflowTask
                                                                                   and (
                                                                                      _WorkitemDet.WorkflowTaskType                = 'W'
                                                                                      or _WorkitemDet.WorkflowTaskType             = 'B'
                                                                                    )

    left outer to one join I_User                       as _ApproverUser           on _ApproverUser.UserID = _WorkitemDet.WorkflowTaskCurrentUser

    left outer to one join I_PurchasingDocumentType     as _PurDocType             on  _PurDocType.PurchasingDocumentType     = _SupplierConfirmation.PurchasingDocumentType
                                                                                   and _PurDocType.PurchasingDocumentCategory = 'F'

  //left outer to one join I_WorkflowTaskResultComment  as _WorkflowTaskResultComment on _WorkflowTaskResultComment.WorkflowTaskInternalID = _WorkitemDet.WorkflowTaskInternalID

  association [0..1] to I_WorkflowTaskResultComment as _WorkflowTaskResultComment on _WorkflowTaskResultComment.WorkflowTaskInternalID = _WorkitemDet.WorkflowTaskInternalID

{
  key _Workflowtask.WorkflowTaskInternalID,
      _SupplierConfirmation.SupplierConfirmation,

      @Semantics.currencyCode: true
      _PurchaseOrderNetAmount.DocumentCurrency,
      @Semantics.amount.currencyCode: 'DocumentCurrency'
      cast((_PurchaseOrderNetAmount.PurchaseOrderNetAmount) as mm_pur_order_tot_net_amount ) as PurchaseOrderNetAmount,
      _SupplierConfirmation.SuplrConfRefPurchaseOrder                                        as PurchaseOrder,

      cast(_User.UserDescription as mm_oa_user_fullname )                                    as CreatedByUserName,

      _SupplierConfirmation.Supplier,
      _Supplier.SupplierName,
      _SupplierConfirmation.PurchasingDocumentType,
      _SupplierConfirmation.CreationDate,
      //Document type name for Purchase Order document type

      _PurDocType._Text[1:Language=$session.system_language].PurchasingDocumentTypeName,

      _Workflowtask._WorkflowTaskResult._WorkflowTaskResultReason._WorkflowTaskResultReasonText[1:Language=$session.system_language].WorkflowTaskResultReasonText,

      case _WorkitemDet.WorkflowTaskType
      when 'W' then case _Workflowtask._WorkflowTaskResult.WorkflowTaskResult
                    when 'SupplierConfirmationApproved' then 'Approved'
                    when 'SupplierConfirmationRejected' then 'Rejected'
                    else _Workflowtask._WorkflowTaskResult.WorkflowTaskResult end
      when 'B' then 'Automatically Approved'
      else _Workflowtask._WorkflowTaskResult.WorkflowTaskResult end                          as WorkflowTaskResult,

      case _WorkitemDet.WorkflowTaskType
      when 'B' then 'Automatically Approved'
      else cast(_ApproverUser.UserDescription as mm_oa_user_fullname )   end                 as ApprovedByUserFullName,

      _WorkitemDet.WorkflowTaskInternalID                                                    as LastStepWorkflowTaskInternalID,

      _WorkflowTaskResultComment
      //.WorkflowTaskResultComment                                   as WorkflowTaskResultComment


}
where
  _Workflowtask.WorkflowTaskType = 'F'