R_SrvcContrUserStatusTP

DDL: R_SRVCCONTRUSERSTATUSTP Type: view_entity TRANSACTIONAL Package: CRMS4_SERVICE_CONTRACT_RAP

Service Contract User Status - TP

R_SrvcContrUserStatusTP is a Transactional CDS View that provides data about "Service Contract User Status - TP" in SAP S/4HANA. It reads from 3 data sources (I_ServiceDocument, I_SrvcMgmtObjectStatus, P_StatusObjectWithGUID) and exposes 7 fields with key fields ServiceContract, UserStatus. It has 3 associations to related views. Part of development package CRMS4_SERVICE_CONTRACT_RAP.

Data Sources (3)

SourceAliasJoin Type
I_ServiceDocument ServiceContract inner
I_SrvcMgmtObjectStatus ServiceContractStatus from
P_StatusObjectWithGUID StatusObject inner

Associations (3)

CardinalityTargetAliasCondition
[0..1] I_StatusCode _StatusCode $projection.UserStatus = _StatusCode.StatusCode and $projection.StatusProfile = _StatusCode.StatusProfile
[0..1] I_StatusProfile _StatusProfile $projection.StatusProfile = _StatusProfile.StatusProfile
[1..*] I_UserStatusText _UserStatusText $projection.UserStatus = _UserStatusText.UserStatus and $projection.StatusProfile = _UserStatusText.StatusProfile

Annotations (8)

NameValueLevelField
AccessControl.authorizationCheck #MANDATORY view
VDM.viewType #TRANSACTIONAL view
VDM.lifecycle.contract.type #SAP_INTERNAL_API view
Metadata.ignorePropagatedAnnotations true view
EndUserText.label Service Contract User Status - TP view
ObjectModel.usageType.serviceQuality #B view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.dataClass #TRANSACTIONAL view

Fields (7)

KeyFieldSource TableSource FieldDescription
KEY ServiceContract I_ServiceDocument ServiceDocument
KEY UserStatus I_SrvcMgmtObjectStatus SrvcMgmtObjectStatus
StatusProfile P_StatusObjectWithGUID StatusProfile
_StatusCode _StatusCode
_StatusProfile _StatusProfile
_UserStatusText _UserStatusText
_ServiceContractTP _ServiceContractTP
@AccessControl: {
  authorizationCheck: #MANDATORY,
  personalData.blocking: #('TRANSACTIONAL_DATA')
}
@VDM: {
  viewType: #TRANSACTIONAL,
  lifecycle.contract.type: #SAP_INTERNAL_API
}
@Metadata:
{
  ignorePropagatedAnnotations: true
}
@EndUserText.label: 'Service Contract User Status - TP'
@ObjectModel: {
  semanticKey: ['ServiceContract'],
  usageType: {serviceQuality: #B, sizeCategory: #L, dataClass: #TRANSACTIONAL}
}

define view entity R_SrvcContrUserStatusTP
  as select from I_SrvcMgmtObjectStatus as ServiceContractStatus
  inner join     P_StatusObjectWithGUID as StatusObject     on  ServiceContractStatus.SrvcMgmtObjectUUID = StatusObject.StatusObjectUUID
  inner join     I_ServiceDocument      as ServiceContract  on  ServiceContractStatus.SrvcMgmtObjectUUID = ServiceContract.ServiceDocumentUUID
                                                            and ServiceContract.ServiceObjectType        = 'BUS2000112'
                                                            and ServiceContractStatus.SrvcMgmtObjectStatus like 'E%'
                                                            and ServiceContractStatus.SrvcMgmtObjectStatusIsInactive = ' '


  association to parent R_ServiceContractTP as _ServiceContractTP on $projection.ServiceContract = _ServiceContractTP.ServiceContract


  association [0..1] to I_StatusCode as _StatusCode on  $projection.UserStatus    = _StatusCode.StatusCode
                                                    and $projection.StatusProfile = _StatusCode.StatusProfile

  association [0..1] to I_StatusProfile as _StatusProfile  on  $projection.StatusProfile = _StatusProfile.StatusProfile

  association [1..*] to I_UserStatusText  as _UserStatusText
    on  $projection.UserStatus    = _UserStatusText.UserStatus
    and $projection.StatusProfile = _UserStatusText.StatusProfile

{
  key ServiceContract.ServiceDocument            as ServiceContract,

      @ObjectModel.text.association: '_UserStatusText'
  key ServiceContractStatus.SrvcMgmtObjectStatus as UserStatus,

      StatusObject.StatusProfile,

      /* Associations */
      _StatusCode,
      _StatusProfile,
      _UserStatusText,
      _ServiceContractTP
}