I_MaintOrdChangeDocumentDEX

DDL: I_MAINTORDCHANGEDOCUMENTDEX Type: view_entity COMPOSITE Package: IWO1

Maintenance Order Change Document

I_MaintOrdChangeDocumentDEX is a Composite CDS View (Fact) that provides data about "Maintenance Order Change Document" in SAP S/4HANA. It reads from 2 data sources (I_ChangeDocumentItem, I_MaintenanceOrder) and exposes 20 fields with key fields ChangeDocObject, ChangeDocObjectClass, ChangeDocument, DatabaseTable, ChangeDocTableKey. Part of development package IWO1.

Data Sources (2)

SourceAliasJoin Type
I_ChangeDocumentItem ChangeDocumentItem from
I_MaintenanceOrder MaintOrder inner

Annotations (13)

NameValueLevelField
AccessControl.authorizationCheck #MANDATORY view
AccessControl.personalData.blocking #BLOCKED_DATA_EXCLUDED view
EndUserText.label Maintenance Order Change Document view
VDM.lifecycle.contract.type #PUBLIC_LOCAL_API view
VDM.viewType #COMPOSITE view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #XL view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
Metadata.ignorePropagatedAnnotations true view
ObjectModel.modelingPattern #NONE view
ObjectModel.sapObjectNodeType.name MaintenanceOrder view
Analytics.dataCategory #FACT view
Analytics.dataExtraction.enabled true view

Fields (20)

KeyFieldSource TableSource FieldDescription
KEY ChangeDocObject I_ChangeDocumentItem ChangeDocObject
KEY ChangeDocObjectClass I_ChangeDocumentItem ChangeDocObjectClass
KEY ChangeDocument I_ChangeDocumentItem ChangeDocument
KEY DatabaseTable I_ChangeDocumentItem DatabaseTable
KEY ChangeDocTableKey I_ChangeDocumentItem ChangeDocTableKey
KEY ChangeDocDatabaseTableField I_ChangeDocumentItem ChangeDocDatabaseTableField
KEY ChangeDocItemChangeType I_ChangeDocumentItem ChangeDocItemChangeType
MaintenanceOrder I_MaintenanceOrder MaintenanceOrder
MaintenancePlanningPlant I_MaintenanceOrder MaintenancePlanningPlant
MaintenanceOrderType I_MaintenanceOrder MaintenanceOrderType
MaintenancePlannerGroup I_MaintenanceOrder MaintenancePlannerGroup
ChangeDocNewFieldValue I_ChangeDocumentItem ChangeDocNewFieldValue
ChangeDocPreviousFieldValue I_ChangeDocumentItem ChangeDocPreviousFieldValue
ChangeDocPreviousUnit
ChangeDocNewUnit
ChangeDocPreviousCurrency
ChangeDocNewCurrency
CreatedByUser
CreationDate
CreationTime
@AccessControl: { authorizationCheck: #MANDATORY, personalData.blocking: #BLOCKED_DATA_EXCLUDED }
@EndUserText.label: 'Maintenance Order Change Document'
@VDM.lifecycle.contract.type: #PUBLIC_LOCAL_API
@VDM.viewType: #COMPOSITE
@ObjectModel.supportedCapabilities:  [ #EXTRACTION_DATA_SOURCE ] 
@ObjectModel.usageType: {serviceQuality: #C, sizeCategory: #XL, dataClass: #TRANSACTIONAL}
@Metadata.ignorePropagatedAnnotations:true
@ObjectModel.modelingPattern: #NONE
@ObjectModel.sapObjectNodeType.name:'MaintenanceOrder'
@Analytics: {
    dataCategory: #FACT,
    dataExtraction: {
        enabled: true,
        delta.changeDataCapture: {
            mapping:[
                {
                    table: 'cdpos', role: #MAIN,
                    viewElement: ['ChangeDocObject', 'ChangeDocObjectClass', 'ChangeDocument', 'DatabaseTable', 'ChangeDocTableKey', 'ChangeDocDatabaseTableField', 'ChangeDocItemChangeType'],
                    tableElement: ['objectid', 'objectclas', 'changenr', 'tabname', 'tabkey', 'fname', 'chngind' ]
                },
                {
                    table: 'aufk', role:  #LEFT_OUTER_TO_ONE_JOIN,
                    viewElement: ['MaintenanceOrder'],
                    tableElement: ['AUFNR']
                 },
                 {
                    table: 'cdhdr', role: #LEFT_OUTER_TO_ONE_JOIN,
                    viewElement: ['ChangeDocObjectClass', 'ChangeDocObject', 'ChangeDocument'],
                    tableElement: ['objectclas', 'objectid', 'changenr']
                 }
            ]
        }
    }
 }
define view entity I_MaintOrdChangeDocumentDEX
  as select from I_ChangeDocumentItem as ChangeDocumentItem
    inner join   I_MaintenanceOrder   as MaintOrder on MaintOrder.MaintenanceOrder = substring(
      ChangeDocumentItem.ChangeDocObject, 6, 12
    )

{
  key ChangeDocumentItem.ChangeDocObject,
  key ChangeDocumentItem.ChangeDocObjectClass,
  key ChangeDocumentItem.ChangeDocument,
  key ChangeDocumentItem.DatabaseTable,
  key ChangeDocumentItem.ChangeDocTableKey,
  key ChangeDocumentItem.ChangeDocDatabaseTableField,
  key ChangeDocumentItem.ChangeDocItemChangeType,

      MaintOrder.MaintenanceOrder,
      @Consumption.hidden: true
      MaintOrder.MaintenancePlanningPlant,   
      @Consumption.hidden: true  
      MaintOrder.MaintenanceOrderType,
      @Consumption.hidden: true
      MaintOrder.MaintenancePlannerGroup,


      ChangeDocumentItem.ChangeDocNewFieldValue,
      ChangeDocumentItem.ChangeDocPreviousFieldValue,

      cast ( ChangeDocumentItem.ChangeDocPreviousUnit as mmiv_chng_doc_old_unit preserving type )         as ChangeDocPreviousUnit,

      cast ( ChangeDocumentItem.ChangeDocNewUnit as mmiv_chng_doc_new_unit preserving type )              as ChangeDocNewUnit,

      cast ( ChangeDocumentItem.ChangeDocPreviousCurrency as mmiv_chng_doc_old_currency preserving type ) as ChangeDocPreviousCurrency,

      cast ( ChangeDocumentItem.ChangeDocNewCurrency as mmiv_chng_doc_new_currency preserving type )      as ChangeDocNewCurrency,

      ChangeDocumentItem._ChangeDocument.CreatedByUser,
      ChangeDocumentItem._ChangeDocument.CreationDate,
      ChangeDocumentItem._ChangeDocument.CreationTime

}
where

  ChangeDocumentItem.ChangeDocObjectClass = 'ORDER'