@AbapCatalog.sqlViewName: 'CMFGORDOBJPAGOPR'
@AbapCatalog.compiler.compareFilter: true
@EndUserText.label: 'Manufacturing Order Opr : Object Page'
@VDM.viewType: #CONSUMPTION
@AccessControl.authorizationCheck: #CHECK
// @AccessControl.privilegedAssociations: ['_Extension']
@ClientHandling.algorithm: #SESSION_VARIABLE
@ObjectModel.representativeKey: 'OrderIntBillOfOperationsItem'
@ObjectModel.semanticKey: ['OrderInternalBillOfOperations' , 'OrderIntBillOfOperationsItem']
@ObjectModel.usageType: {serviceQuality: #D, sizeCategory: #XL, dataClass: #MIXED}
@UI.presentationVariant.sortOrder: {by: 'ManufacturingOrderOperation', direction: #ASC}
@UI.presentationVariant.requestAtLeast: [ 'WorkCenterInternalID' ]
@UI.headerInfo.typeName: 'Operation'
@UI.headerInfo.typeNamePlural: 'Operations'
define view C_MfgOrderObjPgOpr
as select from I_MfgOrderOperationDurn as ManufacturingOrderOperation
inner join I_OrderItem as OrderItem on OrderItem.OrderID = ManufacturingOrder
and OrderItem.OrderItem = '0001'
association [1..1] to E_OrderOperation as _Extension on OrderInternalBillOfOperations = _Extension.OrderInternalID
and OrderIntBillOfOperationsItem = _Extension.OrderOperationInternalID
{
// Technical Key
@ObjectModel.foreignKey.association: '_OrdInternalBillOfOperations'
@UI.hidden
key OrderInternalBillOfOperations,
@UI.hidden
key OrderIntBillOfOperationsItem,
// Semantical Key
@Consumption.valueHelpDefinition: [ { entity: { name: 'I_MfgOrderStdVH', element: 'ManufacturingOrder' } } ]
@UI.hidden
ManufacturingOrder, // Manufacturing Order
@ObjectModel.text.element: 'MfgOrderOperationText'
@UI.lineItem:{ position: 10}
@Consumption.valueHelpDefinition: [ { entity: { name: 'I_MfgOrdOpBySemanticKeyStdVH', element: 'ManufacturingOrderOperation' } } ]
ManufacturingOrderOperation, // Operation Number
@UI.hidden
MfgOrderOperationIsPhase,
@UI.lineItem:{ position: 20}
@Consumption.valueHelpDefinition: [ { entity: { name: 'I_MfgOrderSequenceStdVH', element: 'ManufacturingOrderSequence' } } ]
ManufacturingOrderSequence, // Sequence,
_MfgOrderSequence._SequenceCategory._Text[1: Language=$session.system_language].SequenceCategoryName as MfgOrderSequenceCategoryName,
_MfgOrderSequence.MfgOrderSequenceText,
@UI.lineItem: [{position:30}]
MfgOrderOperationText, // OperationShortText
@UI.hidden
ManufacturingOrderType, // Order Type
@Consumption.valueHelpDefinition: [ { entity: { name: 'I_UnitOfMeasureStdVH', element: 'UnitOfMeasure' } } ]
BusinessProcessEntryUnit, // BusinessProcessEntryUnit
// Order header data
@UI.hidden
ManufacturingOrderCategory, // Category
@UI.lineItem: [{position:40}]
@Consumption.valueHelpDefinition: [ { entity: { name: 'I_MaterialStdVH', element: 'Material' } } ]
OrderItem.Material,
@UI.lineItem: [{position:45}]
cast(OrderItem._Material._Text[1:Language = $session.system_language ].MaterialName as maktx) as MaterialDescription, //MaterialDescription
@EndUserText.label: 'Work Center Type Code ' // Material
@ObjectModel.text.element: 'WorkCenterTypeName'
WorkCenterTypeCode,
@UI.hidden: true
_WorkCenterType._Text[1: Language=$session.system_language].WorkCenterTypeName,
@UI.identification:{type: #WITH_INTENT_BASED_NAVIGATION, semanticObjectAction: 'display'}
@Consumption.semanticObject: 'WorkCenter'
@UI.lineItem:{ position: 50}
@Consumption.valueHelpDefinition: [{ entity: { name: 'I_WorkCenterVH', element: 'WorkCenter'} }]
WorkCenter, // WorkCenter,
@Semantics.calendarItem.dtStart: true
@UI.lineItem: [{position:60}]
@EndUserText.label:'Earliest Execution Start Date'
OpErlstSchedldExecStrtDte, // PlannedStartDate
@UI.lineItem: [{position:70}]
@EndUserText.label:'Earliest Execution Start Time'
OpErlstSchedldExecStrtTme, // PlannedStartTime
@Semantics.calendarItem.dtStart: true
@UI.lineItem: [{position:80}]
@EndUserText.label:'Earliest Execution End Date'
OpErlstSchedldExecEndDte, // P lannedEndDate
@UI.lineItem: [{position:90}]
@EndUserText.label:'Earliest Execution End Time'
OpErlstSchedldExecEndTme, // PlannedEndTime
@Semantics.calendarItem.dtStart: true
@EndUserText.label:'Actual Execution Start Date'
OpActualExecutionStartDate, // StartDate,
@EndUserText.label:'Actual Execution Start Time'
OpActualExecutionStartTime, // StartTime,
@Semantics.calendarItem.dtEnd: true
@EndUserText.label:'Actual Execution End Date'
OpActualExecutionEndDate, // EndDate,
@EndUserText.label:'Actual Execution End Time'
OpActualExecutionEndTime, // EndTime,
@Semantics.unitOfMeasure: true
@UI.hidden
OperationUnit, // OperationUnit,
@Semantics.quantity.unitOfMeasure: 'OperationUnit'
//@DefaultAggregation: #NONE
OpPlannedTotalQuantity, // OperationQuantity,
@Semantics.calendarItem.duration: true
@EndUserText.label:'Scheduled Execution Duration'
ErlstSchedldExecDurnInWorkdays, // PlannedDuration,
@EndUserText.label:'Actual Execution Duration'
@Semantics.calendarItem.duration: true
OpActualExecutionDays, // ActualDuration,
OpTotalConfirmedYieldQty, // Confirmed Quantity
@UI.hidden: true
WorkCenterInternalID,
_Material,
_MfgOrderType,
_MfgOrderCategory,
_MfgOrder,
_MfgOrderSequence,
_BusinessProcessEntryUnit,
_OrdInternalBillOfOperations
};
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_MATERIAL",
"I_MATERIALTEXT",
"I_MFGORDEROPERATIONDURN",
"I_MFGORDERSEQUENCE",
"I_ORDERITEM",
"I_SEQUENCECATEGORY",
"I_SEQUENCECATEGORYTEXT",
"I_WORKCENTERTYPE",
"I_WORKCENTERTYPETEXT"
],
"ASSOCIATED":
[
"E_ORDEROPERATION",
"I_MATERIAL",
"I_MFGORDER",
"I_MFGORDERCATEGORY",
"I_MFGORDERSEQUENCE",
"I_MFGORDERTYPE",
"I_ORDINTERNALBILLOFOPERATIONS",
"I_UNITOFMEASURE"
],
"BASE":
[
"I_MFGORDEROPERATIONDURN",
"I_ORDERITEM"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/