R_WorkAssignmentDetailsTP

DDL: R_WORKASSIGNMENTDETAILSTP Type: view_entity TRANSACTIONAL Package: ODATA_CA_BUM_WF

Work Assignment Details TP

R_WorkAssignmentDetailsTP is a Transactional CDS View that provides data about "Work Assignment Details TP" in SAP S/4HANA. It reads from 3 data sources (R_WorkAssignmentDetailsAll, R_WorkAssignmentKeyMap, R_WorkAssignmentBP) and exposes 26 fields with key fields WorkAssignmentUUID, StartDate. It has 7 associations to related views. Part of development package ODATA_CA_BUM_WF.

Data Sources (3)

SourceAliasJoin Type
R_WorkAssignmentDetailsAll _AssignmentDetails from
R_WorkAssignmentKeyMap _AssignmentKeyMap inner
R_WorkAssignmentBP _BuPaIdentification inner

Associations (7)

CardinalityTargetAliasCondition
[1..1] I_BusinessPartner _WorkAssignmentBP _WorkAssignmentBP.BusinessPartner = _BuPaIdentification.WorkAssignmentBusinessPartner
[1..1] I_BusinessPartner _WorkforcePersonBP _WorkforcePersonBP.BusinessPartner = _AssignmentKeyMap.BusinessPartner
[0..1] R_ManagerWorkAssignmentVH _ManagerWorkAssignmentVH $projection.ManagerEmployee = _ManagerWorkAssignmentVH.ManagerAssignmentExternalID and $projection.CompanyCode = _ManagerWorkAssignmentVH.CompanyCode and $projection.ManagerEmployee is not initial
[0..1] I_CostCenter _CostCenterText $projection.CompanyCode = _CostCenterText.CompanyCode and $projection.CostCenter = _CostCenterText.CostCenter and _CostCenterText.ControllingArea = 'A000' and _CostCenterText.ValidityStartDate <= _AssignmentDetails.EndDate and _CostCenterText.ValidityEndDate >= _AssignmentDetails.EndDate
[0..1] I_CompanyCode _CompanyCodeText $projection.CompanyCode = _CompanyCodeText.CompanyCode
[0..1] I_WorkforceAssgmtStatusText _WorkforceAssignmentStatus $projection.WorkforceAssignmentStatus = _WorkforceAssignmentStatus.WorkforceAssignmentStatus and _WorkforceAssignmentStatus.Language = $session.system_language
[1..1] R_WorkforcePersonTP _WorkforcePerson $projection.PersonUUID = _WorkforcePerson.PersonUUID

Annotations (7)

NameValueLevelField
AccessControl.authorizationCheck #CHECK view
EndUserText.label Work Assignment Details TP view
VDM.viewType #TRANSACTIONAL view
VDM.lifecycle.contract.type #SAP_INTERNAL_API view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #XL view
ObjectModel.usageType.dataClass #MASTER view

Fields (26)

