R_ManagerWorkAssignmentVH

DDL: R_MANAGERWORKASSIGNMENTVH Type: view_entity COMPOSITE

Manager

R_ManagerWorkAssignmentVH is a Composite CDS View that provides data about "Manager" in SAP S/4HANA. It reads from 1 data source (R_WorkAssignmentBP) and exposes 6 fields with key field WorkAssignmentExternalID. It has 2 associations to related views.

Data Sources (1)

SourceAliasJoin Type
R_WorkAssignmentBP _BuPaIdentification inner

Associations (2)

CardinalityTargetAliasCondition
[1..*] I_WorkforceAssignmentDetails _AssignmentDetails _AssignmentDetails.WorkforceAssignment = _AssignmentKeyMap.WorkforceAssignment and _AssignmentDetails.WorkforceAssignmentStatus = '1'
[1..1] I_BusinessPartner _WorkAssignmentBP _WorkAssignmentBP.BusinessPartner = _BuPaIdentification.WorkAssignmentBusinessPartner

Annotations (12)

NameValueLevelField
ObjectModel.dataCategory #VALUE_HELP view
AccessControl.authorizationCheck #CHECK view
EndUserText.label Manager view
Metadata.ignorePropagatedAnnotations true view
Consumption.ranked true view
ObjectModel.representativeKey WorkAssignmentExternalID view
VDM.viewType #COMPOSITE view
VDM.lifecycle.contract.type #SAP_INTERNAL_API view
Search.searchable true view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #XL view
ObjectModel.usageType.dataClass #MASTER view

Fields (6)

KeyFieldSource TableSource FieldDescription
KEY WorkAssignmentExternalID _AssignmentKeyMap WorkAssignmentExternalID
FullName _WorkAssignmentBP BusinessPartnerFullName
FirstName _WorkAssignmentBP FirstName
LastName _WorkAssignmentBP LastName
CompanyCodeendasCompanyCode
ManagerAssignmentExternalID _AssignmentDetailsManager ManagerAssignmentExternalID
@AbapCatalog.viewEnhancementCategory: [#NONE]
@ObjectModel.dataCategory:#VALUE_HELP
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'Manager'
@Metadata.ignorePropagatedAnnotations: true
@Consumption.ranked:true
@ObjectModel.representativeKey:'WorkAssignmentExternalID'
@VDM: {
  viewType: #COMPOSITE,
  lifecycle.contract.type: #SAP_INTERNAL_API
}
@Search.searchable: true
@ObjectModel.usageType:{
  serviceQuality: #C,
  sizeCategory: #XL,
  dataClass: #MASTER
}
define view entity R_ManagerWorkAssignmentVH
  as select distinct from   R_WorkAssignmentKeyMap       as _AssignmentKeyMap
  //Get the Employment BP (for both old and new BP Models)

    inner join              R_WorkAssignmentBP           as _BuPaIdentification       on _BuPaIdentification.WorkforceAssignment = _AssignmentKeyMap.WorkforceAssignment
    left outer to many join I_WorkforceAssignmentDetails as _AssignmentDetailsManager on  _AssignmentDetailsManager.ManagerAssignmentExternalID = _AssignmentKeyMap.WorkforcePersonUserID
                                                                                      and _AssignmentDetailsManager.WorkforceAssignmentStatus   = '1'
  association [1..*] to I_WorkforceAssignmentDetails as _AssignmentDetails on  _AssignmentDetails.WorkforceAssignment       = _AssignmentKeyMap.WorkforceAssignment
                                                                           and _AssignmentDetails.WorkforceAssignmentStatus = '1'
  association [1..1] to I_BusinessPartner            as _WorkAssignmentBP  on  _WorkAssignmentBP.BusinessPartner = _BuPaIdentification.WorkAssignmentBusinessPartner
{

       @ObjectModel.text.element: ['FullName']
       @Search.defaultSearchElement:true
       @Search.fuzzinessThreshold:0.9
       @UI.textArrangement: #TEXT_FIRST
       @EndUserText: { label: 'Work Agreement ID', quickInfo: 'ID' }
  key  _AssignmentKeyMap.WorkAssignmentExternalID            as WorkAssignmentExternalID,
       @EndUserText: { label: 'Is Manager' }
       case
         when _AssignmentDetailsManager.ManagerAssignmentExternalID is not initial
         then cast( 'X' as boolean )
         else cast( ' ' as boolean )
         end                                                 as WorkforcePersonIsManager,
       @Semantics.text
       @EndUserText: { label: 'Full Name' }
       @UI.hidden: true
       _WorkAssignmentBP.BusinessPartnerFullName             as FullName,
       @Search.ranking:#HIGH
       @Semantics.text
       @Search: { defaultSearchElement: true , fuzzinessThreshold:0.9 }
       _WorkAssignmentBP.FirstName                           as FirstName,
       @Semantics.text
       @Search: { defaultSearchElement: true , fuzzinessThreshold:0.9 }
       _WorkAssignmentBP.LastName                            as LastName,
       @EndUserText: { label: 'Company Code', quickInfo: 'Company Code' }
       case
        when _AssignmentDetailsManager.CompanyCode  is not initial
        then _AssignmentDetailsManager.CompanyCode
        else _AssignmentDetails.CompanyCode
        end                                                  as CompanyCode,
       @UI.hidden: true
       _AssignmentDetailsManager.ManagerAssignmentExternalID as ManagerAssignmentExternalID
       //       @EndUserText: { label: 'Personnel Number' }

       //       _AssignmentKeyMap.WorkforceAssignment                 as WorkAssignment

}
where
  _AssignmentKeyMap.WorkAssignmentExternalID is not initial