P_BatchWithFlexibleWorkflow

DDL: P_BATCHWITHFLEXIBLEWORKFLOW SQL: PBATCHFW Type: view COMPOSITE Package: ODATA_BANK_PAYMENT_APPROVAL

Batches with flexible workflow

P_BatchWithFlexibleWorkflow is a Composite CDS View that provides data about "Batches with flexible workflow" in SAP S/4HANA. It reads from 5 data sources (I_BankPaymentBatch, P_FinalApproval, P_FirstApproval, P_ReturnedApproval, I_WorkflowTaskApplObject) and exposes 7 fields with key field PaymentBatch. Part of development package ODATA_BANK_PAYMENT_APPROVAL.

Data Sources (5)

SourceAliasJoin Type
I_BankPaymentBatch batch_header inner
P_FinalApproval final_approval inner
P_FirstApproval first_approval inner
P_ReturnedApproval returned_approval inner
I_WorkflowTaskApplObject wf_object inner

Annotations (10)

NameValueLevelField
AbapCatalog.sqlViewName PBATCHFW view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
AccessControl.authorizationCheck #CHECK view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #XL view
ObjectModel.usageType.dataClass #MIXED view
VDM.private true view
VDM.viewType #COMPOSITE view
ClientHandling.algorithm #SESSION_VARIABLE view

Fields (7)

KeyFieldSource TableSource FieldDescription
KEY PaymentBatch I_BankPaymentBatch PaymentBatch
BatchUUID TechnicalWrkflwObject
UserID su UserID
ApprovalIsFirst P_FirstApproval is_first_approval
ApprovalIsFinal P_FinalApproval is_final_approval
IsReturnedApproval P_ReturnedApproval is_returned_approval
wi_id su WorkItem
@AbapCatalog.sqlViewName: 'PBATCHFW'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@AccessControl.authorizationCheck: #CHECK

@ObjectModel.usageType:{
    serviceQuality: #C,
    sizeCategory: #XL,
    dataClass: #MIXED
}

@VDM.private:true
@VDM.viewType: #COMPOSITE
@ClientHandling.algorithm: #SESSION_VARIABLE
define view P_BatchWithFlexibleWorkflow 
as select distinct from I_WorkflowUserWorkItem as su
    inner join            I_WorkflowTaskApplObject as wf_object         on su.WorkItem = wf_object.WorkflowTaskInternalID

    inner join            I_BankPaymentBatch         as batch_header      on wf_object.TechnicalWrkflwObject = BINTOHEX(
      batch_header.BatchUUID
    )           
    inner join            P_FirstApproval       as first_approval    on su.WorkItem = first_approval.workitem_id
    inner join            P_FinalApproval       as final_approval    on su.WorkItem = final_approval.workitem_id
    inner join            P_ReturnedApproval    as returned_approval on su.WorkItem = returned_approval.workitem_id
//    left outer join       P_SWWWIAGENT          as agent             on agent.wi_id      = su.WorkItem

//                                                                    and agent.agent_id   = su.UserID

//                                                                    and agent.agent_type = 'E'                                                                        and agent.agent_ot   = 'US'

//        


{
  key batch_header.PaymentBatch              as PaymentBatch,
      TechnicalWrkflwObject                  as BatchUUID,
      su.UserID                              as UserID,
      first_approval.is_first_approval       as ApprovalIsFirst,
      final_approval.is_final_approval       as ApprovalIsFinal,
      returned_approval.is_returned_approval as IsReturnedApproval,
      su.WorkItem                            as wi_id
}
where
//       su.UserID                  = $session.user 

       su.WrkItmIsNotRelevantToSelection = ' '
//  and  agent.wi_id                is null

//  and(

    and    su.ObjectType              = 'TS78500008'
//  )