I_WorkAssgmtWorkOrderDEX

DDL: I_WORKASSGMTWORKORDERDEX Type: view_entity COMPOSITE Package: VDM_WFD_WORK_FORCE

Assignment Work Order Details

I_WorkAssgmtWorkOrderDEX is a Composite CDS View that provides data about "Assignment Work Order Details" in SAP S/4HANA. It reads from 2 data sources (I_WorkAssignmentBP, I_BPRelationship_2) and exposes 12 fields with key fields RelationshipNumber, Supplier, BusinessPartner2, EndDate. It has 2 associations to related views. Part of development package VDM_WFD_WORK_FORCE.

Data Sources (2)

SourceAliasJoin Type
I_WorkAssignmentBP AssignmentBP inner
I_BPRelationship_2 BPRelationship inner

Associations (2)

CardinalityTargetAliasCondition
[0..1] I_WorkAssignmentDEX_1 _WorkAssignment _WorkAssignment.WorkAssignmentExternalID = $projection.WorkAssignmentExternalID
[1] I_WorkforcePersonDEX_1 _WorkforcePerson _WorkforcePerson.WorkforcePersonExternalID = $projection.WorkforcePersonExternalID

Annotations (11)

NameValueLevelField
AccessControl.authorizationCheck #MANDATORY view
AccessControl.personalData.blocking #BLOCKED_DATA_EXCLUDED view
EndUserText.label Assignment Work Order Details view
VDM.viewType #COMPOSITE view
Analytics.dataExtraction.enabled true view
ObjectModel.modelingPattern #NONE view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #XL view
ObjectModel.usageType.dataClass #MASTER view
ObjectModel.sapObjectNodeType.name WorkOrderDetails view
Metadata.ignorePropagatedAnnotations true view

Fields (12)

KeyFieldSource TableSource FieldDescription
KEY RelationshipNumber I_BPRelationship_2 RelationshipNumber
KEY Supplier I_BPRelationship_2 BusinessPartner1
KEY BusinessPartner2 I_BPRelationship_2 BusinessPartner2
KEY EndDate I_BPRelationship_2 ValidityEndDate
StartDate I_BPRelationship_2 ValidityStartDate
WorkAssignment Assignment WorkAssignment
WorkforcePersonExternalID I_WorkAssignmentBP WorkforcePersonExternalID
WorkAssignmentExternalID Assignment WorkAssignmentExternalID
Country2DigitISOCode Assignment Country2DigitISOCode
IsBlocked Assignment IsBlocked
_WorkAssignment _WorkAssignment
_WorkforcePerson _WorkforcePerson
@AccessControl.authorizationCheck: #MANDATORY
@AccessControl.personalData.blocking: #BLOCKED_DATA_EXCLUDED
@EndUserText.label: 'Assignment Work Order Details'

@VDM.viewType: #COMPOSITE
@Analytics.dataExtraction: {
            enabled: true,
            delta.changeDataCapture:
              {
              mapping:[
               {
                table: 'BUT050',
                role:#MAIN,
                viewElement: [ 'RelationshipNumber', 'Supplier','BusinessPartner2','EndDate'],
                tableElement: [ 'relnr','partner1','partner2','date_to' ]
               },
               {
                table: 'WFD_D_KEYMAP',
                role: #LEFT_OUTER_TO_ONE_JOIN,
                viewElement: [ 'WorkAssignment'],
                tableElement: [ 'workforce_assgmt_id' ]
               }
              
              ]
                
              }
            
        }
  

@ObjectModel.supportedCapabilities:[ #EXTRACTION_DATA_SOURCE ]
@ObjectModel.modelingPattern: #NONE
@ObjectModel.usageType.serviceQuality: #C
@ObjectModel.usageType.sizeCategory: #XL
@ObjectModel.usageType.dataClass: #MASTER
@ObjectModel.sapObjectNodeType.name:'WorkOrderDetails'
@Metadata.ignorePropagatedAnnotations:true 



define view entity I_WorkAssgmtWorkOrderDEX   as select distinct from I_WorkAssignmentKeyMapping as Assignment
    inner join   I_WorkAssignmentBP         as AssignmentBP   on  AssignmentBP.WorkAssignment   = Assignment.WorkAssignment
                                                               and Assignment.IsContingentWorker = 'X'

    inner join   I_BPRelationship_2         as BPRelationship on BPRelationship.BusinessPartner2 = AssignmentBP.WorkAssignmentBusinessPartner
    
    

  association [0..1] to I_WorkAssignmentDEX_1  as _WorkAssignment  on  _WorkAssignment.WorkAssignmentExternalID = $projection.WorkAssignmentExternalID

  association [1]    to I_WorkforcePersonDEX_1 as _WorkforcePerson on  _WorkforcePerson.WorkforcePersonExternalID = $projection.WorkforcePersonExternalID

{
  key BPRelationship.RelationshipNumber ,
  
  key BPRelationship.BusinessPartner1 as Supplier,
  
  key BPRelationship.BusinessPartner2 ,
  
  key BPRelationship.ValidityEndDate as EndDate,

      BPRelationship.ValidityStartDate as StartDate,
      
      Assignment.WorkAssignment,
            
      AssignmentBP.WorkforcePersonExternalID,
      Assignment.WorkAssignmentExternalID,
      Assignment.Country2DigitISOCode,
      
      @Semantics.booleanIndicator: true
      @UI.hidden: true
      Assignment.IsBlocked,

      /* Associations */
      _WorkAssignment,
      _WorkforcePerson

}
where
  (
      BPRelationship.RelationshipCategory = 'HCM003'
    or(
      BPRelationship.RelationshipCategory = 'BUR025'
    )
  )

  and Assignment.IsContingentWorker       = 'X'