@AbapCatalog.sqlViewName: 'AWCCAPORDER'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #NOT_REQUIRED
@ObjectModel.usageType: {serviceQuality:#D, sizeCategory: #XL, dataClass: #TRANSACTIONAL}
@VDM.viewType: #COMPOSITE
@Metadata.ignorePropagatedAnnotations: true
@ClientHandling.algorithm: #SESSION_VARIABLE
@EndUserText.label: 'Operation Load Distribution'
@VDM.lifecycle.contract.type:#PUBLIC_REMOTE_API
define view A_WorkCenterCapOrderPerBucket with parameters
// @Consumption.hidden: false
// @Consumption.derivation: { lookupEntity: 'I_WRKCTRDEFAULTPARAMVALUES',
// resultElement: 'CapEvalStartDate',
// binding: [{ targetParameter: 'P_CapEvalStartDate',type:#PARAMETER,value:'P_CapEvalStartDate' },
// { targetParameter: 'P_CapEvalEndDate',type:#PARAMETER,value:'P_CapEvalEndDate' },
// { targetParameter: 'P_CapEvalBucketType',type:#PARAMETER,value:'P_CapEvalBucketType' }]}
P_CapEvalStartDate : datum,
// @Consumption.hidden: false
// @Consumption.derivation: { lookupEntity: 'I_WRKCTRDEFAULTPARAMVALUES',
// resultElement: 'CapEvalEndDate',
// binding: [{ targetParameter: 'P_CapEvalStartDate',type:#PARAMETER,value:'P_CapEvalStartDate' },
// { targetParameter: 'P_CapEvalEndDate',type:#PARAMETER,value:'P_CapEvalEndDate' },
// { targetParameter: 'P_CapEvalBucketType',type:#PARAMETER,value:'P_CapEvalBucketType' }]}
P_CapEvalEndDate : datum,
// @Consumption.hidden: false
// @Consumption.derivation: { lookupEntity: 'I_WRKCTRDEFAULTPARAMVALUES',
// resultElement: 'CapEvalBucketType',
// binding: [{ targetParameter: 'P_CapEvalStartDate',type:#PARAMETER,value:'P_CapEvalStartDate' },
// { targetParameter: 'P_CapEvalEndDate',type:#PARAMETER,value:'P_CapEvalEndDate' },
// { targetParameter: 'P_CapEvalBucketType',type:#PARAMETER,value:'P_CapEvalBucketType' }]}
P_CapEvalBucketType : char1
as select from I_WorkCenterCapOrderPerBucket(P_CapEvalStartDate : $parameters.P_CapEvalStartDate,
P_CapEvalEndDate : $parameters.P_CapEvalEndDate,
P_CapEvalBucketType : $parameters. P_CapEvalBucketType) as CapacityPerDailyShift
association [0..*] to I_WorkCenterText as _WorkCenterText on $projection.WorkCenterInternalID = _WorkCenterText.WorkCenterInternalID
and $projection.WorkCenterTypeCode = _WorkCenterText.WorkCenterTypeCode
association [0..*] to I_PlannedOrderTypeText as _PlannedOrderText on $projection.OrderType = _PlannedOrderText.PlannedOrderType
association [0..*] to I_OrderTypeText as _WorkOrderText on $projection.OrderType = _WorkOrderText.OrderType
association [0..*] to I_CapEvalCapRqmtStsText as _OprPlanningText on $projection.OperationPlanningStatusCode = _OprPlanningText.CapacityRequirementStatusCode
association [0..*] to I_SystemStatusText as _OrderStatusText on $projection.OrderStatusCode = _OrderStatusText.SystemStatus
association [0..*] to I_CapEvalFirmingStsText as _FirmingStatusText on CapacityPerDailyShift.OrderFirmingStatusCode = _FirmingStatusText.OrderFirmingStatusCode
association [0..*] to I_CapEvalBucketTypeText as _BucketTypeText on $projection.CapEvalBucketType = _BucketTypeText.CapEvalBucketTypeCode
association [0..*] to I_UnitOfMeasureText as _UOMText on $projection.WorkCenterCapacityUnit = _UOMText.UnitOfMeasure
association [0..*] to I_OrderCategoryText as _WorkOrderCategoryText on $projection.OrderCategory = _WorkOrderCategoryText.OrderCategory
association [0..*] to I_PlannedOrderCategoryText as _PlannedOrderCategoryText on $projection.OrderCategory = _PlannedOrderCategoryText.PlannedOrderCategory
{
key CapacityPerDailyShift.Plant,
@ObjectModel.filter: {transformedBy: 'ABAP:CL_WORKCENTER_API_ORDB_FILT_EX'}
key CapacityPerDailyShift.MRPController,
key CapacityPerDailyShift.WorkCenter,
key CapacityPerDailyShift.WorkCenterTypeCode,
key CapacityPerDailyShift.CapacityCategoryAllocation,
key CapacityPerDailyShift.CapacityInternalID as CapacityInternalID,
@ObjectModel.filter: {transformedBy: 'ABAP:CL_WORKCENTER_API_ORDB_FILT_EX'}
key CapacityPerDailyShift.Material,
@ObjectModel.filter: {transformedBy: 'ABAP:CL_WORKCENTER_API_ORDB_FILT_EX'}
key CapacityPerDailyShift.OrderID as OrderID,
@ObjectModel.filter: {transformedBy: 'ABAP:CL_WORKCENTER_API_ORDB_FILT_EX'}
key CapacityPerDailyShift.Operation as Operation,
@ObjectModel.filter: {transformedBy: 'ABAP:CL_WORKCENTER_API_ORDB_FILT_EX'}
key CapacityPerDailyShift.CapacityEvaluationTimePeriod,
@ObjectModel.filter: {transformedBy: 'ABAP:CL_WORKCENTER_API_ORDB_FILT_EX'}
key CapacityPerDailyShift.ShiftName as ShiftName,
@ObjectModel.filter: {transformedBy: 'ABAP:CL_WORKCENTER_API_ORDB_FILT_EX'}
CapacityPerDailyShift.CapEvalBucketType,
@ObjectModel.filter: {transformedBy: 'ABAP:CL_WORKCENTER_API_ORDB_FILT_EX'}
_BucketTypeText[1:Language=$session.system_language].CapEvalBucketTypeText as CapacityEvaluationTimePerdText,
@ObjectModel.filter: {transformedBy: 'ABAP:CL_WORKCENTER_API_ORDB_FILT_EX'}
CapacityPerDailyShift.FactoryCalendar,
@ObjectModel.filter: {transformedBy: 'ABAP:CL_WORKCENTER_API_ORDB_FILT_EX'}
_WorkCenterText[1:Language=$session.system_language].WorkCenterText as WorkCenterDesc,
@ObjectModel.filter: {transformedBy: 'ABAP:CL_WORKCENTER_API_ORDB_FILT_EX'}
CapacityPerDailyShift.WorkCenterResponsible,
CapacityPerDailyShift.WorkCenterCategoryCode,
CapacityPerDailyShift.WorkCenterInternalID,
@ObjectModel.filter: {transformedBy: 'ABAP:CL_WORKCENTER_API_ORDB_FILT_EX'}
CapacityPerDailyShift.CapacityRequirementOrigin,
@ObjectModel.filter: {transformedBy: 'ABAP:CL_WORKCENTER_API_ORDB_FILT_EX'}
@Semantics.unitOfMeasure: true
CapacityPerDailyShift.CapacityRequirementUnit,
@ObjectModel.filter: {transformedBy: 'ABAP:CL_WORKCENTER_API_ORDB_FILT_EX'}
CapacityPerDailyShift.OrderType,
@ObjectModel.filter: {transformedBy: 'ABAP:CL_WORKCENTER_API_ORDB_FILT_EX'}
case CapacityPerDailyShift.CapacityRequirementOrigin
when '1'
then _WorkOrderText[1:Language=$session.system_language].OrderTypeName
when '2'
then _PlannedOrderText[1:Language=$session.system_language].PlannedOrderTypeName
else ''
end as OrderTypeName,
@ObjectModel.filter: {transformedBy: 'ABAP:CL_WORKCENTER_API_ORDB_FILT_EX'}
@Semantics.quantity.unitOfMeasure: 'BaseUnit'
CapacityPerDailyShift.OrderPlannedTotalQty,
@ObjectModel.filter: {transformedBy: 'ABAP:CL_WORKCENTER_API_ORDB_FILT_EX'}
@Semantics.unitOfMeasure: true
cast(CapacityPerDailyShift.BaseUnit as meins) as BaseUnit,
@ObjectModel.filter: {transformedBy: 'ABAP:CL_WORKCENTER_API_ORDB_FILT_EX'}
CapacityPerDailyShift.OrderCategory,
@ObjectModel.filter: {transformedBy: 'ABAP:CL_WORKCENTER_API_ORDB_FILT_EX'}
case CapacityPerDailyShift.CapacityRequirementOrigin
when '1'
then _WorkOrderCategoryText[1:Language=$session.system_language].OrderCategoryName
when '2'
then _PlannedOrderCategoryText[1:Language=$session.system_language].PlannedOrderCategoryName
else ''
end as OrderCategoryName,
@ObjectModel.filter: {transformedBy: 'ABAP:CL_WORKCENTER_API_ORDB_FILT_EX'}
CapacityPerDailyShift.ProductionVersion,
@ObjectModel.filter: {transformedBy: 'ABAP:CL_WORKCENTER_API_ORDB_FILT_EX'}
_OprPlanningText[1:Language=$session.system_language].CapacityRequirementStatusText as OperationPlanningStatusText,
@ObjectModel.filter: {transformedBy: 'ABAP:CL_WORKCENTER_API_ORDB_FILT_EX'}
CapacityPerDailyShift.OperationPlanningStatusCode,
@ObjectModel.filter: {transformedBy: 'ABAP:CL_WORKCENTER_API_ORDB_FILT_EX'}
cast(CapacityPerDailyShift.OperationLatestStartDate as char8) as OperationLatestStartDate,
@ObjectModel.filter: {transformedBy: 'ABAP:CL_WORKCENTER_API_ORDB_FILT_EX'}
cast(CapacityPerDailyShift.OperationLatestStartTime as char6) as OperationLatestStartTime,
@ObjectModel.filter: {transformedBy: 'ABAP:CL_WORKCENTER_API_ORDB_FILT_EX'}
cast(CapacityPerDailyShift.OperationLatestEndDate as char8) as OperationLatestEndDate,
@ObjectModel.filter: {transformedBy: 'ABAP:CL_WORKCENTER_API_ORDB_FILT_EX'}
cast(CapacityPerDailyShift.OperationLatestEndTime as char6) as OperationLatestEndTime,
@ObjectModel.filter: {transformedBy: 'ABAP:CL_WORKCENTER_API_ORDB_FILT_EX'}
_OrderStatusText[1:Language=$session.system_language].SystemStatusName as OrderStatusText,
@ObjectModel.filter: {transformedBy: 'ABAP:CL_WORKCENTER_API_ORDB_FILT_EX'}
CapacityPerDailyShift.OrderStatusCode,
@ObjectModel.filter: {transformedBy: 'ABAP:CL_WORKCENTER_API_ORDB_FILT_EX'}
cast(CapacityPerDailyShift.OrderFirmingStatusCode as char1) as OrderFirmingStatusCode,
@ObjectModel.filter: {transformedBy: 'ABAP:CL_WORKCENTER_API_ORDB_FILT_EX'}
_FirmingStatusText[1:Language=$session.system_language].OrderFirmingStatusText as OrderFirmingStatusText,
@ObjectModel.filter: {transformedBy: 'ABAP:CL_WORKCENTER_API_ORDB_FILT_EX'}
cast(CapacityPerDailyShift.OpLtstSchedldProcgStrtDte as char8) as OpLtstSchedldProcgStrtDte,
@ObjectModel.filter: {transformedBy: 'ABAP:CL_WORKCENTER_API_ORDB_FILT_EX'}
cast(CapacityPerDailyShift.OpLtstSchedldProcgStrtTme as char6) as OpLtstSchedldProcgStrtTme,
@ObjectModel.filter: {transformedBy: 'ABAP:CL_WORKCENTER_API_ORDB_FILT_EX'}
cast(CapacityPerDailyShift.OpLtstSchedldTrdwnStrtDte as char8) as OpLtstSchedldTrdwnStrtDte,
@ObjectModel.filter: {transformedBy: 'ABAP:CL_WORKCENTER_API_ORDB_FILT_EX'}
cast(CapacityPerDailyShift.OpLtstSchedldTrdwnStrtTme as char6) as OpLtstSchedldTrdwnStrtTme,
@ObjectModel.filter: {transformedBy: 'ABAP:CL_WORKCENTER_API_ORDB_FILT_EX'}
@Semantics.quantity.unitOfMeasure: 'CapacityRequirementUnit'
CapacityPerDailyShift.RemainingCapReqOpSegSetupDurn,
@Semantics.quantity.unitOfMeasure: 'CapacityRequirementUnit'
@ObjectModel.filter: {transformedBy: 'ABAP:CL_WORKCENTER_API_ORDB_FILT_EX'}
CapacityPerDailyShift.RemainingCapReqOpSegProcgDurn,
@Semantics.quantity.unitOfMeasure: 'CapacityRequirementUnit'
@ObjectModel.filter: {transformedBy: 'ABAP:CL_WORKCENTER_API_ORDB_FILT_EX'}
CapacityPerDailyShift.RemainingCapReqOpSegTrdwnDurn,
@ObjectModel.filter: {transformedBy: 'ABAP:CL_WORKCENTER_API_ORDB_FILT_EX'}
CapacityPerDailyShift.OrderInternalID,
@ObjectModel.filter: {transformedBy: 'ABAP:CL_WORKCENTER_API_ORDB_FILT_EX'}
CapacityPerDailyShift.CapacityStartTime,
@ObjectModel.filter: {transformedBy: 'ABAP:CL_WORKCENTER_API_ORDB_FILT_EX'}
CapacityPerDailyShift.CapacityEndTime,
// CapacityPerDailyShift.WorkCenterInternalID,
@Semantics.quantity.unitOfMeasure: 'WorkCenterCapacityUnit'
@ObjectModel.filter: {transformedBy: 'ABAP:CL_WORKCENTER_API_ORDB_FILT_EX'}
CapacityPerDailyShift.WorkCenterAvailableCapacity,
@Semantics.quantity.unitOfMeasure: 'WorkCenterCapacityUnit'
@ObjectModel.filter: {transformedBy: 'ABAP:CL_WORKCENTER_API_ORDB_FILT_EX'}
CapacityPerDailyShift.WorkCenterCapRqmtInCapUnit,
@Semantics.unitOfMeasure: true
@ObjectModel.filter: {transformedBy: 'ABAP:CL_WORKCENTER_API_ORDB_FILT_EX'}
CapacityPerDailyShift.WorkCenterCapacityUnit,
@ObjectModel.filter: {transformedBy: 'ABAP:CL_WORKCENTER_API_ORDB_FILT_EX'}
_UOMText[1:Language=$session.system_language].UnitOfMeasureName as WorkCenterCapUnitText
}