KeyFieldSource TableSource FieldDescription
KEY WorkAssignmentUUID _WorkAssignmentBP BusinessPartnerUUID
KEY StartDate R_WorkAssignmentDetailsAll StartDate
EndDate R_WorkAssignmentDetailsAll EndDate
WorkAssignment R_WorkAssignmentDetailsAll WorkAssignment
WorkAssignmentBusinessPartner R_WorkAssignmentBP WorkAssignmentBusinessPartner
PersonUUID _WorkforcePersonBP BusinessPartnerUUID
CompanyCode R_WorkAssignmentDetailsAll CompanyCode
CostCenter R_WorkAssignmentDetailsAll CostCenter
WorkforcePersonJobCode R_WorkAssignmentDetailsAll WorkforcePersonJobCode
WorkforcePersonJobTitle R_WorkAssignmentDetailsAll WorkforcePersonJobTitle
WorkforceAssignmentIsPrimary
ManagerAssignmentID R_WorkAssignmentDetailsAll ManagerAssignmentID
WeeklyWorkingDays R_WorkAssignmentDetailsAll WeeklyWorkingDays
WeeklyWorkingHours R_WorkAssignmentDetailsAll WeeklyWorkingHours
EmploymentPercent R_WorkAssignmentDetailsAll EmploymentPercent
WorkforceAssignmentStatus R_WorkAssignmentDetailsAll WorkforceAssignmentStatus
ManagerEmployee R_WorkAssignmentDetailsAll ManagerAssignmentExternalID
IsEditable
EmploymentPercentageUnit
IsBlocked R_WorkAssignmentDetailsAll IsBlocked
_WorkAssignment _WorkAssignment
_WorkforcePerson _WorkforcePerson
_ManagerWorkAssignmentVH _ManagerWorkAssignmentVH
_CostCenterText _CostCenterText
_WorkforceAssignmentStatus _WorkforceAssignmentStatus
_CompanyCodeText _CompanyCodeText
@AbapCatalog.viewEnhancementCategory: [#NONE]
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'Work Assignment Details TP'
@VDM: {
  viewType: #TRANSACTIONAL,
  lifecycle.contract.type: #SAP_INTERNAL_API
}
@ObjectModel.usageType:{
  serviceQuality: #C,
  sizeCategory: #XL,
  dataClass: #MASTER
}
@Consumption.dbHints: [ '&PREFER_JOIN_WITH_FDA 0&', 'USE_HEX_PLAN' ]
define view entity R_WorkAssignmentDetailsTP
  as select from R_WorkAssignmentDetailsAll as _AssignmentDetails
  //Get the Employment BP (for both old and new BP Models)

    inner join   R_WorkAssignmentBP         as _BuPaIdentification on _BuPaIdentification.WorkforceAssignment = _AssignmentDetails.WorkAssignment
    inner join   R_WorkAssignmentKeyMap     as _AssignmentKeyMap   on _AssignmentKeyMap.WorkforceAssignment = _AssignmentDetails.WorkAssignment
  association [1..1] to I_BusinessPartner           as _WorkAssignmentBP          on  _WorkAssignmentBP.BusinessPartner = _BuPaIdentification.WorkAssignmentBusinessPartner
  association [1..1] to I_BusinessPartner           as _WorkforcePersonBP         on  _WorkforcePersonBP.BusinessPartner = _AssignmentKeyMap.BusinessPartner

  association [0..1] to R_ManagerWorkAssignmentVH   as _ManagerWorkAssignmentVH   on  $projection.ManagerEmployee = _ManagerWorkAssignmentVH.ManagerAssignmentExternalID
                                                                                  and $projection.CompanyCode     = _ManagerWorkAssignmentVH.CompanyCode
                                                                                  and $projection.ManagerEmployee is not initial

  association [0..1] to I_CostCenter                as _CostCenterText            on  $projection.CompanyCode           =  _CostCenterText.CompanyCode
                                                                                  and $projection.CostCenter            =  _CostCenterText.CostCenter
                                                                                  and _CostCenterText.ControllingArea   =  'A000'
                                                                                  and _CostCenterText.ValidityStartDate <= _AssignmentDetails.EndDate
                                                                                  and _CostCenterText.ValidityEndDate   >= _AssignmentDetails.EndDate

  association [0..1] to I_CompanyCode               as _CompanyCodeText           on  $projection.CompanyCode = _CompanyCodeText.CompanyCode
  association [0..1] to I_WorkforceAssgmtStatusText as _WorkforceAssignmentStatus on  $projection.WorkforceAssignmentStatus = _WorkforceAssignmentStatus.WorkforceAssignmentStatus
                                                                                  and _WorkforceAssignmentStatus.Language   = $session.system_language
  association [1..1] to R_WorkforcePersonTP         as _WorkforcePerson           on  $projection.PersonUUID = _WorkforcePerson.PersonUUID
  association        to parent R_WorkAssignmentTP   as _WorkAssignment            on  $projection.WorkAssignmentUUID = _WorkAssignment.WorkAssignmentUUID
{
  key   _WorkAssignmentBP.BusinessPartnerUUID                             as WorkAssignmentUUID,
  key   _AssignmentDetails.StartDate                                      as StartDate,
        _AssignmentDetails.EndDate                                        as EndDate,
        _AssignmentDetails.WorkAssignment                                 as WorkAssignment,
        _BuPaIdentification.WorkAssignmentBusinessPartner                 as WorkAssignmentBusinessPartner,
        _WorkforcePersonBP.BusinessPartnerUUID                            as PersonUUID,
        _AssignmentDetails.CompanyCode                                    as CompanyCode,
        _AssignmentDetails.CostCenter                                     as CostCenter,
        _AssignmentDetails.WorkforcePersonJobCode                         as WorkforcePersonJobCode,
        _AssignmentDetails.WorkforcePersonJobTitle                        as WorkforcePersonJobTitle,
        cast ( _AssignmentDetails.WorkforceAssignmentIsPrimary as xfeld ) as WorkforceAssignmentIsPrimary,
        _AssignmentDetails.ManagerAssignmentID                            as ManagerAssignmentID,
        _AssignmentDetails.WeeklyWorkingDays                              as WeeklyWorkingDays,
        _AssignmentDetails.WeeklyWorkingHours                             as WeeklyWorkingHours,
        _AssignmentDetails.EmploymentPercent                              as EmploymentPercent,
        _AssignmentDetails.WorkforceAssignmentStatus                      as WorkforceAssignmentStatus,
        @Consumption.valueHelp:'_ManagerWorkAssignmentVH'
        _AssignmentDetails.ManagerAssignmentExternalID                    as ManagerEmployee,
        cast( ' ' as boolean )                                            as IsEditable,
        cast('%' as qprozent)                                             as EmploymentPercentageUnit,
        _AssignmentDetails.IsBlocked                                      as IsBlocked,

        _WorkAssignment,
        _WorkforcePerson,
        _ManagerWorkAssignmentVH,
        _CostCenterText,
        _WorkforceAssignmentStatus,
        _CompanyCodeText
}
//where

//  _AssignmentDetails.CompanyCode is not initial






















































//  as select from I_WorkforceAssignmentDetails as _AssignmentDetails

////  as select from R_WorkAssignmentDetailsAll as _AssignmentDetails

//  //Get the Employment BP (for both old and new BP Models)

//    inner join   R_WorkAssignmentBP         as _BuPaIdentification on _BuPaIdentification.WorkforceAssignment = _AssignmentDetails.WorkforceAssignment

//    inner join   R_WorkAssignmentKeyMap     as _AssignmentKeyMap   on _AssignmentKeyMap.WorkforceAssignment = _AssignmentDetails.WorkforceAssignment

//  association [1..1] to I_BusinessPartner           as _WorkAssignmentBP          on  _WorkAssignmentBP.BusinessPartner = _BuPaIdentification.WorkAssignmentBusinessPartner

//  association [1..1] to I_BusinessPartner           as _WorkforcePersonBP         on  _WorkforcePersonBP.BusinessPartner = _AssignmentKeyMap.BusinessPartner

//

//  association [0..1] to R_ManagerWorkAssignmentVH   as _ManagerWorkAssignmentVH   on  $projection.ManagerEmployee = _ManagerWorkAssignmentVH.ManagerAssignmentExternalID

//                                                                                  and $projection.CompanyCode     = _ManagerWorkAssignmentVH.CompanyCode

//                                                                                  and $projection.ManagerEmployee is not initial

//  //  association [0..1] to R_ManagerWorkAssignmentName as _ManagerWorkAssignmentName on  $projection.ManagerEmployee = _ManagerWorkAssignmentName.BPIdentificationNumber

//

//

//  //You cannot be your own manager

//  //                                                                                  and $projection.WorkAssignment  <> _ManagerWorkAssignmentVH.WorkAssignment

//  association [0..1] to I_CostCenterText            as _CostCenterText            on  $projection.CostCenter            =  _CostCenterText.CostCenter

//                                                                                  and _CostCenterText.ControllingArea   =  'A000'

//                                                                                  and _CostCenterText.ValidityStartDate <= _AssignmentDetails.WorkforceAssgmtEndDate

//                                                                                  and _CostCenterText.ValidityEndDate   >= _AssignmentDetails.WorkforceAssgmtEndDate

//                                                                                  and _CostCenterText.Language          = $session.system_language

//

//  association [0..1] to I_CompanyCode               as _CompanyCodeText           on  $projection.CompanyCode = _CompanyCodeText.CompanyCode

//  association [0..1] to I_WorkforceAssgmtStatusText as _WorkforceAssignmentStatus on  $projection.WorkforceAssignmentStatus = _WorkforceAssignmentStatus.WorkforceAssignmentStatus

//                                                                                  and _WorkforceAssignmentStatus.Language   = $session.system_language

//  association [1..1] to R_WorkforcePersonTP         as _WorkforcePerson           on  $projection.PersonUUID = _WorkforcePerson.PersonUUID

//  association        to parent R_WorkAssignmentTP   as _WorkAssignment            on  $projection.WorkAssignmentUUID = _WorkAssignment.WorkAssignmentUUID

//{

//  key   _WorkAssignmentBP.BusinessPartnerUUID                             as WorkAssignmentUUID,

//  key   _AssignmentDetails.WorkforceAssgmtStartDate                       as StartDate,

//        _AssignmentDetails.WorkforceAssgmtEndDate                         as EndDate,

//        _AssignmentDetails.WorkforceAssignment                            as WorkAssignment,

//        _BuPaIdentification.WorkAssignmentBusinessPartner                 as WorkAssignmentBusinessPartner,

//        _WorkforcePersonBP.BusinessPartnerUUID                            as PersonUUID,

//        _AssignmentDetails.CompanyCode                                    as CompanyCode,

//        _AssignmentDetails.CostCenter                                     as CostCenter,

//        _AssignmentDetails.WorkforcePersonJobCode                         as WorkforcePersonJobCode,

//        _AssignmentDetails.WorkforcePersonJobTitle                        as WorkforcePersonJobTitle,

//        cast ( _AssignmentDetails.WorkforceAssignmentIsPrimary as xfeld ) as WorkforceAssignmentIsPrimary,

//        _AssignmentDetails.ManagerAssignmentID                            as ManagerAssignmentID,

//        _AssignmentDetails.WeeklyWorkingDays                              as WeeklyWorkingDays,

//        _AssignmentDetails.WeeklyWorkingHours                             as WeeklyWorkingHours,

//        _AssignmentDetails.EmploymentPercent                              as EmploymentPercent,

//        _AssignmentDetails.WorkforceAssignmentStatus                      as WorkforceAssignmentStatus,

//        @Consumption.valueHelp:'_ManagerWorkAssignmentVH'

//        _AssignmentDetails.ManagerAssignmentExternalID                    as ManagerEmployee,

//        cast( ' ' as boolean )                                            as IsEditable,

//        cast('%' as qprozent)                                             as EmploymentPercentageUnit,

//

//        _WorkAssignment,

//        _WorkforcePerson,

//        _ManagerWorkAssignmentVH,

//        _CostCenterText,

//        _WorkforceAssignmentStatus,

//        _CompanyCodeText

//}

//where

//  _AssignmentDetails.CompanyCode is not initial

////  and _AssignmentDetails.technical_inactive_ind is initial