I_ShiftNote

DDL: I_SHIFTNOTE Type: view_entity COMPOSITE

Shift Note

I_ShiftNote is a Composite CDS View that provides data about "Shift Note" in SAP S/4HANA. It reads from 1 data source (I_Notification) and exposes 28 fields with key field ShiftNoteID. It has 7 associations to related views.

Data Sources (1)

SourceAliasJoin Type
I_Notification sn from

Associations (7)

CardinalityTargetAliasCondition
[1..1] I_User _CreatedByUser $projection.CreatedByUser = _CreatedByUser.UserID
[0..1] I_User _LastChangedByUser $projection.LastChangedByUser = _LastChangedByUser.UserID
[0..1] I_User _ReportedByUser $projection.ReportedByUser = _ReportedByUser.UserID
[1..1] I_NotificationType _ShiftNoteType $projection.ShiftNoteType = _ShiftNoteType.NotificationType
[0..1] I_WorkCenter _WorkCenter $projection.ShiftNoteWorkCenterInternalID = _WorkCenter.WorkCenterInternalID and $projection.ShiftNoteWorkCenterType = _WorkCenter.WorkCenterTypeCode -- to reference
[0..1] I_ShiftNoteReferenceObject _ReferenceObject $projection.ShiftNoteID = _ReferenceObject.ShiftNoteID -- to documents
[0..*] I_ShiftNoteDocumentLink _DocumentLink $projection.ShiftNoteID = _DocumentLink.ShiftNoteID

Annotations (12)

NameValueLevelField
AccessControl.authorizationCheck #MANDATORY view
AccessControl.personalData.blocking #NOT_REQUIRED view
Consumption.ranked true view
Metadata.ignorePropagatedAnnotations true view
ObjectModel.modelingPattern #NONE view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
Search.searchable true view
VDM.lifecycle.contract.type #PUBLIC_LOCAL_API view
VDM.viewType #COMPOSITE view
EndUserText.label Shift Note view

Fields (28)

