R_BusSolnOrdItmUserStatusTP

DDL: R_BUSSOLNORDITMUSERSTATUSTP Type: view_entity TRANSACTIONAL Package: CRMS4_SOLUTION_ORDER_RAP

Business Solution Order User Status - TP

R_BusSolnOrdItmUserStatusTP is a Transactional CDS View that provides data about "Business Solution Order User Status - TP" in SAP S/4HANA. It reads from 3 data sources (I_ServiceDocumentItem, I_SrvcMgmtObjectStatus, P_StatusObjectWithGUID) and exposes 9 fields with key fields BusinessSolutionOrder, BusinessSolutionOrderItem, UserStatus. It has 4 associations to related views. Part of development package CRMS4_SOLUTION_ORDER_RAP.

Data Sources (3)

SourceAliasJoin Type
I_ServiceDocumentItem BusinessSolutionOrderItem inner
I_SrvcMgmtObjectStatus SolutionOrderItemStatus from
P_StatusObjectWithGUID StatusObject inner

Associations (4)

CardinalityTargetAliasCondition
[0..1] R_BusinessSolutionOrderTP _BusinessSolutionOrderTP $projection.BusinessSolutionOrder = _BusinessSolutionOrderTP.BusinessSolutionOrder
[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 #CHECK view
Metadata.ignorePropagatedAnnotations true view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #L view
VDM.viewType #TRANSACTIONAL view
VDM.lifecycle.contract.type #SAP_INTERNAL_API view
EndUserText.label Business Solution Order User Status - TP view

Fields (9)

KeyFieldSource TableSource FieldDescription
KEY BusinessSolutionOrder I_ServiceDocumentItem ServiceDocument
KEY BusinessSolutionOrderItem I_ServiceDocumentItem ServiceDocumentItem
KEY UserStatus I_SrvcMgmtObjectStatus SrvcMgmtObjectStatus
StatusProfile P_StatusObjectWithGUID StatusProfile
_StatusCode _StatusCode
_StatusProfile _StatusProfile
_BusinessSolutionOrderItemTP _BusinessSolutionOrderItemTP
_BusinessSolutionOrderTP _BusinessSolutionOrderTP
_UserStatusText _UserStatusText
@AccessControl: {
  authorizationCheck: #CHECK,
  personalData.blocking: #('TRANSACTIONAL_DATA')
}

@Metadata.ignorePropagatedAnnotations: true

@ObjectModel: {
  usageType:{
    dataClass:      #TRANSACTIONAL,
    serviceQuality: #C,
    sizeCategory:   #L
    }
}

@VDM: {
  viewType: #TRANSACTIONAL,
  lifecycle.contract.type: #SAP_INTERNAL_API
}

@EndUserText.label: 'Business Solution Order User Status - TP'

define view entity R_BusSolnOrdItmUserStatusTP
  as select from I_SrvcMgmtObjectStatus as SolutionOrderItemStatus
    inner join   P_StatusObjectWithGUID as StatusObject              on SolutionOrderItemStatus.SrvcMgmtObjectUUID = StatusObject.StatusObjectUUID

    inner join   I_ServiceDocumentItem  as BusinessSolutionOrderItem on  SolutionOrderItemStatus.SrvcMgmtObjectUUID             =    BusinessSolutionOrderItem.ServiceDocumentItemUUID
                                                                     and BusinessSolutionOrderItem.ServiceObjectType            =    'BUS2000172'
                                                                     and SolutionOrderItemStatus.SrvcMgmtObjectStatus           like 'E%'
                                                                     and SolutionOrderItemStatus.SrvcMgmtObjectStatusIsInactive =    ' '

  association        to parent R_BusinessSolutionOrderItemTP as _BusinessSolutionOrderItemTP on  $projection.BusinessSolutionOrder     = _BusinessSolutionOrderItemTP.BusinessSolutionOrder
                                                                                             and $projection.BusinessSolutionOrderItem = _BusinessSolutionOrderItemTP.BusinessSolutionOrderItem

  association [0..1] to R_BusinessSolutionOrderTP            as _BusinessSolutionOrderTP     on  $projection.BusinessSolutionOrder = _BusinessSolutionOrderTP.BusinessSolutionOrder

  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 BusinessSolutionOrderItem.ServiceDocument     as BusinessSolutionOrder,
  key BusinessSolutionOrderItem.ServiceDocumentItem as BusinessSolutionOrderItem,

      @ObjectModel.foreignKey.association: '_StatusCode'
      @ObjectModel.text.association: '_UserStatusText'
  key SolutionOrderItemStatus.SrvcMgmtObjectStatus  as UserStatus,

      @ObjectModel.foreignKey.association: '_StatusProfile'
      StatusObject.StatusProfile                    as StatusProfile,

      // Associations

      _StatusCode,
      _StatusProfile,
      _BusinessSolutionOrderItemTP,
      _BusinessSolutionOrderTP,
      _UserStatusText
}