A_ProcOrdConfirmation_2
Process Order Confirmation
A_ProcOrdConfirmation_2 is a Composite CDS View that provides data about "Process Order Confirmation" in SAP S/4HANA. It reads from 2 data sources (I_MfgOrderConfirmation, I_OrderOperationBasic) and exposes 96 fields with key fields ConfirmationGroup, ConfirmationCount. It has 2 associations to related views.
Data Sources (2)
| Source | Alias | Join Type |
|---|---|---|
| I_MfgOrderConfirmation | afru | from |
| I_OrderOperationBasic | afvc | left_outer |
Associations (2)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [1..1] | E_OrderConfirmation | _Extension | $projection.ConfirmationGroup = _Extension.ConfirmationGroup and $projection.ConfirmationCount = _Extension.ConfirmationCount |
| [0..*] | A_ProcOrdConfMatlDocItem | _ProcOrdConfMatlDocItm | |
Annotations (10)
| Name | Value | Level | Field |
|---|---|---|---|
| EndUserText.label | Process Order Confirmation | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| AccessControl.personalData.blocking | #REQUIRED | view | |
| ObjectModel.usageType.serviceQuality | #D | view | |
| ObjectModel.usageType.sizeCategory | #XL | view | |
| ObjectModel.usageType.dataClass | #MIXED | view | |
| OData.entitySet.name | ProcOrdConf2 | view | |
| VDM.viewType | #COMPOSITE | view | |
| VDM.lifecycle.contract.type | #PUBLIC_REMOTE_API | view | |
| Metadata.ignorePropagatedAnnotations | true | view |
Fields (96)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | ConfirmationGroup | I_MfgOrderConfirmation | MfgOrderConfirmationGroup | |
| KEY | ConfirmationCount | I_MfgOrderConfirmation | MfgOrderConfirmation | |
| OrderID | I_MfgOrderConfirmation | ManufacturingOrder | ||
| OrderType | I_MfgOrderConfirmation | ManufacturingOrderType | ||
| OrderOperationInternalID | I_MfgOrderConfirmation | OrderOperationInternalID | ||
| ConfirmationText | I_MfgOrderConfirmation | ConfirmationText | ||
| Language | I_MfgOrderConfirmation | Language | ||
| Material | ||||
| OrderPlannedTotalQty | ||||
| ProductionUnit | ||||
| FinalConfirmationType | I_MfgOrderConfirmation | FinalConfirmationType | ||
| IsFinalConfirmation | I_MfgOrderConfirmation | IsFinalConfirmation | ||
| OpenReservationsIsCleared | I_MfgOrderConfirmation | OpenReservationsIsCleared | ||
| IsReversed | I_MfgOrderConfirmation | IsReversed | ||
| IsReversal | I_MfgOrderConfirmation | IsReversal | ||
| APIConfHasNoGoodsMovements | I_MfgOrderConfirmation | APIConfHasNoGoodsMovements | ||
| OrderConfirmationRecordType | I_MfgOrderConfirmation | OrderConfirmationRecordType | ||
| ConfirmationEntryDate | I_MfgOrderConfirmation | MfgOrderConfirmationEntryDate | ||
| ConfirmationEntryTime | I_MfgOrderConfirmation | MfgOrderConfirmationEntryTime | ||
| EnteredByUser | I_MfgOrderConfirmation | EnteredByUser | ||
| LastChangeDate | I_MfgOrderConfirmation | LastChangeDate | ||
| LastChangedByUser | I_MfgOrderConfirmation | LastChangedByUser | ||
| ConfirmationExternalEntryDate | I_MfgOrderConfirmation | ConfirmationExternalEntryDate | ||
| ConfirmationExternalEntryTime | I_MfgOrderConfirmation | ConfirmationExternalEntryTime | ||
| EnteredByExternalUser | I_MfgOrderConfirmation | EnteredByExternalUser | ||
| ExternalSystemConfirmation | I_MfgOrderConfirmation | ExternalSystemConfirmation | ||
| Plant | I_MfgOrderConfirmation | Plant | ||
| WorkCenterTypeCode | I_MfgOrderConfirmation | WorkCenterTypeCode | ||
| WorkCenter | ||||
| ShiftGrouping | I_MfgOrderConfirmation | ShiftGrouping | ||
| ShiftDefinition | I_MfgOrderConfirmation | ShiftDefinition | ||
| Personnel | I_MfgOrderConfirmation | Personnel | ||
| TimeRecording | I_MfgOrderConfirmation | TimeRecording | ||
| EmployeeWageType | I_MfgOrderConfirmation | EmployeeWageType | ||
| EmployeeWageGroup | I_MfgOrderConfirmation | EmployeeWageGroup | ||
| BreakDurationUnit | I_MfgOrderConfirmation | BreakDurationUnit | ||
| BreakDurationUnitISOCode | ||||
| BreakDurationUnitSAPCode | ||||
| ConfirmedBreakDuration | I_MfgOrderConfirmation | ConfirmedBreakDuration | ||
| EmployeeSuitability | I_MfgOrderConfirmation | EmployeeSuitability | ||
| NumberOfEmployees | I_MfgOrderConfirmation | NumberOfEmployees | ||
| PostingDate | I_MfgOrderConfirmation | PostingDate | ||
| ConfirmedExecutionStartDate | I_MfgOrderConfirmation | ConfirmedExecutionStartDate | ||
| ConfirmedExecutionStartTime | I_MfgOrderConfirmation | ConfirmedExecutionStartTime | ||
| ConfirmedSetupEndDate | I_MfgOrderConfirmation | ConfirmedSetupEndDate | ||
| ConfirmedSetupEndTime | I_MfgOrderConfirmation | ConfirmedSetupEndTime | ||
| ConfirmedProcessingStartDate | I_MfgOrderConfirmation | ConfirmedProcessingStartDate | ||
| ConfirmedProcessingStartTime | I_MfgOrderConfirmation | ConfirmedProcessingStartTime | ||
| ConfirmedProcessingEndDate | I_MfgOrderConfirmation | ConfirmedProcessingEndDate | ||
| ConfirmedProcessingEndTime | I_MfgOrderConfirmation | ConfirmedProcessingEndTime | ||
| ConfirmedTeardownStartDate | I_MfgOrderConfirmation | ConfirmedTeardownStartDate | ||
| ConfirmedTeardownStartTime | I_MfgOrderConfirmation | ConfirmedTeardownStartTime | ||
| ConfirmedExecutionEndDate | I_MfgOrderConfirmation | ConfirmedExecutionEndDate | ||
| ConfirmedExecutionEndTime | I_MfgOrderConfirmation | ConfirmedExecutionEndTime | ||
| ConfirmationUnit | I_MfgOrderConfirmation | ConfirmationUnit | ||
| ConfirmationUnitISOCode | ||||
| ConfirmationUnitSAPCode | ||||
| ConfirmationYieldQuantity | I_MfgOrderConfirmation | ConfirmationYieldQuantity | ||
| ConfirmationScrapQuantity | I_MfgOrderConfirmation | ConfirmationScrapQuantity | ||
| VarianceReasonCode | I_MfgOrderConfirmation | VarianceReasonCode | ||
| OpWorkQuantityUnit1 | I_MfgOrderConfirmation | OpWorkQuantityUnit1 | ||
| WorkQuantityUnit1ISOCode | ||||
| WorkQuantityUnit1SAPCode | ||||
| OpConfirmedWorkQuantity1 | I_MfgOrderConfirmation | OpConfirmedWorkQuantity1 | ||
| NoFurtherOpWorkQuantity1IsExpd | I_MfgOrderConfirmation | NoFurtherOpWorkQuantity1IsExpd | ||
| OpWorkQuantityUnit2 | I_MfgOrderConfirmation | OpWorkQuantityUnit2 | ||
| WorkQuantityUnit2ISOCode | ||||
| WorkQuantityUnit2SAPCode | ||||
| OpConfirmedWorkQuantity2 | I_MfgOrderConfirmation | OpConfirmedWorkQuantity2 | ||
| NoFurtherOpWorkQuantity2IsExpd | I_MfgOrderConfirmation | NoFurtherOpWorkQuantity2IsExpd | ||
| OpWorkQuantityUnit3 | I_MfgOrderConfirmation | OpWorkQuantityUnit3 | ||
| WorkQuantityUnit3ISOCode | ||||
| WorkQuantityUnit3SAPCode | ||||
| OpConfirmedWorkQuantity3 | I_MfgOrderConfirmation | OpConfirmedWorkQuantity3 | ||
| NoFurtherOpWorkQuantity3IsExpd | I_MfgOrderConfirmation | NoFurtherOpWorkQuantity3IsExpd | ||
| OpWorkQuantityUnit4 | I_MfgOrderConfirmation | OpWorkQuantityUnit4 | ||
| WorkQuantityUnit4ISOCode | ||||
| WorkQuantityUnit4SAPCode | ||||
| OpConfirmedWorkQuantity4 | I_MfgOrderConfirmation | OpConfirmedWorkQuantity4 | ||
| NoFurtherOpWorkQuantity4IsExpd | I_MfgOrderConfirmation | NoFurtherOpWorkQuantity4IsExpd | ||
| OpWorkQuantityUnit5 | I_MfgOrderConfirmation | OpWorkQuantityUnit5 | ||
| WorkQuantityUnit5ISOCode | ||||
| WorkQuantityUnit5SAPCode | ||||
| OpConfirmedWorkQuantity5 | I_MfgOrderConfirmation | OpConfirmedWorkQuantity5 | ||
| NoFurtherOpWorkQuantity5IsExpd | I_MfgOrderConfirmation | NoFurtherOpWorkQuantity5IsExpd | ||
| OpWorkQuantityUnit6 | I_MfgOrderConfirmation | OpWorkQuantityUnit6 | ||
| WorkQuantityUnit6ISOCode | ||||
| WorkQuantityUnit6SAPCode | ||||
| OpConfirmedWorkQuantity6 | I_MfgOrderConfirmation | OpConfirmedWorkQuantity6 | ||
| NoFurtherOpWorkQuantity6IsExpd | I_MfgOrderConfirmation | NoFurtherOpWorkQuantity6IsExpd | ||
| BusinessProcessEntryUnit | I_MfgOrderConfirmation | BusinessProcessEntryUnit | ||
| BusProcessEntrUnitISOCode | ||||
| BusProcessEntryUnitSAPCode | ||||
| BusinessProcessConfirmedQty | I_MfgOrderConfirmation | BusinessProcessConfirmedQty | ||
| NoFurtherBusinessProcQtyIsExpd | I_MfgOrderConfirmation | NoFurtherBusinessProcQtyIsExpd | ||
| _ProcOrdConfMatlDocItm | _ProcOrdConfMatlDocItm |
@EndUserText.label: 'Process Order Confirmation'
@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #REQUIRED
@ObjectModel.usageType: {serviceQuality: #D, sizeCategory: #XL, dataClass: #MIXED}
@OData.entitySet.name: 'ProcOrdConf2'
@VDM.viewType: #COMPOSITE
@VDM.lifecycle.contract.type: #PUBLIC_REMOTE_API
@Metadata.ignorePropagatedAnnotations: true
define root view entity A_ProcOrdConfirmation_2
as select from I_MfgOrderConfirmation as afru
left outer join I_OrderOperationBasic as afvc on afvc.OrderInternalID = afru.OrderInternalID //sub-operation handling
and afvc.OrderOperationInternalID = afru.SuperiorOperationInternalID
composition [0..*] of A_ProcOrdConfMatlDocItem as _ProcOrdConfMatlDocItm
association [1..1] to E_OrderConfirmation as _Extension // Extensibility CE2102
on $projection.ConfirmationGroup = _Extension.ConfirmationGroup
and $projection.ConfirmationCount = _Extension.ConfirmationCount
{
//Key
key afru.MfgOrderConfirmationGroup as ConfirmationGroup,
key afru.MfgOrderConfirmation as ConfirmationCount,
//General remarks
//eTag Field is not necessary in the process order confirmation process.
//Same behavior implemented like in the material document.
//Order and Operation Data
afru.ManufacturingOrder as OrderID,
case
when afru.SuperiorOperationInternalID > '00000000' then
cast(afvc.Operation as manufacturingorderoperation preserving type) //superior operation ID
else
cast(afru.ManufacturingOrderOperation as manufacturingorderoperation preserving type)
end as OrderOperation,
case
when afru.SuperiorOperationInternalID > '00000000' then
cast(afru.ManufacturingOrderOperation as manufacturingordersuboperation preserving type)
else ''
end as OrderSuboperation,
@ObjectModel.sapObjectNodeTypeReference: 'WorkOrderType'
afru.ManufacturingOrderType as OrderType,
afru.OrderOperationInternalID, // New field in CE1905!
afru.ConfirmationText,
afru.Language,
afru._MfgOrder.Material,
@Semantics.quantity.unitOfMeasure: 'ProductionUnit'
afru._MfgOrder.MfgOrderPlannedTotalQty as OrderPlannedTotalQty,
afru._MfgOrder.ProductionUnit,
//Attributes
@ObjectModel.sapObjectNodeTypeReference: 'OrderFinalConfirmationType'
afru.FinalConfirmationType, // New field in CE1905!
afru.IsFinalConfirmation, // obsolete since CE1905!
afru.OpenReservationsIsCleared,
afru.IsReversed, // Document was cancelled in earlier times
afru.IsReversal, // Document is cancelled right now, it is triggered from outside
afru.APIConfHasNoGoodsMovements, // Control flag for "No Goods Movement via API", is triggered from outside
@ObjectModel.sapObjectNodeTypeReference: 'OrderConfirmationRecordType'
afru.OrderConfirmationRecordType, // New field in CE2005!
//Adminitstration
afru.MfgOrderConfirmationEntryDate as ConfirmationEntryDate,
afru.MfgOrderConfirmationEntryTime as ConfirmationEntryTime,
afru.EnteredByUser,
afru.LastChangeDate,
afru.LastChangedByUser,
afru.ConfirmationExternalEntryDate,
afru.ConfirmationExternalEntryTime,
afru.EnteredByExternalUser,
afru.ExternalSystemConfirmation,
//General Assignments
afru.Plant,
afru.WorkCenterTypeCode,
afru._WorkCenter.WorkCenter,
afru.ShiftGrouping, // New field in CE2302
afru.ShiftDefinition, // New field in CE2302
//HR Assignments
afru.Personnel,
afru.TimeRecording,
afru.EmployeeWageType,
afru.EmployeeWageGroup,
//Durations
afru.BreakDurationUnit,
afru._BreakDurationUnit.UnitOfMeasureISOCode as BreakDurationUnitISOCode,
afru._BreakDurationUnit.UnitOfMeasureSAPCode as BreakDurationUnitSAPCode, // CE2102
@Semantics.quantity.unitOfMeasure: 'BusinessProcessEntryUnit' // incompatible change
afru.ConfirmedBreakDuration,
afru.EmployeeSuitability,
afru.NumberOfEmployees,
//Dates
afru.PostingDate,
//Time Events
afru.ConfirmedExecutionStartDate,
afru.ConfirmedExecutionStartTime,
afru.ConfirmedSetupEndDate,
afru.ConfirmedSetupEndTime,
afru.ConfirmedProcessingStartDate,
afru.ConfirmedProcessingStartTime,
afru.ConfirmedProcessingEndDate,
afru.ConfirmedProcessingEndTime,
afru.ConfirmedTeardownStartDate,
afru.ConfirmedTeardownStartTime,
afru.ConfirmedExecutionEndDate,
afru.ConfirmedExecutionEndTime,
//Quantities and UoM
afru.ConfirmationUnit,
afru._ConfirmationUnit.UnitOfMeasureISOCode as ConfirmationUnitISOCode,
afru._ConfirmationUnit.UnitOfMeasureSAPCode as ConfirmationUnitSAPCode, // CE2102
@Semantics.quantity.unitOfMeasure: 'ConfirmationUnit'
afru.ConfirmationYieldQuantity,
@Semantics.quantity.unitOfMeasure: 'ConfirmationUnit'
afru.ConfirmationScrapQuantity,
afru.VarianceReasonCode,
//Work Quantities and UoM
afru.OpWorkQuantityUnit1,
afru._WorkQuantityUnit1.UnitOfMeasureISOCode as WorkQuantityUnit1ISOCode,
afru._WorkQuantityUnit1.UnitOfMeasureSAPCode as WorkQuantityUnit1SAPCode, // CE2102
@Semantics.quantity.unitOfMeasure: 'OpWorkQuantityUnit1'
afru.OpConfirmedWorkQuantity1,
afru.NoFurtherOpWorkQuantity1IsExpd,
afru.OpWorkQuantityUnit2,
afru._WorkQuantityUnit2.UnitOfMeasureISOCode as WorkQuantityUnit2ISOCode,
afru._WorkQuantityUnit2.UnitOfMeasureSAPCode as WorkQuantityUnit2SAPCode, // CE2102
@Semantics.quantity.unitOfMeasure: 'OpWorkQuantityUnit2'
afru.OpConfirmedWorkQuantity2,
afru.NoFurtherOpWorkQuantity2IsExpd,
afru.OpWorkQuantityUnit3,
afru._WorkQuantityUnit3.UnitOfMeasureISOCode as WorkQuantityUnit3ISOCode,
afru._WorkQuantityUnit3.UnitOfMeasureSAPCode as WorkQuantityUnit3SAPCode, // CE2102
@Semantics.quantity.unitOfMeasure: 'OpWorkQuantityUnit3'
afru.OpConfirmedWorkQuantity3,
afru.NoFurtherOpWorkQuantity3IsExpd,
afru.OpWorkQuantityUnit4,
afru._WorkQuantityUnit4.UnitOfMeasureISOCode as WorkQuantityUnit4ISOCode,
afru._WorkQuantityUnit4.UnitOfMeasureSAPCode as WorkQuantityUnit4SAPCode, // CE2102
@Semantics.quantity.unitOfMeasure: 'OpWorkQuantityUnit4'
afru.OpConfirmedWorkQuantity4,
afru.NoFurtherOpWorkQuantity4IsExpd,
afru.OpWorkQuantityUnit5,
afru._WorkQuantityUnit5.UnitOfMeasureISOCode as WorkQuantityUnit5ISOCode,
afru._WorkQuantityUnit5.UnitOfMeasureSAPCode as WorkQuantityUnit5SAPCode, // CE2102
@Semantics.quantity.unitOfMeasure: 'OpWorkQuantityUnit5'
afru.OpConfirmedWorkQuantity5,
afru.NoFurtherOpWorkQuantity5IsExpd,
afru.OpWorkQuantityUnit6,
afru._WorkQuantityUnit6.UnitOfMeasureISOCode as WorkQuantityUnit6ISOCode,
afru._WorkQuantityUnit6.UnitOfMeasureSAPCode as WorkQuantityUnit6SAPCode, // CE2102
@Semantics.quantity.unitOfMeasure: 'OpWorkQuantityUnit6'
afru.OpConfirmedWorkQuantity6,
afru.NoFurtherOpWorkQuantity6IsExpd,
//Business Process
afru.BusinessProcessEntryUnit,
afru._BusinessProcessUnit.UnitOfMeasureISOCode as BusProcessEntrUnitISOCode,
afru._BusinessProcessUnit.UnitOfMeasureSAPCode as BusProcessEntryUnitSAPCode, // CE2102
@Semantics.quantity.unitOfMeasure: 'BusinessProcessEntryUnit'
afru.BusinessProcessConfirmedQty,
afru.NoFurtherBusinessProcQtyIsExpd,
//Associations
_ProcOrdConfMatlDocItm
}
where afru.ManufacturingOrderCategory = '40'
and afru.IsReversal <> 'X'; //only activ confirmations and cancelled confirmations are relevant but not the new generated cancellation confirmation
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_MANUFACTURINGORDER",
"I_MFGORDERCONFIRMATION",
"I_ORDEROPERATIONBASIC",
"I_UNITOFMEASURE",
"I_WORKCENTER"
],
"ASSOCIATED":
[
"A_PROCORDCONFMATLDOCITEM"
],
"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