R_WorkAssignmentListSummary

DDL: R_WORKASSIGNMENTLISTSUMMARY Type: view_entity COMPOSITE Package: WFD_WORKER_FACTSHEET_BL

Work Assignment Summary List

R_WorkAssignmentListSummary is a Composite CDS View that provides data about "Work Assignment Summary List" in SAP S/4HANA. It reads from 3 data sources (R_WorkAssignmentKeyMap, I_WorkAssignmentDetailsAll, I_WorkAssignmentValidity) and exposes 22 fields with key fields WorkAssignmentUUID, WorkforceAssignment. It has 6 associations to related views. Part of development package WFD_WORKER_FACTSHEET_BL.

Data Sources (3)

SourceAliasJoin Type
R_WorkAssignmentKeyMap _AssignmentKeyMap from
I_WorkAssignmentDetailsAll _WrkAssgmtDetailsAll inner
I_WorkAssignmentValidity _WrkAssgmtValidity inner

Associations (6)

CardinalityTargetAliasCondition
[1..1] I_ServiceCostLevelText _CostLevelText $projection.ServiceCostLevel = _CostLevelText.ServiceCostLevel and _CostLevelText.Language = $session.system_language
[1..1] I_BusinessPartner _WorkforcePersonBP _WorkforcePersonBP.BusinessPartner = _AssignmentKeyMap.BusinessPartner
[1..1] I_BusinessPartner _WorkAssignmentBP _WorkAssignmentBP.BusinessPartner = _WrkAssgmtValidity.BusinessPartner
[0..1] I_CompanyCode _CompanyCodeText $projection.CompanyCode = _CompanyCodeText.CompanyCode
[0..1] I_CostCenter _CostCenterText $projection.CompanyCode = _CostCenterText.CompanyCode and $projection.CostCenter = _CostCenterText.CostCenter and _CostCenterText.ValidityStartDate <= _WrkAssgmtDetailsAll.WorkAssignmentEndDate and _CostCenterText.ValidityEndDate >= _WrkAssgmtDetailsAll.WorkAssignmentEndDate
[0..1] R_BPUsrRoleText _BPUsrRoleText _BPUsrRoleText.Role = $projection.BasicRoleCategory and _BPUsrRoleText.Language = $session.system_language

Annotations (9)

NameValueLevelField
AccessControl.personalData.blocking #REQUIRED view
AccessControl.authorizationCheck #MANDATORY view
EndUserText.label Work Assignment Summary List view
VDM.viewType #COMPOSITE view
VDM.lifecycle.contract.type #SAP_INTERNAL_API view
Metadata.ignorePropagatedAnnotations true view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #XL view
ObjectModel.usageType.dataClass #MIXED view

Fields (22)

