R_WorkAssignmentDetailsTP

DDL: R_WORKASSIGNMENTDETAILSTP Type: view_entity TRANSACTIONAL

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 (I_WorkforceAssignmentDetails, R_WorkAssignmentKeyMap, R_WorkAssignmentBP) and exposes 25 fields with key fields WorkAssignmentUUID, StartDate. It has 7 associations to related views.

Data Sources (3)

SourceAliasJoin Type
I_WorkforceAssignmentDetails _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.ValidityStartDate <= _AssignmentDetails.WorkforceAssgmtEndDate and _CostCenterText.ValidityEndDate >= _AssignmentDetails.WorkforceAssgmtEndDate
[0..1] I_CompanyCode _CompanyCodeText $projection.CompanyCode = _CompanyCodeText.CompanyCode
[0..1] I_WorkforceAssignmentStatus _WorkforceAssignmentStatus $projection.WorkforceAssignmentStatus = _WorkforceAssignmentStatus.WorkforceAssignmentStatus
[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 (25)

KeyFieldSource TableSource FieldDescription
KEY WorkAssignmentUUID _WorkAssignmentBP BusinessPartnerUUID
KEY StartDate I_WorkforceAssignmentDetails WorkforceAssgmtStartDate
EndDate I_WorkforceAssignmentDetails WorkforceAssgmtEndDate
WorkAssignment I_WorkforceAssignmentDetails WorkforceAssignment
WorkAssignmentBusinessPartner R_WorkAssignmentBP WorkAssignmentBusinessPartner
PersonUUID _WorkforcePersonBP BusinessPartnerUUID
CompanyCode I_WorkforceAssignmentDetails CompanyCode
CostCenter I_WorkforceAssignmentDetails CostCenter
WorkforcePersonJobCode I_WorkforceAssignmentDetails WorkforcePersonJobCode
WorkforcePersonJobTitle I_WorkforceAssignmentDetails WorkforcePersonJobTitle
WorkforceAssignmentIsPrimary
ManagerAssignmentID I_WorkforceAssignmentDetails ManagerAssignmentID
WeeklyWorkingDays I_WorkforceAssignmentDetails WeeklyWorkingDays
WeeklyWorkingHours I_WorkforceAssignmentDetails WeeklyWorkingHours
EmploymentPercent I_WorkforceAssignmentDetails EmploymentPercent
WorkforceAssignmentStatus I_WorkforceAssignmentDetails WorkforceAssignmentStatus
ManagerEmployee I_WorkforceAssignmentDetails ManagerAssignmentExternalID
IsEditable
EmploymentPercentageUnit
_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
}
define view entity R_WorkAssignmentDetailsTP
  as select from I_WorkforceAssignmentDetails 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
  //You cannot be your own manager

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

  association [0..1] to I_CostCenter                as _CostCenterText            on  $projection.CompanyCode           =  _CostCenterText.CompanyCode
                                                                                  and $projection.CostCenter            =  _CostCenterText.CostCenter
                                                                                  and _CostCenterText.ValidityStartDate <= _AssignmentDetails.WorkforceAssgmtEndDate
                                                                                  and _CostCenterText.ValidityEndDate   >= _AssignmentDetails.WorkforceAssgmtEndDate
  association [0..1] to I_CompanyCode               as _CompanyCodeText           on  $projection.CompanyCode = _CompanyCodeText.CompanyCode
  association [0..1] to I_WorkforceAssignmentStatus as _WorkforceAssignmentStatus on  $projection.WorkforceAssignmentStatus = _WorkforceAssignmentStatus.WorkforceAssignmentStatus
  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
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_BUSINESSPARTNER",
"I_WORKFORCEASSIGNMENTDETAILS",
"R_WORKASSIGNMENTBP",
"R_WORKASSIGNMENTKEYMAP"
],
"ASSOCIATED":
[
"I_COMPANYCODE",
"I_COSTCENTER",
"I_WORKFORCEASSIGNMENTSTATUS",
"R_MANAGERWORKASSIGNMENTVH",
"R_WORKASSIGNMENTTP",
"R_WORKFORCEPERSONTP"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/