I_NotifActivityCode

DDL: I_NOTIFACTIVITYCODE Type: view_entity BASIC Package: VDM_QM_NOTIFICATION

Notification Activity Code

I_NotifActivityCode is a Basic CDS View that provides data about "Notification Activity Code" in SAP S/4HANA. It reads from 1 data source (qpcd) and exposes 6 fields with key fields NotifActivityCatalog, NotifActivityCodeGroup, NotifActivityCode. Part of development package VDM_QM_NOTIFICATION.

Data Sources (1)

SourceAliasJoin Type
qpcd qpcd from

Annotations (10)

NameValueLevelField
AccessControl.authorizationCheck #CHECK view
VDM.viewType #BASIC view
VDM.lifecycle.contract.type #PUBLIC_LOCAL_API view
ObjectModel.usageType.dataClass #CUSTOMIZING view
ObjectModel.usageType.serviceQuality #A view
ObjectModel.usageType.sizeCategory #S view
ObjectModel.representativeKey NotifActivityCode view
Analytics.technicalName INOTIFACTCD view
EndUserText.label Notification Activity Code view
Metadata.ignorePropagatedAnnotations true view

Fields (6)

KeyFieldSource TableSource FieldDescription
KEY NotifActivityCatalog katalogart
KEY NotifActivityCodeGroup codegruppe
KEY NotifActivityCode code
_NotifActivityCatalog _NotifActivityCatalog
_NotifActivityCodeGroup _NotifActivityCodeGroup
_NotifActivityCodeText _NotifActivityCodeText
@AccessControl.authorizationCheck: #CHECK
@VDM: {
    viewType: #BASIC,
    lifecycle.contract.type: #PUBLIC_LOCAL_API
}

@ObjectModel:{
    usageType:{
        dataClass: #CUSTOMIZING,
        serviceQuality: #A,
        sizeCategory: #S
    },
    representativeKey: 'NotifActivityCode'
}
@Analytics.technicalName: 'INOTIFACTCD'
@EndUserText.label: 'Notification Activity Code'
@Metadata.ignorePropagatedAnnotations: true
define view entity I_NotifActivityCode as select from qpcd 
    
    association[1..1] to I_NotifActivityCatalog     as _NotifActivityCatalog    on  $projection.NotifActivityCatalog = _NotifActivityCatalog.NotifActivityCatalog
    association[1..1] to I_NotifActivityCodeGroup   as _NotifActivityCodeGroup  on  $projection.NotifActivityCatalog = _NotifActivityCodeGroup.NotifActivityCatalog and
                                                                                    $projection.NotifActivityCodeGroup = _NotifActivityCodeGroup.NotifActivityCodeGroup    
    association[0..*] to I_NotifActivityCodeText    as _NotifActivityCodeText   on  $projection.NotifActivityCatalog = _NotifActivityCodeText.NotifActivityCatalog and
                                                                                    $projection.NotifActivityCodeGroup = _NotifActivityCodeText.NotifActivityCodeGroup and
                                                                                    $projection.NotifActivityCode = _NotifActivityCodeText.NotifActivityCode                                                                        
    
{
    @ObjectModel.foreignKey.association: '_NotifActivityCatalog'
    key katalogart  as NotifActivityCatalog,
    @ObjectModel.foreignKey.association: '_NotifActivityCodeGroup'
    key codegruppe  as NotifActivityCodeGroup,
    @ObjectModel.text.association: '_NotifActivityCodeText'
    key code        as NotifActivityCode,
    
    // DB field has three values, but field shall be indicator

    @Semantics.booleanIndicator: true
    case qpcd.inaktiv
      when ' ' then cast( ' ' as vdm_qm_codeisinactive preserving type )
      else cast( 'X' as vdm_qm_codeisinactive preserving type )
    end                                                        as CodeIsInactive,
    
    _NotifActivityCatalog,
    _NotifActivityCodeGroup,
    _NotifActivityCodeText
    
} where qpcd.version = '000001'