I_MfgOrderItemSerialNumber
Manufacturing Order Item Serial Number
I_MfgOrderItemSerialNumber is a Composite CDS View (Dimension) that provides data about "Manufacturing Order Item Serial Number" in SAP S/4HANA. It reads from 2 data sources (I_ManufacturingOrderItem, I_MaintenanceItemObject) and exposes 30 fields with key fields ManufacturingOrder, ManufacturingOrderItem. It has 4 associations to related views. Part of development package VDM_PP_SFC.
Data Sources (2)
| Source | Alias | Join Type |
|---|---|---|
| I_ManufacturingOrderItem | item | from |
| I_MaintenanceItemObject | objk | inner |
Associations (4)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [1..1] | I_ManufacturingOrderItem | _MfgOrderItem | $projection.ManufacturingOrder = _MfgOrderItem.ManufacturingOrder and $projection.ManufacturingOrderItem = _MfgOrderItem.ManufacturingOrderItem |
| [1..1] | I_Equipment | _Equipment | $projection.Equipment = _Equipment.Equipment |
| [1..1] | I_Equipment | _Equipment_2 | $projection.Equipment_2 = _Equipment_2.Equipment -- start new associations for full coverage of text relations |
| [0..*] | I_EquipmentText | _EquipmentText | $projection.Equipment_2 = _EquipmentText.Equipment -- end new associations for full coverage of text relations |
Annotations (15)
| Name | Value | Level | Field |
|---|---|---|---|
| AccessControl.authorizationCheck | #MANDATORY | view | |
| AccessControl.personalData.blocking | #NOT_REQUIRED | view | |
| Analytics.dataCategory | #DIMENSION | view | |
| Analytics.technicalName | IPPMFGORDITMSERN | view | |
| Analytics.internalName | #LOCAL | view | |
| Metadata.allowExtensions | true | view | |
| Metadata.ignorePropagatedAnnotations | true | view | |
| ObjectModel.modelingPattern | #NONE | view | |
| ObjectModel.representativeKey | SerialNumber | view | |
| ObjectModel.usageType.serviceQuality | #C | view | |
| ObjectModel.usageType.sizeCategory | #XL | view | |
| ObjectModel.usageType.dataClass | #MIXED | view | |
| VDM.lifecycle.contract.type | #PUBLIC_LOCAL_API | view | |
| VDM.viewType | #COMPOSITE | view | |
| EndUserText.label | Manufacturing Order Item Serial Number | view |
Fields (30)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | ManufacturingOrder | I_ManufacturingOrderItem | ManufacturingOrder | |
| KEY | ManufacturingOrderItem | I_ManufacturingOrderItem | ManufacturingOrderItem | |
| MaintenanceItemObjectList | I_MaintenanceItemObject | MaintenanceItemObjectList | ||
| MaintenanceItemObject | I_MaintenanceItemObject | MaintenanceItemObject | ||
| Equipment | I_MaintenanceItemObject | Equipment | ||
| Equipment_2 | ||||
| Product | I_ManufacturingOrderItem | Product | ||
| ProductionPlant | I_ManufacturingOrderItem | ProductionPlant | ||
| PlanningPlant | I_ManufacturingOrderItem | PlanningPlant | ||
| MRPController | I_ManufacturingOrderItem | MRPController | ||
| ProductionSupervisor | I_ManufacturingOrderItem | ProductionSupervisor | ||
| ManufacturingOrderCategory | I_ManufacturingOrderItem | ManufacturingOrderCategory | ||
| ManufacturingOrderType | I_ManufacturingOrderItem | ManufacturingOrderType | ||
| DocumentDate | sern | SerialNumberAssignmentDate | ||
| _MfgOrder | I_ManufacturingOrderItem | _MfgOrder | ||
| _MfgOrderItem | _MfgOrderItem | |||
| _MfgOrderCategory | I_ManufacturingOrderItem | _MfgOrderCategory | ||
| _MfgOrderType | I_ManufacturingOrderItem | _MfgOrderType | ||
| _Equipment | _Equipment | |||
| _Equipment_2 | _Equipment_2 | |||
| _Product | I_ManufacturingOrderItem | _Product | ||
| _ProductionPlant | I_ManufacturingOrderItem | _ProductionPlant | ||
| _ProductionSupervisor | I_ManufacturingOrderItem | _ProductionSupervisor | ||
| _MRPController | I_ManufacturingOrderItem | _MRPController | ||
| _MRPPlant | I_ManufacturingOrderItem | _MRPPlant | ||
| _SerialNumberProfile | I_ManufacturingOrderItem | _SerialNumberProfile | ||
| _EquipmentText | _EquipmentText | |||
| _ProductText | I_ManufacturingOrderItem | _ProductText | ||
| _ProductionPlantText | I_ManufacturingOrderItem | _ProductionPlantText | ||
| _PlanningPlantText | I_ManufacturingOrderItem | _PlanningPlantText |
@AccessControl.authorizationCheck: #MANDATORY
@AccessControl.personalData.blocking: #NOT_REQUIRED
@AccessControl.privilegedAssociations: ['_MRPController', '_ProductionSupervisor']
@Analytics.dataCategory: #DIMENSION
@Analytics.technicalName: 'IPPMFGORDITMSERN'
@Analytics.internalName: #LOCAL
@Metadata.allowExtensions: true
@Metadata.ignorePropagatedAnnotations: true
@ObjectModel.modelingPattern: #NONE
@ObjectModel.supportedCapabilities: [#SQL_DATA_SOURCE, #CDS_MODELING_DATA_SOURCE, #CDS_MODELING_ASSOCIATION_TARGET, #ANALYTICAL_DIMENSION]
@ObjectModel.representativeKey: 'SerialNumber'
@ObjectModel.semanticKey: ['ManufacturingOrder', 'ManufacturingOrderItem', 'SerialNumber']
@ObjectModel.usageType: {serviceQuality: #C, sizeCategory: #XL, dataClass: #MIXED}
@VDM.lifecycle.contract.type: #PUBLIC_LOCAL_API
@VDM.viewType: #COMPOSITE
@EndUserText.label: 'Manufacturing Order Item Serial Number'
define view entity I_MfgOrderItemSerialNumber
as select from I_ManufacturingOrderItem as item
inner join ( I_MaintObjListLogisticsOrder as sern
inner join I_MaintenanceItemObject as objk on objk.MaintenanceItemObjectList = sern.MaintenanceObjectList )
on sern.LogisticsOrder = item.ManufacturingOrder
and sern.OrderItem = item.ManufacturingOrderItem
association [1..1] to I_ManufacturingOrderItem as _MfgOrderItem on $projection.ManufacturingOrder = _MfgOrderItem.ManufacturingOrder
and $projection.ManufacturingOrderItem = _MfgOrderItem.ManufacturingOrderItem
association [1..1] to I_Equipment as _Equipment on $projection.Equipment = _Equipment.Equipment // deprecated
association [1..1] to I_Equipment as _Equipment_2 on $projection.Equipment_2 = _Equipment_2.Equipment
-- start new associations for full coverage of text relations
association [0..*] to I_EquipmentText as _EquipmentText on $projection.Equipment_2 = _EquipmentText.Equipment
-- end new associations for full coverage of text relations
{
// Key
@Consumption.valueHelpDefinition: [ { entity: { name: 'I_MfgOrderStdVH', element: 'ManufacturingOrder' } } ]
@ObjectModel.foreignKey.association: '_MfgOrder'
key item.ManufacturingOrder,
@ObjectModel.foreignKey.association: '_MfgOrderItem'
key item.ManufacturingOrderItem,
-- representative key
key cast(objk.SerialNumber as gernr preserving type) as SerialNumber,
// Technical Key
objk.MaintenanceItemObjectList, //OBKNR
objk.MaintenanceItemObject, //OBZAE
// Assignments
@API.element.releaseState: #DEPRECATED
@API.element.successor: 'Equipment_2'
@ObjectModel.foreignKey.association: '_Equipment'
objk.Equipment, // w/o conv. exit
@Consumption.valueHelpDefinition: [ { entity: { name: 'I_EquipmentStdVH', element: 'Equipment' } } ]
@ObjectModel.foreignKey.association: '_Equipment_2'
@ObjectModel.text.association: '_EquipmentText'
cast(objk.Equipment as equnr preserving type) as Equipment_2, // with conv. exit
@Consumption.valueHelpDefinition: [ { entity: { name: 'I_ProductStdVH', element: 'Product' } } ]
@ObjectModel.foreignKey.association: '_Product'
@ObjectModel.text.association: '_ProductText'
item.Product,
@Consumption.valueHelpDefinition: [ { entity: { name: 'I_PlantStdVH', element: 'Plant' } } ]
@ObjectModel.foreignKey.association: '_ProductionPlant'
item.ProductionPlant,
@Consumption.valueHelpDefinition: [ { entity: { name: 'I_PlantStdVH', element: 'Plant' } } ]
@ObjectModel.foreignKey.association: '_MRPPlant'
item.PlanningPlant,
@ObjectModel.foreignKey.association: '_MRPController'
item.MRPController,
@ObjectModel.foreignKey.association: '_ProductionSupervisor'
item.ProductionSupervisor,
@ObjectModel.foreignKey.association: '_MfgOrderCategory'
item.ManufacturingOrderCategory,
@ObjectModel.foreignKey.association: '_MfgOrderType'
item.ManufacturingOrderType,
-- @ObjectModel.foreignKey.association: '_SerialNumberProfile'
item.SerialNumberAssgmtProfile as SerialNumberProfile,
// Date
@Semantics.businessDate.at: true
sern.SerialNumberAssignmentDate as DocumentDate,
// Associations
@ObjectModel.association.type: [#TO_COMPOSITION_ROOT]
item._MfgOrder,
@ObjectModel.association.type: [#TO_COMPOSITION_PARENT]
_MfgOrderItem,
item._MfgOrderCategory,
item._MfgOrderType,
@API.element.releaseState: #DEPRECATED
@API.element.successor: '_Equipment_2'
_Equipment,
_Equipment_2,
item._Product,
item._ProductionPlant,
item._ProductionSupervisor,
item._MRPController,
item._MRPPlant,
item._SerialNumberProfile,
// Text relations
_EquipmentText,
item._ProductText,
item._ProductionPlantText,
item._PlanningPlantText
};
Learn More
- What Is a CDS View in SAP S/4HANA?
- Types of CDS Views: Basic, Composite, Consumption, and Transactional
- SAP Tables vs CDS Views — Key Differences
- Understanding Data Lineage in SAP S/4HANA
- VDM (Virtual Data Model) in SAP S/4HANA Explained
- CDS View Annotations — A Complete Guide
- CDS View Field Mapping and Associations
- Understanding the SAP S/4HANA Data Model
- CDS View Extensions and Custom Fields in SAP S/4HANA
- Released APIs and Stability Contracts in SAP S/4HANA