I_MfgOrderSplitChildOrder
Child Order of Manufacturing Order Split
I_MfgOrderSplitChildOrder is a Basic CDS View that provides data about "Child Order of Manufacturing Order Split" in SAP S/4HANA. It reads from 3 data sources (above, I_LogisticsOrderBasic, afsprel) and exposes 25 fields with key fields MfgOrderSplitChildOrder, MfgOrderSplitByProduct. It has 11 associations to related views.
Data Sources (3)
| Source | Alias | Join Type |
|---|---|---|
| above | above | inner |
| I_LogisticsOrderBasic | afko | inner |
| afsprel | afsprel | from |
Associations (11)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [1..1] | I_ManufacturingOrder | _ChildOrder | $projection.MfgOrderSplitChildOrder = _ChildOrder.ManufacturingOrder |
| [1..1] | I_ManufacturingOrder | _ParentOrder | $projection.MfgOrderSplitParentOrder = _ParentOrder.ManufacturingOrder |
| [1..1] | I_ManufacturingOrder | _LeadingOrder | $projection.MfgOrderSplitLeadingOrder = _LeadingOrder.ManufacturingOrder |
| [1..1] | I_User | _CreatedByUser | $projection.CreatedByUser = _CreatedByUser.UserID |
| [1..1] | I_CalendarDate | _CreationDate | $projection.CreationDate = _CreationDate.CalendarDate |
| [0..1] | I_Product | _ByProduct | $projection.MfgOrderSplitByProduct = _ByProduct.Product |
| [0..*] | I_Batch | _ByProductBatch | $projection.MfgOrderSplitByProduct = _ByProductBatch.Material and $projection.MfgOrderSplitByProductBatch = _ByProductBatch.Batch |
| [0..1] | I_MaterialDocumentYear | _MaterialDocumentYear | $projection.ByProductMaterialDocumentYear = _MaterialDocumentYear.MaterialDocumentYear |
| [0..1] | I_MaterialDocumentHeader_2 | _MaterialDocumentHeader | $projection.ByProductMaterialDocumentYear = _MaterialDocumentHeader.MaterialDocumentYear and $projection.ByProductMaterialDocument = _MaterialDocumentHeader.MaterialDocument |
| [0..1] | I_MaterialDocumentItem_2 | _MaterialDocumentItem | $projection.ByProductMaterialDocumentYear = _MaterialDocumentItem.MaterialDocumentYear and $projection.ByProductMaterialDocument = _MaterialDocumentItem.MaterialDocument and $projection.ByProductMaterialDocumentItem = _MaterialDocumentItem.MaterialDocumentItem |
| [1..1] | I_UnitOfMeasure | _OperationUnit | $projection.OperationUnit = _OperationUnit.UnitOfMeasure |
Annotations (11)
| Name | Value | Level | Field |
|---|---|---|---|
| AbapCatalog.sqlViewName | IMFGORDERSPLIT | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AccessControl.authorizationCheck | #MANDATORY | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| ObjectModel.modelingPattern | #NONE | view | |
| ObjectModel.usageType.serviceQuality | #A | view | |
| ObjectModel.usageType.sizeCategory | #M | view | |
| ObjectModel.usageType.dataClass | #TRANSACTIONAL | view | |
| VDM.lifecycle.contract.type | #PUBLIC_LOCAL_API | view | |
| VDM.viewType | #BASIC | view | |
| EndUserText.label | Child Order of Manufacturing Order Split | view |
Fields (25)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | MfgOrderSplitChildOrder | afsprel | c_aufnr | |
| KEY | MfgOrderSplitByProduct | afsprel | byproduct | |
| MfgOrderSplitUUID | afsprel | order_split_uuid | ||
| MfgOrderSplitChildOrderIntID | afsprel | splcnt | ||
| MfgOrderSplitParentOrder | afsprel | p_aufnr | ||
| MfgOrderSplitLeadingOrder | afsprel | l_aufnr | ||
| ByProductMaterialDocument | afsprel | byprod_mat_doc | ||
| ByProductMaterialDocumentItem | afsprel | byprod_mat_item | ||
| ByProductMaterialDocumentYear | afsprel | byprod_mat_year | ||
| CreationDate | ||||
| CreationTime | afsprel | stime | ||
| CreatedByUser | afsprel | suser | ||
| OperationUnit | ||||
| MfgOrderSplitQuantity | afsprel | splq | ||
| _ChildOrder | _ChildOrder | |||
| _LeadingOrder | _LeadingOrder | |||
| _ParentOrder | _ParentOrder | |||
| _ByProduct | _ByProduct | |||
| _ByProductBatch | _ByProductBatch | |||
| _MaterialDocumentYear | _MaterialDocumentYear | |||
| _MaterialDocumentHeader | _MaterialDocumentHeader | |||
| _MaterialDocumentItem | _MaterialDocumentItem | |||
| _CreationDate | _CreationDate | |||
| _CreatedByUser | _CreatedByUser | |||
| _OperationUnit | _OperationUnit |
@AbapCatalog.sqlViewName: 'IMFGORDERSPLIT'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #MANDATORY
@AccessControl.privilegedAssociations: ['_CreatedByUser']
@ClientHandling.algorithm: #SESSION_VARIABLE
@ObjectModel.modelingPattern: #NONE
@ObjectModel.supportedCapabilities: [#CDS_MODELING_DATA_SOURCE, #SQL_DATA_SOURCE]
@ObjectModel.usageType: {serviceQuality: #A, sizeCategory: #M, dataClass: #TRANSACTIONAL}
@VDM.lifecycle.contract.type: #PUBLIC_LOCAL_API
@VDM.viewType: #BASIC
@EndUserText.label: 'Child Order of Manufacturing Order Split'
define view I_MfgOrderSplitChildOrder
as select from afsprel as afsprel
inner join I_LogisticsOrderBasic as afko on afko.OrderID = afsprel.c_aufnr --to filter only "real" child orders
association [1..1] to I_ManufacturingOrder as _ChildOrder on $projection.MfgOrderSplitChildOrder = _ChildOrder.ManufacturingOrder
association [1..1] to I_ManufacturingOrder as _ParentOrder on $projection.MfgOrderSplitParentOrder = _ParentOrder.ManufacturingOrder
association [1..1] to I_ManufacturingOrder as _LeadingOrder on $projection.MfgOrderSplitLeadingOrder = _LeadingOrder.ManufacturingOrder
association [1..1] to I_User as _CreatedByUser on $projection.CreatedByUser = _CreatedByUser.UserID
association [1..1] to I_CalendarDate as _CreationDate on $projection.CreationDate = _CreationDate.CalendarDate
association [0..1] to I_Product as _ByProduct on $projection.MfgOrderSplitByProduct = _ByProduct.Product
association [0..*] to I_Batch as _ByProductBatch on $projection.MfgOrderSplitByProduct = _ByProductBatch.Material
and $projection.MfgOrderSplitByProductBatch = _ByProductBatch.Batch
association [0..1] to I_MaterialDocumentYear as _MaterialDocumentYear on $projection.ByProductMaterialDocumentYear = _MaterialDocumentYear.MaterialDocumentYear
association [0..1] to I_MaterialDocumentHeader_2 as _MaterialDocumentHeader on $projection.ByProductMaterialDocumentYear = _MaterialDocumentHeader.MaterialDocumentYear
and $projection.ByProductMaterialDocument = _MaterialDocumentHeader.MaterialDocument
association [0..1] to I_MaterialDocumentItem_2 as _MaterialDocumentItem on $projection.ByProductMaterialDocumentYear = _MaterialDocumentItem.MaterialDocumentYear
and $projection.ByProductMaterialDocument = _MaterialDocumentItem.MaterialDocument
and $projection.ByProductMaterialDocumentItem = _MaterialDocumentItem.MaterialDocumentItem
association [1..1] to I_UnitOfMeasure as _OperationUnit on $projection.OperationUnit = _OperationUnit.UnitOfMeasure
{
// Key
@ObjectModel.foreignKey.association: '_ChildOrder'
key afsprel.c_aufnr as MfgOrderSplitChildOrder,
@ObjectModel.foreignKey.association: '_ByProduct'
key afsprel.byproduct as MfgOrderSplitByProduct,
-- @ObjectModel.foreignKey.association: '_ByProductBatch'
key afsprel.byproduct_batch as MfgOrderSplitByProductBatch,
// GUID
afsprel.order_split_uuid as MfgOrderSplitUUID,
// Hierarchy
afsprel.splcnt as MfgOrderSplitChildOrderIntID,
@ObjectModel.foreignKey.association: '_ParentOrder'
afsprel.p_aufnr as MfgOrderSplitParentOrder,
@ObjectModel.foreignKey.association: '_LeadingOrder'
afsprel.l_aufnr as MfgOrderSplitLeadingOrder,
// Material Document
@ObjectModel.foreignKey.association: '_MaterialDocumentHeader'
afsprel.byprod_mat_doc as ByProductMaterialDocument,
@ObjectModel.foreignKey.association: '_MaterialDocumentItem'
afsprel.byprod_mat_item as ByProductMaterialDocumentItem,
@ObjectModel.foreignKey.association: '_MaterialDocumentYear'
afsprel.byprod_mat_year as ByProductMaterialDocumentYear,
// Admin Data
@Semantics.systemDate.createdAt: true
cast(afsprel.sdate as erdat preserving type) as CreationDate,
@Semantics.systemTime.createdAt: true
afsprel.stime as CreationTime,
@Semantics.user.createdBy: true
afsprel.suser as CreatedByUser,
// Quantity and UoM
@Semantics.unitOfMeasure: true
cast(afsprel.qunit as operationunit preserving type) as OperationUnit,
@Semantics.quantity.unitOfMeasure: 'OperationUnit'
@Aggregation.default: #SUM
afsprel.splq as MfgOrderSplitQuantity,
// Associations
_ChildOrder,
_LeadingOrder,
_ParentOrder,
_ByProduct,
_ByProductBatch,
_MaterialDocumentYear,
_MaterialDocumentHeader,
_MaterialDocumentItem,
_CreationDate,
_CreatedByUser,
_OperationUnit
}
--where afsprel.c_aufnr <> '' Instead of doing WHERE with not equal this is realized via INNER JOIN above
;
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_LOGISTICSORDERBASIC",
"AFSPREL"
],
"ASSOCIATED":
[
"I_BATCH",
"I_CALENDARDATE",
"I_MANUFACTURINGORDER",
"I_MATERIALDOCUMENTHEADER_2",
"I_MATERIALDOCUMENTITEM_2",
"I_MATERIALDOCUMENTYEAR",
"I_PRODUCT",
"I_UNITOFMEASURE",
"I_USER"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/
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