KeyFieldSource TableSource FieldDescription
KEY ShiftNoteID
CreatedByUser I_Notification CreatedByUser
CreationDate I_Notification CreationDate
LastChangedByUser I_Notification LastChangedByUser
LastChangedDate I_Notification LastChangedDate
ChangedDateTime I_Notification ChangedDateTime
ReportingDate I_Notification NotificationReportingDate
ReportedByUser I_Notification ReportedByUser
ShiftNoteIsMarkedForDeletion
ShiftNoteType
ShiftNoteText
NotificationCodeGroup I_Notification NotificationCodeGroup
ShiftNoteOrigin I_Notification ShiftNoteOrigin
ShiftNoteWorkCenterType I_Notification ShiftNoteWorkCenterType
ShiftNoteWorkCenterInternalID I_Notification ShiftNoteWorkCenterInternalID
WorkCenter _WorkCenter WorkCenter
Plant _WorkCenter Plant
FunctionalLocation
Equipment I_Notification Equipment
_CreatedByUser _CreatedByUser
_LastChangedByUser _LastChangedByUser
_ReportedByUser _ReportedByUser
_WorkCenter _WorkCenter
_ShiftNoteType _ShiftNoteType
_ReferenceObject _ReferenceObject
_NotificationCatalog
_NotificationCodeGroup
_NotificationCode
@AccessControl.authorizationCheck: #MANDATORY
@AccessControl.personalData.blocking: #NOT_REQUIRED
@AccessControl.privilegedAssociations: ['_CreatedByUser', '_LastChangedByUser', '_ReportedByUser']
@Consumption.ranked: true
@Metadata.ignorePropagatedAnnotations: true
@ObjectModel.modelingPattern: #NONE
@ObjectModel.supportedCapabilities: [#CDS_MODELING_DATA_SOURCE, #SQL_DATA_SOURCE, #SEARCHABLE_ENTITY]
@ObjectModel.usageType: {serviceQuality: #C, sizeCategory: #L, dataClass: #TRANSACTIONAL}
@Search.searchable: true
@VDM.lifecycle.contract.type: #PUBLIC_LOCAL_API
@VDM.viewType: #COMPOSITE
@EndUserText.label: 'Shift Note'

define view entity I_ShiftNote
    as select from I_Notification as sn
    association [1..1] to I_User             as _CreatedByUser     on  $projection.CreatedByUser = _CreatedByUser.UserID
    association [0..1] to I_User             as _LastChangedByUser on  $projection.LastChangedByUser = _LastChangedByUser.UserID
    association [0..1] to I_User             as _ReportedByUser    on  $projection.ReportedByUser = _ReportedByUser.UserID
    association [1..1] to I_NotificationType as _ShiftNoteType     on  $projection.ShiftNoteType = _ShiftNoteType.NotificationType
    association [0..1] to I_WorkCenter       as _WorkCenter        on  $projection.ShiftNoteWorkCenterInternalID = _WorkCenter.WorkCenterInternalID
                                                                   and $projection.ShiftNoteWorkCenterType       = _WorkCenter.WorkCenterTypeCode
--  to reference
    association [0..1] to I_ShiftNoteReferenceObject as _ReferenceObject on $projection.ShiftNoteID = _ReferenceObject.ShiftNoteID
--  to documents
    association [0..*] to I_ShiftNoteDocumentLink    as _DocumentLink    on $projection.ShiftNoteID = _DocumentLink.ShiftNoteID

{
      @ObjectModel.text.element: ['ShiftNoteText']
      @Search: {defaultSearchElement: true, ranking: #HIGH, fuzzinessThreshold: 0.9}
  key cast(sn.Notification as cocf_sn_id preserving type)         as ShiftNoteID,

      // Admin data

      @Semantics.user.createdBy: true
      sn.CreatedByUser,
      @Semantics.systemDate.createdAt: true
      sn.CreationDate,
      @Semantics.user.lastChangedBy: true
      sn.LastChangedByUser,
      @Semantics.systemDate.lastChangedAt: true
      sn.LastChangedDate,
      sn.ChangedDateTime,
      sn.NotificationReportingDate                                as ReportingDate,
      sn.ReportedByUser,
      cast(sn.IsDeleted as aufloekz preserving type)              as ShiftNoteIsMarkedForDeletion,

      // Notification data

      @ObjectModel.foreignKey.association: '_ShiftNoteType'
      cast(sn.NotificationType as cocf_sn_sntype preserving type) as ShiftNoteType,
      @Semantics.text: true
      cast(sn.NotificationText as cocf_sn_sntext preserving type) as ShiftNoteText,
      @Consumption.hidden: true
      sn.NotificationCodeGroup,

      // Shift note data

      sn.ShiftNoteOrigin,
      @Consumption.hidden: true
      sn.ShiftNoteWorkCenterType,
      @Consumption.hidden: true
      sn.ShiftNoteWorkCenterInternalID,
      _WorkCenter.WorkCenter     as WorkCenter,
      _WorkCenter.Plant          as Plant,
      cast(sn.FunctionalLocation as ps_s4_tplnr preserving type)  as FunctionalLocation,
      sn.Equipment,

      // Associations

      _CreatedByUser,
      _LastChangedByUser,
      _ReportedByUser,
      _WorkCenter,
      _ShiftNoteType,
      _ReferenceObject,
      _DocumentLink
--    sn._NotificationCatalog,
--    sn._NotificationCodeGroup,
--    sn._NotificationCode
}
where ShiftNoteOrigin = '01'
   or ShiftNoteOrigin = '02';
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_NOTIFICATION",
"I_WORKCENTER"
],
"ASSOCIATED":
[
"I_NOTIFICATIONTYPE",
"I_SHIFTNOTEDOCUMENTLINK",
"I_SHIFTNOTEREFERENCEOBJECT",
"I_USER",
"I_WORKCENTER"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/