A_ProcessOrderOperation
API for Process Order Operations
A_ProcessOrderOperation is a Composite CDS View that provides data about "API for Process Order Operations" in SAP S/4HANA. It reads from 1 data source (I_MfgOrderOperationDurn) and exposes 30 fields with key fields OrderInternalBillOfOperations, OrderIntBillOfOperationsItem. It has 1 association to related views. Part of development package ODATA_PP_API_PROCORDER.
Data Sources (1)
| Source | Alias | Join Type |
|---|---|---|
| I_MfgOrderOperationDurn | I_MfgOrderOperationDurn | from |
Associations (1)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [1..1] | I_MfgOrderSequence | _OrderSequence | $projection.ManufacturingOrder = _OrderSequence.ManufacturingOrder and $projection.ManufacturingOrderSequence = _OrderSequence.ManufacturingOrderSequence and $projection.OrderInternalBillOfOperations = _OrderSequence.OrderInternalID |
Annotations (8)
| Name | Value | Level | Field |
|---|---|---|---|
| AccessControl.authorizationCheck | #CHECK | view | |
| EndUserText.label | API for Process Order Operations | view | |
| VDM.viewType | #COMPOSITE | view | |
| Metadata.ignorePropagatedAnnotations | true | view | |
| ObjectModel.usageType.serviceQuality | #C | view | |
| ObjectModel.usageType.sizeCategory | #XL | view | |
| ObjectModel.usageType.dataClass | #MIXED | view | |
| VDM.lifecycle.contract.type | #PUBLIC_REMOTE_API | view |
Fields (30)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | OrderInternalBillOfOperations | OrderInternalBillOfOperations | ||
| KEY | OrderIntBillOfOperationsItem | OrderIntBillOfOperationsItem | ||
| ManufacturingOrder | ManufacturingOrder | |||
| ManufacturingOrderOperation | ManufacturingOrderOperation | |||
| MfgOrderOperationIsPhase | MfgOrderOperationIsPhase | |||
| ManufacturingOrderSequence | ManufacturingOrderSequence | |||
| MfgOrderSequenceText | ||||
| MfgOrderOperationText | MfgOrderOperationText | |||
| ManufacturingOrderType | ManufacturingOrderType | |||
| BusinessProcessEntryUnit | BusinessProcessEntryUnit | |||
| ManufacturingOrderCategory | ManufacturingOrderCategory | |||
| WorkCenterTypeCode | WorkCenterTypeCode | Work Center Type Code | ||
| WorkCenter | WorkCenter | |||
| OpErlstSchedldExecStrtDte | OpErlstSchedldExecStrtDte | Earliest Execution Start Date | ||
| OpErlstSchedldExecStrtTme | OpErlstSchedldExecStrtTme | Earliest Execution Start Time | ||
| OpErlstSchedldExecEndDte | OpErlstSchedldExecEndDte | Earliest Execution End Date | ||
| OpErlstSchedldExecEndTme | OpErlstSchedldExecEndTme | Earliest Execution End Time | ||
| OpActualExecutionStartDate | OpActualExecutionStartDate | Actual Execution Start Date | ||
| OpActualExecutionStartTime | OpActualExecutionStartTime | Actual Execution Start Time | ||
| OpActualExecutionEndDate | OpActualExecutionEndDate | Actual Execution End Date | ||
| OpActualExecutionEndTime | OpActualExecutionEndTime | Actual Execution End Time | ||
| OperationUnit | OperationUnit | |||
| OpPlannedTotalQuantity | OpPlannedTotalQuantity | |||
| ErlstSchedldExecDurnInWorkdays | ErlstSchedldExecDurnInWorkdays | Scheduled Execution Duration | ||
| OpActualExecutionDays | OpActualExecutionDays | Actual Execution Duration | ||
| OpTotalConfirmedYieldQty | OpTotalConfirmedYieldQty | |||
| WorkCenterInternalID | WorkCenterInternalID | |||
| LastChangeTimeendasLastChangeDateTime | ||||
| ManufacturingOrderSubOperation | ManufacturingOrderSubOperation | |||
| OperationControlProfile | OperationControlProfile |
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'API for Process Order Operations'
@VDM.viewType: #COMPOSITE
@Metadata.ignorePropagatedAnnotations: true
@ObjectModel.usageType: {serviceQuality: #C, sizeCategory: #XL, dataClass: #MIXED}
@VDM.lifecycle.contract.type: #PUBLIC_REMOTE_API
define view entity A_ProcessOrderOperation
as select from I_MfgOrderOperationDurn
association [1..1] to I_MfgOrderSequence as _OrderSequence on $projection.ManufacturingOrder = _OrderSequence.ManufacturingOrder
and $projection.ManufacturingOrderSequence = _OrderSequence.ManufacturingOrderSequence
and $projection.OrderInternalBillOfOperations = _OrderSequence.OrderInternalID
{
// Technical Key
key OrderInternalBillOfOperations,
key OrderIntBillOfOperationsItem,
ManufacturingOrder, // Manufacturing Order
@ObjectModel.text.element: ['MfgOrderOperationText']
ManufacturingOrderOperation, // Operation Number
MfgOrderOperationIsPhase,
ManufacturingOrderSequence, // Sequence,
cast(_OrderSequence.MfgOrderSequenceText as mfgordersequencetext preserving type) as MfgOrderSequenceText,
MfgOrderOperationText, // OperationShortText
ManufacturingOrderType, // Order Type
BusinessProcessEntryUnit, // BusinessProcessEntryUnit
// Order header data
ManufacturingOrderCategory, // Category
@EndUserText.label: 'Work Center Type Code ' // Material
WorkCenterTypeCode,
WorkCenter, // WorkCenter,
@EndUserText.label:'Earliest Execution Start Date'
OpErlstSchedldExecStrtDte, // PlannedStartDate
@EndUserText.label:'Earliest Execution Start Time'
OpErlstSchedldExecStrtTme, // PlannedStartTime
@EndUserText.label:'Earliest Execution End Date'
OpErlstSchedldExecEndDte, // P lannedEndDate
@EndUserText.label:'Earliest Execution End Time'
OpErlstSchedldExecEndTme, // PlannedEndTime
@EndUserText.label:'Actual Execution Start Date'
OpActualExecutionStartDate, // StartDate,
@EndUserText.label:'Actual Execution Start Time'
OpActualExecutionStartTime, // StartTime,
@EndUserText.label:'Actual Execution End Date'
OpActualExecutionEndDate, // EndDate,
@EndUserText.label:'Actual Execution End Time'
OpActualExecutionEndTime, // EndTime,
OperationUnit, // OperationUnit,
@Semantics.quantity.unitOfMeasure: 'OperationUnit'
OpPlannedTotalQuantity, // OperationQuantity,
@EndUserText.label:'Scheduled Execution Duration'
ErlstSchedldExecDurnInWorkdays, // PlannedDuration,
@EndUserText.label:'Actual Execution Duration'
OpActualExecutionDays, // ActualDuration,
@Semantics.quantity.unitOfMeasure: 'OperationUnit'
OpTotalConfirmedYieldQty, // Confirmed Quantity
WorkCenterInternalID,
/* enhanced to support Etag using Last change date time to schedule operations */
case I_MfgOrderOperationDurn._MfgOrder.LastChangeDate
when '00000000' then // not changed yet, use create
concat(I_MfgOrderOperationDurn._MfgOrder.MfgOrderCreationDate , I_MfgOrderOperationDurn._MfgOrder.MfgOrderCreationTime)
else
concat(I_MfgOrderOperationDurn._MfgOrder.LastChangeDate,I_MfgOrderOperationDurn._MfgOrder.LastChangeTime)
end as LastChangeDateTime,
ManufacturingOrderSubOperation, // extended in CE1911
OperationControlProfile // extended in CE2002
}
where
ManufacturingOrderCategory = '40';
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