KeyFieldSource TableSource FieldDescription
KEY WorkAssignmentUUID _WorkAssignmentBP BusinessPartnerUUID
KEY WorkforceAssignment R_WorkAssignmentKeyMap WorkforceAssignment
WorkforcePersonUserID R_WorkAssignmentKeyMap WorkforcePersonUserID
PersonUUID _WorkforcePersonBP BusinessPartnerUUID
WorkAssignmentStartDate I_WorkAssignmentDetailsAll WorkAssignmentStartDate
WorkAssignmentEndDate I_WorkAssignmentDetailsAll WorkAssignmentEndDate
CompanyCode I_WorkAssignmentDetailsAll CompanyCode
CostCenter I_WorkAssignmentDetailsAll CostCenter
ServiceCostLevel _WrkAssgmtSrvcCostLvl ServiceCostLevel
ManagerAssignmentID I_WorkAssignmentDetailsAll SupervisorWorkAssignmentID
ManagerEmployee I_WorkAssignmentDetailsAll SupervisorWorkAssignmentExtID
Supplier _supplierdetail BusinessPartnerRelshpSupplier
SupplierName
BusinessPartnerRole I_WorkAssignmentValidity BusinessPartnerRole
BasicRoleCategory I_WorkAssignmentValidity BasicRoleCategory
IsBusinessPurposeCompleted _WorkAssignmentBP IsBusinessPurposeCompleted
IsBlocked R_WorkAssignmentKeyMap IsBlocked
_WorkforcePerson _WorkforcePerson
_CostLevelText _CostLevelText
_CompanyCodeText _CompanyCodeText
_CostCenterText _CostCenterText
_BPUsrRoleText _BPUsrRoleText
@AbapCatalog.viewEnhancementCategory: [#NONE]
@AccessControl.personalData.blocking: #REQUIRED
@AccessControl.authorizationCheck: #MANDATORY
@EndUserText.label: 'Work Assignment Summary List'
@VDM: {
  viewType: #COMPOSITE,
  lifecycle.contract.type: #SAP_INTERNAL_API
}
@Metadata.ignorePropagatedAnnotations: true
@ObjectModel.usageType:{
  serviceQuality: #C,
  sizeCategory: #XL,
  dataClass: #MIXED
}
@Consumption.dbHints:[ 'USE_HEX_PLAN' ]
define view entity R_WorkAssignmentListSummary
  as select from           R_WorkAssignmentKeyMap     as _AssignmentKeyMap
    inner join             I_WorkAssignmentValidity   as _WrkAssgmtValidity    on _WrkAssgmtValidity.WorkAssignment = _AssignmentKeyMap.WorkforceAssignment

    inner join             I_WorkAssignmentDetailsAll as _WrkAssgmtDetailsAll  on  _WrkAssgmtDetailsAll.WorkAssignment          = _AssignmentKeyMap.WorkforceAssignment
                                                                               and _WrkAssgmtDetailsAll.WorkAssignmentStartDate <= $session.system_date
                                                                               and _WrkAssgmtDetailsAll.WorkAssignmentEndDate   >= $session.system_date
                                                                               and _WrkAssgmtDetailsAll.IsBlocked               is initial
                                                                               and _WrkAssgmtDetailsAll.WorkAssignmentStatus    = '1'
  //    inner join             I_ActiveWorkAssignmentCount as _ActiveWorkAssignmentCount on  _ActiveWorkAssignmentCount.BusinessPartner               = _AssignmentKeyMap.BusinessPartner

  //                                                                                     and _ActiveWorkAssignmentCount.TotalNumberOfActiveAssignment > 1

    left outer to one join I_WrkAssgmtSrvcCostLvl     as _WrkAssgmtSrvcCostLvl on  _WrkAssgmtSrvcCostLvl.WorkAssignment = _AssignmentKeyMap.WorkforceAssignment
                                                                               and _WrkAssgmtSrvcCostLvl.StartDate      <= $session.system_date
                                                                               and _WrkAssgmtSrvcCostLvl.EndDate        >= $session.system_date
  //    left outer to one join R_ManagerContactCard_1     as _ManagerContactCard_1 on _ManagerContactCard_1.ManagerAssignmentExternalID = _WrkAssgmtDetailsAll.SupervisorWorkAssignmentExtID

    left outer to one join I_SupplierDetail           as _supplierdetail       on  _supplierdetail.BusinessPartnerPerson = _WrkAssgmtValidity.BusinessPartner
                                                                               and _supplierdetail.StartDate             <= $session.system_date
                                                                               and _supplierdetail.EndDate               >= $session.system_date
  association [1..1] to I_ServiceCostLevelText            as _CostLevelText     on  $projection.ServiceCostLevel = _CostLevelText.ServiceCostLevel
                                                                                and _CostLevelText.Language      = $session.system_language
  association [1..1] to I_BusinessPartner                 as _WorkforcePersonBP on  _WorkforcePersonBP.BusinessPartner = _AssignmentKeyMap.BusinessPartner
  association [1..1] to I_BusinessPartner                 as _WorkAssignmentBP  on  _WorkAssignmentBP.BusinessPartner = _WrkAssgmtValidity.BusinessPartner
  //  association [1..1] to R_WorkAssignment                  as _WorkAssignment    on  _WorkAssignment.WorkAssignmentUUID = $projection.WorkAssignmentUUID

  //                                                                                and _WorkAssignment.WorkAssignment     = $projection.WorkforceAssignment

  association [0..1] to I_CompanyCode                     as _CompanyCodeText   on  $projection.CompanyCode = _CompanyCodeText.CompanyCode
  association [0..1] to I_CostCenter                      as _CostCenterText    on  $projection.CompanyCode           =  _CostCenterText.CompanyCode
                                                                                and $projection.CostCenter            =  _CostCenterText.CostCenter
                                                                                and _CostCenterText.ValidityStartDate <= _WrkAssgmtDetailsAll.WorkAssignmentEndDate
                                                                                and _CostCenterText.ValidityEndDate   >= _WrkAssgmtDetailsAll.WorkAssignmentEndDate
  association [0..1] to R_BPUsrRoleText                   as _BPUsrRoleText     on  _BPUsrRoleText.Role     = $projection.BasicRoleCategory
                                                                                and _BPUsrRoleText.Language = $session.system_language
  association        to parent R_WorkforcePersonFactSheet as _WorkforcePerson   on  $projection.PersonUUID = _WorkforcePerson.PersonUUID
{
  key   _WorkAssignmentBP.BusinessPartnerUUID              as WorkAssignmentUUID,
  key   _AssignmentKeyMap.WorkforceAssignment,
        _AssignmentKeyMap.WorkforcePersonUserID,
        _WorkforcePersonBP.BusinessPartnerUUID             as PersonUUID,
        _WrkAssgmtDetailsAll.WorkAssignmentStartDate,
        _WrkAssgmtDetailsAll.WorkAssignmentEndDate,
        //        _WrkAssgmtDetailsAll.WorkAssignmentStatus,

        _WrkAssgmtDetailsAll.CompanyCode,
        _WrkAssgmtDetailsAll.CostCenter,
        //        _WrkAssgmtDetailsAll.SupervisorWorkAssignmentID,

        _WrkAssgmtSrvcCostLvl.ServiceCostLevel,
        _WrkAssgmtDetailsAll.SupervisorWorkAssignmentID    as ManagerAssignmentID,
        _WrkAssgmtDetailsAll.SupervisorWorkAssignmentExtID as ManagerEmployee,
        //        _ManagerContactCard_1.FullName                     as ManagerFullName,

        _supplierdetail.BusinessPartnerRelshpSupplier      as Supplier,
        _supplierdetail._SupplierBP.BusinessPartnerName    as SupplierName,
        _WrkAssgmtValidity.BusinessPartnerRole             as BusinessPartnerRole,
        _WrkAssgmtValidity.BasicRoleCategory               as BasicRoleCategory,
        @Semantics.booleanIndicator
        _WorkAssignmentBP.IsBusinessPurposeCompleted       as IsBusinessPurposeCompleted,
        _AssignmentKeyMap.IsBlocked                        as IsBlocked,
        _WorkforcePerson,
        _CostLevelText,
        _CompanyCodeText,
        _CostCenterText,
        _BPUsrRoleText
        //        _WorkAssignment

}