I_SubscrpnContrUserStatus

DDL: I_SUBSCRPNCONTRUSERSTATUS Type: view_entity COMPOSITE

Contract User Status

I_SubscrpnContrUserStatus is a Composite CDS View that provides data about "Contract User Status" in SAP S/4HANA. It reads from 3 data sources (P_StatusObjectWithGUID, I_SubscriptionContract, I_SrvcMgmtObjectStatus) and exposes 5 fields with key fields SubscriptionContract, UserStatus. It has 2 associations to related views.

Data Sources (3)

SourceAliasJoin Type
P_StatusObjectWithGUID StatusObject inner
I_SubscriptionContract SubscriptionContract inner
I_SrvcMgmtObjectStatus SubscrpnContrSts from

Associations (2)

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

Annotations (8)

NameValueLevelField
AccessControl.authorizationCheck #PRIVILEGED_ONLY view
EndUserText.label Contract User Status view
VDM.viewType #COMPOSITE view
VDM.lifecycle.contract.type #SAP_INTERNAL_API view
Metadata.ignorePropagatedAnnotations true view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.dataClass #TRANSACTIONAL view

Fields (5)

KeyFieldSource TableSource FieldDescription
KEY SubscriptionContract I_SubscriptionContract SubscriptionContract
KEY UserStatus I_SrvcMgmtObjectStatus SrvcMgmtObjectStatus
StatusProfile P_StatusObjectWithGUID StatusProfile
_StatusCode _StatusCode
_StatusProfile _StatusProfile
@AbapCatalog.viewEnhancementCategory: [#NONE]
@AccessControl.authorizationCheck: #PRIVILEGED_ONLY
@EndUserText.label: 'Contract User Status'

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

@Metadata.ignorePropagatedAnnotations: true
@ObjectModel.usageType:{
  serviceQuality: #C,
  sizeCategory: #L,
  dataClass: #TRANSACTIONAL
}
define view entity I_SubscrpnContrUserStatus
  as select from I_SrvcMgmtObjectStatus as SubscrpnContrSts
    inner join   P_StatusObjectWithGUID as StatusObject  on SubscrpnContrSts.SrvcMgmtObjectUUID = StatusObject.StatusObjectUUID
    inner join   I_SubscriptionContract  as SubscriptionContract on  SubscrpnContrSts.SrvcMgmtObjectUUID = SubscriptionContract.SubscriptionContractUUID
                                                                 and SubscrpnContrSts.SrvcMgmtObjectStatus           like 'E%'
                                                                 and SubscrpnContrSts.SrvcMgmtObjectStatusIsInactive = ' '

  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
{
  key SubscriptionContract.SubscriptionContract,
      @ObjectModel.foreignKey.association: '_StatusCode'
  key SubscrpnContrSts.SrvcMgmtObjectStatus as UserStatus,

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

      /* Associations */
      _StatusCode,
      _StatusProfile
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_SRVCMGMTOBJECTSTATUS",
"I_SUBSCRIPTIONCONTRACT",
"P_STATUSOBJECTWITHGUID"
],
"ASSOCIATED":
[
"I_STATUSCODE",
"I_STATUSPROFILE"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/