R_QualityNotificationPartnerTP

DDL: R_QUALITYNOTIFICATIONPARTNERTP Type: view_entity TRANSACTIONAL

Quality Notification Partner

R_QualityNotificationPartnerTP is a Transactional CDS View that provides data about "Quality Notification Partner" in SAP S/4HANA. It reads from 1 data source (I_QualityNotificationPartner) and exposes 17 fields with key fields QualityNotification, PartnerFunction, NotificationPartnerObjectNmbr. It has 1 association to related views.

Data Sources (1)

SourceAliasJoin Type
I_QualityNotificationPartner _QualityNotificationPartner from

Associations (1)

CardinalityTargetAliasCondition
[0..1] I_PartnerFunctionLangDepdnt _PartnerFunctionLangDepdnt _PartnerFunctionLangDepdnt.PartnerFunction = $projection.PartnerFunction and _PartnerFunctionLangDepdnt.Language = $session.system_language

Annotations (9)

NameValueLevelField
AccessControl.authorizationCheck #MANDATORY view
EndUserText.label Quality Notification Partner view
VDM.viewType #TRANSACTIONAL view
VDM.lifecycle.contract.type #SAP_INTERNAL_API view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.representativeKey NotificationPartnerObjectNmbr view
Metadata.ignorePropagatedAnnotations true view

Fields (17)

KeyFieldSource TableSource FieldDescription
KEY QualityNotification
KEY PartnerFunction
KEY NotificationPartnerObjectNmbr I_QualityNotificationPartner NotificationPartnerObjectNmbr
NotificationPartnerObject I_QualityNotificationPartner NotificationPartnerObject
PartnerFunctionLanguageDepdnt _PartnerFunctionLangDepdnt PartnerFunctionLanguageDepdnt
NotificationObjectType I_QualityNotificationPartner NotificationObjectType
NotificationPartner I_QualityNotificationPartner NotificationPartner
CreatedByUser I_QualityNotificationPartner CreatedByUser
CreationDate I_QualityNotificationPartner CreationDate
CreationTime I_QualityNotificationPartner CreationTime
LastChangedByUser I_QualityNotificationPartner LastChangedByUser
LastChangeDate I_QualityNotificationPartner LastChangeDate
LastChangeTime I_QualityNotificationPartner LastChangeTime
IsDeleted I_QualityNotificationPartner IsDeleted
_QltyNotification _QltyNotification
_PartnerFunction I_QualityNotificationPartner _PartnerFunction
_Notification I_QualityNotificationPartner _Notification
@AbapCatalog.viewEnhancementCategory: [#PROJECTION_LIST]
@AccessControl.authorizationCheck: #MANDATORY
@EndUserText.label: 'Quality Notification Partner'

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

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

@Metadata.ignorePropagatedAnnotations: true

/*+[hideWarning] { "IDS" : [ "KEY_CHECK" ]  } */
define view entity R_QualityNotificationPartnerTP
  as select from I_QualityNotificationPartner as _QualityNotificationPartner

  association to parent R_QltyNotificationTP as _QltyNotification on $projection.QualityNotification = _QltyNotification.QualityNotification

  association [0..1] to I_PartnerFunctionLangDepdnt as _PartnerFunctionLangDepdnt on  _PartnerFunctionLangDepdnt.PartnerFunction = $projection.PartnerFunction
                                                                                  and _PartnerFunctionLangDepdnt.Language        = $session.system_language
  
{
      // The composition/ to parent associations cannot be defined using a linkage via field NotificationStatusObject 

      // (like it is done in I_QualityNotificationPartner) as the fields used in the on condition of the to parent

      // association need to be key fields (activation error if not the case). Thus,  we need to construct the qmnum from

      // the objnr and accept the performance degradation for now

      @ObjectModel.foreignKey.association: '_QltyNotification'
  key cast( substring(_QualityNotificationPartner.NotificationPartnerObject,3,12) as qmnum preserving type ) as QualityNotification, 

      // Partner function id (not language converted)

      @ObjectModel.foreignKey.association: '_PartnerFunction'
  key cast( PartnerFunction as parvw_unv preserving type ) as PartnerFunction,
  key _QualityNotificationPartner.NotificationPartnerObjectNmbr,

      _QualityNotificationPartner.NotificationPartnerObject,

      // Language converted partner function id

      _PartnerFunctionLangDepdnt.PartnerFunctionLanguageDepdnt,

      _QualityNotificationPartner.NotificationObjectType,
      _QualityNotificationPartner.NotificationPartner,

      // Admin Data

      @Semantics.user.createdBy: true
      _QualityNotificationPartner.CreatedByUser,
      @Semantics.systemDate.createdAt: true
      _QualityNotificationPartner.CreationDate,
      @Semantics.time: true
      _QualityNotificationPartner.CreationTime,
      @Semantics.user.lastChangedBy: true
      _QualityNotificationPartner.LastChangedByUser,
      @Semantics.systemDate.lastChangedAt: true
      _QualityNotificationPartner.LastChangeDate,
      @Semantics.time: true
      _QualityNotificationPartner.LastChangeTime,

      @Semantics.booleanIndicator: true
      _QualityNotificationPartner.IsDeleted,


      // Associations

      _QltyNotification,
      _QualityNotificationPartner._PartnerFunction,
     
      // For auth check mapping role

      _QualityNotificationPartner._Notification

}