@AbapCatalog.sqlViewName: 'IORDOPDATESQTY'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #MANDATORY
@AccessControl.personalData.blocking: #NOT_REQUIRED
@Analytics.dataCategory: #DIMENSION
@Analytics.internalName: #LOCAL
@ClientHandling.algorithm: #SESSION_VARIABLE
@ClientHandling.type: #CLIENT_DEPENDENT
@Metadata.allowExtensions:true
@Metadata.ignorePropagatedAnnotations: true
@ObjectModel.modelingPattern: #NONE
@ObjectModel.supportedCapabilities: [#ANALYTICAL_DIMENSION, #CDS_MODELING_ASSOCIATION_TARGET, #CDS_MODELING_DATA_SOURCE, #SQL_DATA_SOURCE]
@ObjectModel.representativeKey: 'OrderOperationInternalID'
@ObjectModel.semanticKey: ['OrderInternalID', 'OrderOperationInternalID']
@ObjectModel.usageType: {serviceQuality: #A, sizeCategory: #L, dataClass: #TRANSACTIONAL}
@VDM.lifecycle.contract.type: #PUBLIC_LOCAL_API
@VDM.viewType: #BASIC
@EndUserText.label: 'Order Operation Dates'
// Basic reuse view for order operations' main table AFVV only
// For CDS view including the joins to AFVC and AFVU refer to --> I_OrderOperation
// For CDS view with select from AFVC only refer to --> I_OrderOperationBasic
define view I_OrderOperationDatesQty
as select from afvv as afvv
association [1..1] to I_OrderInternalID as _OrderInternalID on $projection.OrderInternalID = _OrderInternalID.OrderInternalID
association [1..1] to I_OrderOperationBasic as _OrderOperation on $projection.OrderInternalID = _OrderOperation.OrderInternalID
and $projection.OrderOperationInternalID = _OrderOperation.OrderOperationInternalID
association [1..1] to I_UnitOfMeasure as _OperationUnit on $projection.OperationUnit = _OperationUnit.UnitOfMeasure
{
// Key
@ObjectModel.foreignKey.association: '_OrderInternalID'
key afvv.aufpl as OrderInternalID,
key afvv.aplzl as OrderOperationInternalID,
// Business Processs
@Semantics.quantity.unitOfMeasure: 'BusinessProcessEntryUnit'
@Aggregation.default: #SUM
afvv.iprz1 as BusinessProcessConfirmedQty,
@Semantics.unitOfMeasure: true
afvv.ipre1 as BusinessProcessEntryUnit,
afvv.iprk1 as NoFurtherBusinessProcQtyIsExpd,
@Semantics.quantity.unitOfMeasure: 'BusinessProcRemainingQtyUnit'
@Aggregation.default: #SUM
afvv.oprz1 as BusinessProcessRemainingQty,
@Semantics.unitOfMeasure: true
afvv.opre1 as BusinessProcRemainingQtyUnit,
// Work Quantities and Activitiy Types
@Semantics.quantity.unitOfMeasure: 'WorkCenterStandardWorkQtyUnit1'
@DefaultAggregation: #SUM
afvv.vgw01 as WorkCenterStandardWorkQty1,
@Semantics.quantity.unitOfMeasure: 'WorkCenterStandardWorkQtyUnit2'
@DefaultAggregation: #SUM
afvv.vgw02 as WorkCenterStandardWorkQty2,
@Semantics.quantity.unitOfMeasure: 'WorkCenterStandardWorkQtyUnit3'
@DefaultAggregation: #SUM
afvv.vgw03 as WorkCenterStandardWorkQty3,
@Semantics.quantity.unitOfMeasure: 'WorkCenterStandardWorkQtyUnit4'
@DefaultAggregation: #SUM
afvv.vgw04 as WorkCenterStandardWorkQty4,
@Semantics.quantity.unitOfMeasure: 'WorkCenterStandardWorkQtyUnit5'
@DefaultAggregation: #SUM
afvv.vgw05 as WorkCenterStandardWorkQty5,
@Semantics.quantity.unitOfMeasure: 'WorkCenterStandardWorkQtyUnit6'
@DefaultAggregation: #SUM
afvv.vgw06 as WorkCenterStandardWorkQty6,
@Semantics.quantity.unitOfMeasure: 'OpWorkQuantityUnit'
@DefaultAggregation: #SUM
afvv.arbei as OpPlannedWorkQuantity, --PM and PS
@Semantics.unitOfMeasure: true
afvv.vge01 as WorkCenterStandardWorkQtyUnit1,
@Semantics.unitOfMeasure: true
afvv.vge02 as WorkCenterStandardWorkQtyUnit2,
@Semantics.unitOfMeasure: true
afvv.vge03 as WorkCenterStandardWorkQtyUnit3,
@Semantics.unitOfMeasure: true
afvv.vge04 as WorkCenterStandardWorkQtyUnit4,
@Semantics.unitOfMeasure: true
afvv.vge05 as WorkCenterStandardWorkQtyUnit5,
@Semantics.unitOfMeasure: true
afvv.vge06 as WorkCenterStandardWorkQtyUnit6,
@Semantics.unitOfMeasure: true
afvv.ile01 as OpWorkQuantityUnit1,
@Semantics.unitOfMeasure: true
afvv.ile02 as OpWorkQuantityUnit2,
@Semantics.unitOfMeasure: true
afvv.ile03 as OpWorkQuantityUnit3,
@Semantics.unitOfMeasure: true
afvv.ile04 as OpWorkQuantityUnit4,
@Semantics.unitOfMeasure: true
afvv.ile05 as OpWorkQuantityUnit5,
@Semantics.unitOfMeasure: true
afvv.ile06 as OpWorkQuantityUnit6,
@Semantics.unitOfMeasure: true
afvv.arbeh as OpWorkQuantityUnit, --PM and PS
@Semantics.quantity.unitOfMeasure: 'OpWorkQuantityUnit1'
@DefaultAggregation: #SUM
afvv.ism01 as OpConfirmedWorkQuantity1,
@Semantics.quantity.unitOfMeasure: 'OpWorkQuantityUnit2'
@DefaultAggregation: #SUM
afvv.ism02 as OpConfirmedWorkQuantity2,
@Semantics.quantity.unitOfMeasure: 'OpWorkQuantityUnit3'
@DefaultAggregation: #SUM
afvv.ism03 as OpConfirmedWorkQuantity3,
@Semantics.quantity.unitOfMeasure: 'OpWorkQuantityUnit4'
@DefaultAggregation: #SUM
afvv.ism04 as OpConfirmedWorkQuantity4,
@Semantics.quantity.unitOfMeasure: 'OpWorkQuantityUnit5'
@DefaultAggregation: #SUM
afvv.ism05 as OpConfirmedWorkQuantity5,
@Semantics.quantity.unitOfMeasure: 'OpWorkQuantityUnit6'
@DefaultAggregation: #SUM
afvv.ism06 as OpConfirmedWorkQuantity6,
@Semantics.quantity.unitOfMeasure: 'OpWorkQuantityUnit'
@DefaultAggregation: #SUM
afvv.ismnw as ActualWorkQuantity, --PM and PS
// Forecast
@Semantics.quantity.unitOfMeasure: 'WorkCenterStandardWorkQtyUnit1'
@DefaultAggregation: #SUM
afvv.ofm01 as ForecastWorkQuantity1,
@Semantics.quantity.unitOfMeasure: 'WorkCenterStandardWorkQtyUnit2'
@DefaultAggregation: #SUM
afvv.ofm02 as ForecastWorkQuantity2,
@Semantics.quantity.unitOfMeasure: 'WorkCenterStandardWorkQtyUnit3'
@DefaultAggregation: #SUM
afvv.ofm03 as ForecastWorkQuantity3,
@Semantics.quantity.unitOfMeasure: 'WorkCenterStandardWorkQtyUnit4'
@DefaultAggregation: #SUM
afvv.ofm04 as ForecastWorkQuantity4,
@Semantics.quantity.unitOfMeasure: 'WorkCenterStandardWorkQtyUnit5'
@DefaultAggregation: #SUM
afvv.ofm05 as ForecastWorkQuantity5,
@Semantics.quantity.unitOfMeasure: 'WorkCenterStandardWorkQtyUnit6'
@DefaultAggregation: #SUM
afvv.ofm06 as ForecastWorkQuantity6,
@Semantics.quantity.unitOfMeasure: 'OpWorkQuantityUnit'
@DefaultAggregation: #SUM
afvv.ofmnw as ForecastWorkQuantity, --PM and PS
// Operation Unit
@Semantics.unitOfMeasure: true
afvv.meinh as OperationUnit,
@Semantics.quantity.unitOfMeasure: 'OperationUnit'
@Aggregation.default: #SUM
afvv.bmsch as OperationReferenceQuantity,
afvv.umren as OpQtyToBaseQtyDnmntr,
afvv.umrez as OpQtyToBaseQtyNmrtr,
// Quantities
@Semantics.quantity.unitOfMeasure: 'OperationUnit'
@Aggregation.default: #SUM
afvv.mgvrg as OpPlannedTotalQuantity,
@Semantics.quantity.unitOfMeasure: 'OperationUnit'
@Aggregation.default: #SUM
afvv.asvrg as OpPlannedScrapQuantity,
@Semantics.quantity.unitOfMeasure: 'OperationUnit'
@Aggregation.default: #SUM
afvv.lmnga as OpTotalConfirmedYieldQty,
@Semantics.quantity.unitOfMeasure: 'OperationUnit'
@Aggregation.default: #SUM
afvv.xmnga as OpTotalConfirmedScrapQty,
@Semantics.quantity.unitOfMeasure: 'OperationUnit'
@Aggregation.default: #SUM
afvv.rmnga as OperationConfirmedReworkQty,
@Semantics.quantity.unitOfMeasure: 'OperationUnit'
@Aggregation.default: #SUM
afvv.gmnga as OpTotConfdYieldQtyInOrdQtyUnit,
// Durations
afvv.zeier as BreakDurationUnit,
afvv.zmerh as PlannedBreakDuration,
afvv.iserh as ConfirmedBreakDuration,
afvv.zeimu as OverlapMinimumDurationUnit,
afvv.zminu as OverlapMinimumDuration,
afvv.zeilm as MaximumWaitDurationUnit,
afvv.zlmax as MaximumWaitDuration,
afvv.zeilp as MinimumWaitDurationUnit,
afvv.zlpro as MinimumWaitDuration,
afvv.zeitn as StandardMoveDurationUnit,
afvv.ztnor as StandardMoveDuration,
afvv.zeiwn as StandardQueueDurationUnit,
afvv.zwnor as StandardQueueDuration,
afvv.zeiwm as MinimumQueueDurationUnit,
afvv.zwmin as MinimumQueueDuration,
afvv.zeitm as MinimumMoveDurationUnit,
afvv.ztmin as MinimumMoveDuration,
afvv.dauno as OperationStandardDuration,
afvv.daune as OperationStandardDurationUnit,
afvv.daumi as MinimumDuration,
afvv.daume as MinimumDurationUnit,
afvv.tranz as ScheduledMoveDuration,
afvv.traze as ScheduledMoveDurationUnit,
afvv.wartz as ScheduledQueueDuration,
afvv.wrtze as ScheduledQueueDurationUnit,
afvv.liegz as ScheduledWaitDuration,
afvv.ligze as ScheduledWaitDurationUnit,
afvv.plifz as PlannedDeliveryDuration,
afvv.ruest as OpPlannedSetupDurn,
afvv.rstze as OpPlannedSetupDurnUnit,
afvv.bearz as OpPlannedProcessingDurn,
afvv.beaze as OpPlannedProcessingDurnUnit,
afvv.abrue as OpPlannedTeardownDurn,
afvv.aruze as OpPlannedTeardownDurnUnit,
afvv.einsa as ActyBscStartDateConstraintType,
afvv.einse as ActyBscEndDateConstraintType,
afvv.ewste as ActyFcstEndDateConstraintType,
afvv.ewsta as ActyFcstStartDteConstraintType,
afvv.pdau as ActualForecastDuration,
afvv.pdae as ActualForecastDurationUnit,
afvv.ewdan as ForecastedStandardDuration,
afvv.ewdne as FcstdStandardDurationUnit,
afvv.ewdam as ForecastedMinimumDuration,
afvv.ewdme as ForecastedMinimumDurationUnit,
// Dates and Times
afvv.fsavd as OpErlstSchedldExecStrtDte,
afvv.fsavz as OpErlstSchedldExecStrtTme,
afvv.fssbd as OpErlstSchedldProcgStrtDte,
afvv.fssbz as OpErlstSchedldProcgStrtTme,
afvv.fssad as OpErlstSchedldTrdwnStrtDte,
afvv.fssaz as OpErlstSchedldTrdwnStrtTme,
afvv.fsedd as OpErlstSchedldExecEndDte,
afvv.fsedz as OpErlstSchedldExecEndTme,
afvv.fssld as EarliestScheduledWaitStartDate,
afvv.fsslz as EarliestScheduledWaitStartTime,
afvv.fseld as EarliestScheduledWaitEndDate,
afvv.fselz as EarliestScheduledWaitEndTime,
afvv.ssavd as OpLtstSchedldExecStrtDte,
afvv.ssavz as OpLtstSchedldExecStrtTme,
afvv.sssbd as OpLtstSchedldProcgStrtDte,
afvv.sssbz as OpLtstSchedldProcgStrtTme,
afvv.sssad as OpLtstSchedldTrdwnStrtDte,
afvv.sssaz as OpLtstSchedldTrdwnStrtTme,
afvv.ssedd as OpLtstSchedldExecEndDte,
afvv.ssedz as OpLtstSchedldExecEndTme,
afvv.sssld as LatestScheduledWaitStartDate,
afvv.ssslz as LatestScheduledWaitStartTime,
afvv.sseld as LatestScheduledWaitEndDate,
afvv.sselz as LatestScheduledWaitEndTime,
afvv.isavd as OperationConfirmedStartDate,
afvv.ieavd as OperationConfirmedEndDate,
afvv.isdd as OpActualExecutionStartDate,
afvv.isdz as OpActualExecutionStartTime,
afvv.ierd as OpActualSetupEndDate,
afvv.ierz as OpActualSetupEndTime,
afvv.isbd as OpActualProcessingStartDate,
afvv.isbz as OpActualProcessingStartTime,
afvv.iebd as OpActualProcessingEndDate,
afvv.iebz as OpActualProcessingEndTime,
afvv.isad as OpActualTeardownStartDate,
afvv.isaz as OpActualTeardownStartTme,
afvv.iedd as OpActualExecutionEndDate,
afvv.iedz as OpActualExecutionEndTime,
afvv.pedd as ActualForecastEndDate,
afvv.pedz as ActualForecastEndTime,
afvv.fpavd as SchedldFcstdEarliestStartDate,
afvv.fpavz as SchedldFcstdEarliestStartTime,
afvv.fpedd as SchedldFcstdEarliestEndDate,
afvv.fpedz as SchedldFcstdEarliestEndTime,
afvv.spavd as LatestSchedldFcstdStartDate,
afvv.spavz as SchedldFcstdLatestStartTime,
afvv.spedd as LatestSchedldFcstdEndDate,
afvv.spedz as SchedldFcstdLatestEndTime,
afvv.ntanf as ConstraintDateForBscStartDate,
afvv.ntanz as ConstraintTimeForBscStartTime,
afvv.ewstd as ForecastedStartDate,
afvv.ewstz as ForecastedStartTime,
afvv.ewend as ForecastedEndDate,
afvv.ewenz as ForecastedEndTime,
afvv.beazp as ForecastProcessingDurationUnit,
afvv.bearp as ForecastProcessingDuration,
afvv.epanf as OpDispatchedExecStartDate,
afvv.epanz as OpDispatchedExecStartTime,
afvv.epend as OpDispatchedExecEndDate,
afvv.epenz as OpDispatchedExecEndTime,
// Floats
afvv.puffr as BasicDatesFreeFloat,
afvv.pufgs as TotalFloatForBasicDates,
afvv.pufgp as TotalFloatForForecastedDates,
afvv.puffp as ForecastedDatesFreeFloat,
// Offset
afvv.bzoffb as StartDateOffsetReferenceCode,
afvv.ehoffb as StartDateOffsetDurationUnit,
afvv.offstb as StartDateOffsetDuration,
afvv.bzoffe as EndDateOffsetReferenceCode,
afvv.offste as EndDateOffsetDuration,
afvv.ehoffe as EndDateOffsetDurationUnit,
// Associations
_OrderInternalID,
_OrderOperation,
_OperationUnit
};
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"AFVV"
],
"ASSOCIATED":
[
"I_ORDERINTERNALID",
"I_ORDEROPERATIONBASIC",
"I_UNITOFMEASURE"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/