I_QltyNotificationWithStatus

DDL: I_QLTYNOTIFICATIONWITHSTATUS SQL: IQLTYNOTIFWSTS Type: view COMPOSITE

Quality Notification with Status

I_QltyNotificationWithStatus is a Composite CDS View that provides data about "Quality Notification with Status" in SAP S/4HANA. It reads from 1 data source (I_QltyNotification) and exposes 6 fields with key field QualityNotification. It has 1 association to related views.

Data Sources (1)

SourceAliasJoin Type
I_QltyNotification I_QltyNotification from

Associations (1)

CardinalityTargetAliasCondition
[0..1] I_QltyNotificationStatus _Status0161 $projection.NotificationStatusObject = _Status0161.StatusObject and _Status0161.StatusCode = 'I0161'

Annotations (12)

NameValueLevelField
AbapCatalog.sqlViewName IQLTYNOTIFWSTS view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #CHECK view
AccessControl.personalData.blocking #NOT_REQUIRED view
EndUserText.label Quality Notification with Status view
ClientHandling.algorithm #SESSION_VARIABLE view
VDM.viewType #COMPOSITE view
ObjectModel.representativeKey QualityNotification view
ObjectModel.compositionRoot true view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.serviceQuality #C view

Fields (6)

KeyFieldSource TableSource FieldDescription
KEY QualityNotification I_QltyNotification QualityNotification
NotificationStatusObject I_QltyNotification NotificationStatusObject
IsBusinessPurposeCompleted I_QltyNotification IsBusinessPurposeCompleted
NotificationOrigin I_QltyNotification NotificationOrigin
NotificationType I_QltyNotification NotificationType
Plant I_QltyNotification Plant
@AbapCatalog.sqlViewName: 'IQLTYNOTIFWSTS'
@AbapCatalog.compiler.compareFilter: true

@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #NOT_REQUIRED

@EndUserText.label: 'Quality Notification with Status'
@ClientHandling.algorithm: #SESSION_VARIABLE
@VDM.viewType: #COMPOSITE

@ObjectModel.representativeKey: 'QualityNotification'
@ObjectModel.compositionRoot: true
@ObjectModel.usageType: {
    dataClass: #TRANSACTIONAL,
    sizeCategory: #L,
    serviceQuality: #C
}

define view I_QltyNotificationWithStatus as select from I_QltyNotification 

  //=== Association to status views

  association [0..1] to I_QltyNotificationStatus as _Status0161 on $projection.NotificationStatusObject = _Status0161.StatusObject
                                                               and _Status0161.StatusCode               = 'I0161'

{

//=== Key Fields

  key I_QltyNotification.QualityNotification,

//=== Common Fields

      I_QltyNotification.NotificationStatusObject,
      @Consumption.hidden: true
      I_QltyNotification.IsBusinessPurposeCompleted,
      @Consumption.hidden: true
      I_QltyNotification.NotificationOrigin,
      @Consumption.hidden: true
      I_QltyNotification.NotificationType,      
      @Consumption.hidden: true
      I_QltyNotification.Plant,
      
//=== Status Fields

      //=== derive notification is external caused indicator via jest status.

      cast(case when _Status0161.StatusCode is null
                then ' '
                else 'X'
           end as vdm_notificationisextcaused preserving type)                          as NotificationIsExtCaused,
           
      //=== derive notification completion indicator via phase. A notification is completed if phase = 4 (completed) or if phase = 5 (deleted)

      cast(case when I_QltyNotification.NotifProcessingPhase = '4' or I_QltyNotification.NotifProcessingPhase = '5'
                then 'X'
                else ' '
           end as vdm_notificationiscompleted preserving type)                          as NotificationIsCompleted,
      
      //=== derive notification deletion indicator via phase. A notification is deleted if phase = 5 (deleted)  

      cast(case when I_QltyNotification.NotifProcessingPhase = '5'
                then 'X'
                else ' '
           end as vdm_notificationisdeleted preserving type)                            as NotificationIsDeleted          
}