CDS标准视图:有技术对象的维修工单 I_MAINTORDERTECHOBJCUBE
1.CDS标准视图:日期迁移视图 I_ShiftedCalendarDate2.CDS标准视图:设备 I_Equipment3.CDS标准视图:功能位置 I_FunctionalLocation4.CDS标准视图:设备功能位置变更历史 I_EQUIPINSTALLATIONHISTORYC5.CDS标准视图:设备描述 I_EquipmentText6.CDS标准视图:设备信息 I_EquipmentData7.CDS标准视图:维护活动类型 I_MaintenanceActivityType8.CDS标准视图:PM通知单 I_LocationAnalysisCube9.CDS标准视图:ABC标识文本 I_ABCIndicatorText10.CDS标准视图:技术对象类别文本 I_TechnicalObjectTypeText11.CDS标准视图:功能位置可用标签 I_FUNCNLLOCALTERNATIVELABEL12.CDS标准视图:功能位置种类描述 I_FlocCategoryText13.CDS标准视图:功能位置描述 I_FunctionalLocationText14.CDS标准视图:功能位置信息 I_FunctionalLocationData15.CDS标准视图:维修工单工艺数据 I_MAINTORDEROPERATIONDATA
16.CDS标准视图:有技术对象的维修工单 I_MAINTORDERTECHOBJCUBE
17.CDS标准视图:维护通知任务数据 I_MaintNotificationTaskData18.CDS标准视图:维护通知原因数据 I_MaintNotificationCauseData19.CDS标准视图:维护通知活动信息 I_MaintNotificationActyData20.CDS标准视图:维护计划数据 C_MaintenancePlanDEX21.CDS标准视图:维护计划 I_MaintenancePlanBasic22.CDS标准视图:维护项目数据 C_MaintenanceItemDEX23.CDS标准视图:维护活动类型描述 I_MaintenanceActivityTypeText24.CDS标准视图:技术对象检验级别 I_TechObjInspectionLevelCode25.CDS标准视图:技术对象检验级别描述 I_TechObjInspectionLevelText26.CDS标准视图:维护通知数据 I_PMNotifMaintenanceData27.CDS标准视图:维修工单实际成本数据 I_MaintOrderActualCostDataCube28.CDS标准视图:维护任务清单数据 I_MaintenanceTaskListData29.CDS标准视图:维护计划员组 I_MAINTENANCEPLANNERGROUP30.CDS标准视图:分配到任务清单的维护包数据 I_PckgTaskListOpalLocData31.CDS标准视图:维护包描述 I_MaintPackageTextData32.CDS标准视图:维护包数据 I_MaintenancePackageData33.CDS标准视图:优先级描述数据 I_GenericPriorityTextData34.CDS标准视图:优先级数据 I_GenericPriorityData35.CDS标准视图:测量文档数据 I_MeasurementDocumentData36.CDS标准视图:测量点数据 I_MeasuringPointData37.CDS标准视图:维护策略描述 I_MaintStrategyTextData38.CDS标准视图:维护策略数据 I_MaintenanceStrategyData39.CDS标准视图:安排维护计划的调用 I_MAINTENANCEPLANSCHEDULE40.CDS标准视图:付款锁定原因 I_PaymentBlockingReason41.CDS标准视图:付款锁定原因描述 I_PaymentBlockingReasonText42.CDS标准视图:会计员 I_AccountingClerk43.CDS标准视图:银行对账单抬头 I_BankStatement44.CDS标准视图:银行对账单行项目 I_BankStatementItem45.CDS标准视图:催款范围 I_DunningArea46.CDS标准视图:催款范围描述 I_DunningAreaText47.CDS标准视图:催款冻结 I_DunningBlockingReasonCode48.CDS标准视图:催款冻结描述 I_DunningBlockingReasonText49.CDS标准视图:催款代码 I_DunningKey50.CDS标准视图:催款级别分配 I_DunningLevelDistribution51.CDS标准视图:预期应收 I_FutureAccountsReceivables52.CDS标准视图:总计应收款 I_TotalAccountsReceivables53.CDS标准视图:销售变现天数 I_DaysSalesOutstanding54.CDS标准视图:应收账龄表 I_ARJrnlEntrItmAgingGrid55.CDS标准视图:一次性账户的客户行项目 I_ONETIMEACCOUNTCUSTOMER- 视图名称:有技术对象的维修工单 I_MAINTORDERTECHOBJCUBE
- 视图类型:基础
- 视图代码:
点击查看代码
@EndUserText.label: 'Maintenance Order With Tech Object - Cube'
@VDM.viewType: #COMPOSITE
@AbapCatalog.sqlViewName: 'IMNTORDTOCUBE'
@AccessControl.authorizationCheck: #CHECK
@AbapCatalog.compiler.compareFilter: true
@ClientHandling.algorithm: #SESSION_VARIABLE
@Analytics: {
dataCategory: #CUBE,
dataExtraction: {
enabled: true,
delta.byElement: {
name: 'LastChangeDateTime'
}
}
}
@Metadata.allowExtensions:true
@ObjectModel: {
usageType: {
dataClass: #TRANSACTIONAL,
serviceQuality: #D,
sizeCategory: #XL
}
}
@ObjectModel.supportedCapabilities:[ #ANALYTICAL_PROVIDER ]
@ObjectModel.modelingPattern: #ANALYTICAL_CUBE
@Metadata.ignorePropagatedAnnotations: true
define view I_MaintOrderTechObjCube
as select from I_MaintenanceOrder as I_MaintenanceOrder
left outer to one join P_MaintOrderDurationInWorkdays(im_clnt : $session.client) as durn on durn.MaintenanceOrder = I_MaintenanceOrder.MaintenanceOrder
association [0..1] to I_TechObjIsEquipOrFuncnlLoc as _TechObjIsEquipOrFuncnlLoc on $projection.TechObjIsEquipOrFuncnlLoc = _TechObjIsEquipOrFuncnlLoc.TechObjIsEquipOrFuncnlLoc
association [0..1] to I_TechnicalObjectType as _TechnicalObjectType on $projection.TechnicalObjectType = _TechnicalObjectType.TechnicalObjectType
association [0..1] to I_WorkCenterBySemanticKey as _MainWorkCenterBySemanticKey on $projection.MainWorkCenter = _MainWorkCenterBySemanticKey.WorkCenter
and $projection.MainWorkCenterPlant = _MainWorkCenterBySemanticKey.Plant
association [0..1] to I_WorkCenterBySemanticKey as _WorkCenterBySemanticKey on $projection.workcenter = _WorkCenterBySemanticKey.WorkCenter
and $projection.WorkCenterPlant = _WorkCenterBySemanticKey.Plant
association [0..*] to I_EquipmentData as _EquipmentData on _EquipmentData.Equipment = $projection.Equipment
association [0..1] to I_FunctionalLocationData as _FunctionalLocationData on _FunctionalLocationData.FunctionalLocation = $projection.functionallocation
association [0..1] to I_UnitOfMeasure as _OrderDurationUnit on _OrderDurationUnit.UnitOfMeasure = $projection.OrderDurationUnit
association [0..1] to I_WorkCenter as _WorkCenter on $projection.WorkCenterInternalID = _WorkCenter.WorkCenterInternalID
and _WorkCenter.WorkCenterTypeCode = 'A'
association [0..1] to I_MaintenancePlanPlant as _MaintenancePlanPlant on $projection.MaintenancePlanningPlant = _MaintenancePlanPlant.MaintenancePlanningPlant
-- Extensions, do not expose as association:
association [0..1] to E_MaintenanceOrder as _MaintenanceOrderExtension on $projection.MaintenanceOrder = _MaintenanceOrderExtension.MaintenanceOrder
{
@ObjectModel.text.element: [ 'MaintenanceOrderDesc' ]
key I_MaintenanceOrder.MaintenanceOrder,
cast( ' ' as eam_is_historical_order preserving type ) as MaintenanceOrderIsHistorical,
@ObjectModel.foreignKey.association: '_MaintenanceOrderType'
I_MaintenanceOrder.MaintenanceOrderType,
@Semantics.text: true
I_MaintenanceOrder.MaintenanceOrderDesc,
I_MaintenanceOrder.MaintPriority,
I_MaintenanceOrder.MaintPriorityType,
@ObjectModel.foreignKey.association: '_FunctionalLocationData'
I_MaintenanceOrder._LocationAccountAssignment.FunctionalLocation,
@Consumption.filter.businessDate.at
@ObjectModel.foreignKey.association: '_EquipmentData'
I_MaintenanceOrder.Equipment,
@ObjectModel.foreignKey.association: '_Assembly'
I_MaintenanceOrder.Assembly,
I_MaintenanceOrder._Equipment.Material,
I_MaintenanceOrder.SerialNumber,
@ObjectModel.foreignKey.association: '_MaintenanceNotification'
I_MaintenanceOrder.MaintenanceNotification,
I_MaintenanceOrder._Order.LeadingOrder,
@ObjectModel.foreignKey.association: '_MaintenancePlannerGroup'
I_MaintenanceOrder.MaintenancePlannerGroup,
@ObjectModel.foreignKey.association: '_MaintenancePlanPlant'
I_MaintenanceOrder.MaintenancePlanningPlant,
cast( '' as i_parnr_vera ) as MaintOrdPersonResponsible,
I_MaintenanceOrder.MaintenanceRevision,
@ObjectModel.foreignKey.association: '_MaintenancePlan'
I_MaintenanceOrder.MaintenancePlan,
@ObjectModel.foreignKey.association: '_MaintenanceItem'
I_MaintenanceOrder.MaintenanceItem,
@ObjectModel.foreignKey.association: '_BillOfOperationsType'
I_MaintenanceOrder._Order.BillOfOperationsType as TaskListType,
@ObjectModel.foreignKey.association: '_BillOfOperationsGroup'
I_MaintenanceOrder._Order.BillOfOperations as TaskListGroup,
I_MaintenanceOrder._Order.BillOfOperationsVariant as TaskListGroupCounter,
I_MaintenanceOrder.MaintenanceOrderPlanningCode,
@ObjectModel.foreignKey.association: '_MaintenanceActivityType'
I_MaintenanceOrder.MaintenanceActivityType,
@ObjectModel.foreignKey.association: '_ABCIndicator'
I_MaintenanceOrder._LocationAccountAssignment.ABCIndicator,
@ObjectModel.foreignKey.association: '_MaintenancePlant'
I_MaintenanceOrder._LocationAccountAssignment.MaintenancePlant,
@ObjectModel.foreignKey.association: '_Location'
I_MaintenanceOrder._LocationAccountAssignment.AssetLocation,
I_MaintenanceOrder._LocationAccountAssignment.AssetRoom,
I_MaintenanceOrder.MaintenanceProcessingPhase,
I_MaintenanceOrder.OperationSystemCondition,
@ObjectModel.foreignKey.association: '_PlantSection'
I_MaintenanceOrder._LocationAccountAssignment.PlantSection,
@ObjectModel.foreignKey.association: '_MainWorkCenterBySemanticKey'
cast( I_MaintenanceOrder._MainWorkCenter.WorkCenter as gewrk preserving type ) as MainWorkCenter,
@ObjectModel.foreignKey.association: '_MainWorkCenterPlant'
cast( I_MaintenanceOrder._MainWorkCenter.Plant as wergw preserving type ) as MainWorkCenterPlant,
@ObjectModel.foreignKey.association: '_WorkCenterBySemanticKey'
I_MaintenanceOrder._LocationAccountAssignment._WorkCenter.WorkCenter,
@ObjectModel.foreignKey.association: '_WorkCenterPlant'
I_MaintenanceOrder._LocationAccountAssignment._WorkCenter.Plant as WorkCenterPlant,
I_MaintenanceOrder.ReferenceElement,
@ObjectModel.foreignKey.association: '_CostCenter'
I_MaintenanceOrder._LocationAccountAssignment.CostCenter,
@ObjectModel.foreignKey.association: '_ControllingArea'
I_MaintenanceOrder._LocationAccountAssignment.ControllingArea,
I_MaintenanceOrder._Order.SuperiorProjectNetwork,
@ObjectModel.foreignKey.association: '_CompanyCode'
I_MaintenanceOrder._LocationAccountAssignment.CompanyCode,
@ObjectModel.foreignKey.association: '_BusinessArea'
I_MaintenanceOrder._LocationAccountAssignment.BusinessArea,
@ObjectModel.foreignKey.association: '_WBSElementBasicData'
I_MaintenanceOrder._LocationAccountAssignment.WBSElementInternalID,
I_MaintenanceOrder._LocationAccountAssignment.MasterFixedAsset,
I_MaintenanceOrder._LocationAccountAssignment.FixedAsset,
I_MaintenanceOrder._LocationAccountAssignment.SettlementOrder,
I_MaintenanceOrder.MaintenanceOrderInternalID,
I_MaintenanceOrder._Order.IsMarkedForDeletion,
// Dates and Times
@Semantics.systemDate.createdAt: true
I_MaintenanceOrder._Order.CreationDate,
I_MaintenanceOrder._Order.CreationTime,
@Semantics.systemDate.lastChangedAt: true
I_MaintenanceOrder._Order.LastChangeDate,
I_MaintenanceOrder._Order.LastChangeTime,
--@Semantics.calendarItem.dtStart: true
I_MaintenanceOrder._Order.PlannedStartDate,
I_MaintenanceOrder._Order.PlannedStartTime,
--@Semantics.calendarItem.dtEnd: true
I_MaintenanceOrder._Order.PlannedEndDate,
I_MaintenanceOrder._Order.PlannedEndTime,
--@Semantics.calendarItem.dtStart: true
I_MaintenanceOrder._Order.ScheduledBasicStartDate as ScheduledBasicStartDate,
I_MaintenanceOrder._Order.ScheduledBasicStartTime,
--@Semantics.calendarItem.dtEnd: true
I_MaintenanceOrder._Order.ScheduledBasicEndDate,
I_MaintenanceOrder._Order.ScheduledBasicEndTime,
--@Semantics.calendarItem.dtStart: true
I_MaintenanceOrder._Order.ActualStartDate,
I_MaintenanceOrder._Order.ActualStartTime,
--@Semantics.calendarItem.dtEnd: true
I_MaintenanceOrder._Order.ConfirmedEndDate as ConfirmedEndDate,
I_MaintenanceOrder._Order.ConfirmedEndTime,
@Semantics.businessDate.at: true
I_MaintenanceOrder.MaintOrderReferenceDate,
// Dates and Times as timestamps
@Semantics.systemDateTime.createdAt: true
cast( dats_tims_to_tstmp( I_MaintenanceOrder._Order.CreationDate, I_MaintenanceOrder._Order.CreationTime, abap_system_timezone( $session.client,'NULL' ),
$session.client, 'NULL' ) as creation_timestamp ) as CreationDateTime,
@Semantics.systemDateTime.lastChangedAt: true
cast( I_MaintenanceOrder.LastChangeDateTime as rslastchangedat preserving type ) as LastChangeDateTime,
cast( dats_tims_to_tstmp( I_MaintenanceOrder._Order.ScheduledBasicEndDate, I_MaintenanceOrder._Order.ScheduledBasicEndTime, abap_system_timezone( $session.client,'NULL' ),
$session.client, 'NULL' ) as sched_basic_end_timestamp ) as ScheduledBasicEndDateTime,
cast( dats_tims_to_tstmp( I_MaintenanceOrder._Order.ConfirmedEndDate, I_MaintenanceOrder._Order.ConfirmedEndTime, abap_system_timezone( $session.client,'NULL' ),
$session.client, 'NULL' ) as conf_end_timestamp ) as ConfirmedEndDateTime,
// Users
@Semantics.user.createdBy: true
I_MaintenanceOrder._Order.CreatedByUser,
@Semantics.user.lastChangedBy: true
I_MaintenanceOrder._Order.LastChangedByUser,
/****************************************************************************************************
* Technical Object
****************************************************************************************************/
case when Equipment = '' then
cast( _LocationAccountAssignment.FunctionalLocation as eams_tec_obj )
else cast( Equipment as eams_tec_obj ) end as TechnicalObject,
@ObjectModel.foreignKey.association: '_TechnicalObjectType'
coalesce( _Equipment.TechnicalObjectType, _LocationAccountAssignment._FunctionalLocation.TechnicalObjectType ) as TechnicalObjectType,
@ObjectModel.foreignKey.association: '_TechObjIsEquipOrFuncnlLoc'
cast( case when Equipment = '' and _LocationAccountAssignment.FunctionalLocation = '' then ''
else case when Equipment = '' then 'EAMS_FL'
else 'EAMS_EQUI' end end as eams_tec_obj_type_value ) as TechObjIsEquipOrFuncnlLoc,
/****************************************************************************************************
* Measures
****************************************************************************************************/
// Durations
//@Semantics.calendarItem.duration: true
@DefaultAggregation: #SUM
//@Semantics.quantity.unitOfMeasure: 'OrderDurationUnit' -- not supported by BW for INT4 fields
durn.DLZNetto as OrderLeadTimeDuration,
//@Semantics.calendarItem.duration: true
@DefaultAggregation: #SUM
//@Semantics.quantity.unitOfMeasure: 'OrderDurationUnit' -- not supported by BW for INT4 fields
durn.DLZBrutto as OrderRuntimeDuration,
@Semantics.unitOfMeasure: true
@ObjectModel.foreignKey.association: '_OrderDurationUnit'
cast( 'TAG' as qeinhtag ) as OrderDurationUnit,
@DefaultAggregation: #SUM
cast( 1 as eam_num_orders_created ) as NumberOfCreatedMaintOrders,
@DefaultAggregation: #SUM
cast( case when I_MaintenanceOrder._Order.IsMarkedForDeletion != 'X' then 1
else 0 end as eam_num_orders ) as NumberOfOrders,
@DefaultAggregation: #SUM
cast( case when I_MaintenanceOrder.MaintenanceProcessingPhase = '3'
or ( I_MaintenanceOrder.MaintenanceProcessingPhase = '4'
and not (I_MaintenanceOrder._StatusObjectStatus[1: IsUserStatus='' and StatusIsInactive = '' and StatusCode = 'I0015' ].StatusCode != '' ) )
or I_MaintenanceOrder.MaintenanceProcessingPhase = '5'
or ( I_MaintenanceOrder.MaintenanceProcessingPhase = '6' and I_MaintenanceOrder._Order.TechnicalCompletionDate != '00000000' )
then 1
else 0 end as eam_num_orders_compl ) as NumberOfCompletedMaintOrders,
@DefaultAggregation: #SUM
cast( case when I_MaintenanceOrder.MaintenanceOrderPlanningCode = '1' then 1
else 0 end as eam_num_orders_planned ) as NumberOfPlannedMaintOrders,
@DefaultAggregation: #SUM
cast( case when I_MaintenanceOrder.MaintenanceOrderPlanningCode = ' ' then 1
else 0 end as eam_num_orders_unplanned ) as NumberOfUnplannedMaintOrders,
@DefaultAggregation: #SUM
cast( case when I_MaintenanceOrder.MaintenanceOrderPlanningCode = '2' then 1
else 0 end as eam_num_orders_immediate ) as NumberOfImmediateMaintOrders,
@DefaultAggregation: #SUM
cast( case when ( I_MaintenanceOrder.MaintenanceProcessingPhase = '4'
and I_MaintenanceOrder._StatusObjectStatus[1: IsUserStatus='' and StatusIsInactive='' and StatusCode = 'I0015' ].StatusCode != '' )
or ( I_MaintenanceOrder.MaintenanceProcessingPhase = '6' and I_MaintenanceOrder._Order.TechnicalCompletionDate = '00000000' )
then 1
else 0 end as eam_num_orders_not_to_be_exec ) as NmbrOfMaintOrdsNotToBeExecuted,
@DefaultAggregation: #SUM
cast( case when I_MaintenanceOrder.MaintenanceProcessingPhase = '0'
or I_MaintenanceOrder.MaintenanceProcessingPhase = '2'
then 1
else 0 end as eam_num_orders_outstanding ) as NmbrOfOutstandingMaintOrders,
@DefaultAggregation: #SUM
cast( case when ( I_MaintenanceOrder._Order.ConfirmedEndDate != '00000000'
and I_MaintenanceOrder._Order.ScheduledBasicEndDate != '00000000'
and ( I_MaintenanceOrder._Order.ConfirmedEndDate < I_MaintenanceOrder._Order.ScheduledBasicEndDate
or ( I_MaintenanceOrder._Order.ConfirmedEndDate = I_MaintenanceOrder._Order.ScheduledBasicEndDate
and I_MaintenanceOrder._Order.ConfirmedEndTime <= I_MaintenanceOrder._Order.ScheduledBasicEndTime ) ) )
then 1
else 0 end as eam_num_orders_compl_on_time ) as NmbrOfMaintOrdsCompletedOnTime,
@DefaultAggregation: #SUM
cast( 0 as eam_num_orders_historical) as NmbrOfHistoricalOrders,
//Technical Fields
I_MaintenanceOrder.WorkCenterInternalID as MainWorkCenterInternalID,
I_MaintenanceOrder._LocationAccountAssignment.WorkCenterInternalID,
I_MaintenanceOrder.WorkCenterTypeCode,
//Associations
I_MaintenanceOrder._MaintenanceOrderType,
I_MaintenanceOrder._Equipment,
I_MaintenanceOrder._Assembly,
I_MaintenanceOrder._MaintenanceItem,
I_MaintenanceOrder._MaintenanceNotification,
I_MaintenanceOrder._MaintenancePlannerGroup,
I_MaintenanceOrder._MaintenancePlanningPlant,
_MaintenancePlanPlant,
I_MaintenanceOrder._MaintenancePlan,
I_MaintenanceOrder._Order._BillOfOperationsType,
I_MaintenanceOrder._Order._BillOfOperationsGroup,
I_MaintenanceOrder._MaintenanceActivityType,
I_MaintenanceOrder._LocationAccountAssignment._ABCIndicator,
I_MaintenanceOrder._LocationAccountAssignment._CompanyCode,
I_MaintenanceOrder._LocationAccountAssignment._MaintenancePlant,
I_MaintenanceOrder._LocationAccountAssignment._Location,
I_MaintenanceOrder._LocationAccountAssignment._PlantSection,
I_MaintenanceOrder._LocationAccountAssignment._FunctionalLocation,
I_MaintenanceOrder._LocationAccountAssignment._WorkCenter._Plant as _WorkCenterPlant,
I_MaintenanceOrder._LocationAccountAssignment._CostCenter,
I_MaintenanceOrder._LocationAccountAssignment._ControllingArea,
I_MaintenanceOrder._LocationAccountAssignment._BusinessArea,
I_MaintenanceOrder._MainWorkCenter,
I_MaintenanceOrder._MainWorkCenter._Plant as _MainWorkCenterPlant,
I_MaintenanceOrder._LocationAccountAssignment._WBSElementBasicData,
_TechnicalObjectType,
_TechObjIsEquipOrFuncnlLoc,
_MainWorkCenterBySemanticKey,
_WorkCenterBySemanticKey,
_EquipmentData,
_FunctionalLocationData,
_OrderDurationUnit,
_WorkCenter
}
union all
select from I_MaintOrderHistTechObj
association [0..1] to I_TechObjIsEquipOrFuncnlLoc as _TechObjIsEquipOrFuncnlLoc on $projection.TechObjIsEquipOrFuncnlLoc = _TechObjIsEquipOrFuncnlLoc.TechObjIsEquipOrFuncnlLoc
association [0..1] to I_TechnicalObjectType as _TechnicalObjectType on $projection.technicalobjecttype = _TechnicalObjectType.TechnicalObjectType
association [0..1] to I_WorkCenterBySemanticKey as _MainWorkCenterBySemanticKey on $projection.MainWorkCenter = _MainWorkCenterBySemanticKey.WorkCenter
and $projection.MainWorkCenterPlant = _MainWorkCenterBySemanticKey.Plant
association [0..1] to I_WorkCenterBySemanticKey as _WorkCenterBySemanticKey on $projection.workcenter = _WorkCenterBySemanticKey.WorkCenter
and $projection.WorkCenterPlant = _WorkCenterBySemanticKey.Plant
association [0..*] to I_EquipmentData as _EquipmentData on _EquipmentData.Equipment = $projection.Equipment
association [0..1] to I_FunctionalLocationData as _FunctionalLocationData on _FunctionalLocationData.FunctionalLocation = $projection.functionallocation
association [0..1] to I_UnitOfMeasure as _OrderDurationUnit on _OrderDurationUnit.UnitOfMeasure = $projection.OrderDurationUnit
association [0..1] to I_WorkCenter as _WorkCenter on $projection.WorkCenterInternalID = _WorkCenter.WorkCenterInternalID
and _WorkCenter.WorkCenterTypeCode = 'A'
association [0..1] to I_MaintenancePlanPlant as _MaintenancePlanPlant on $projection.MaintenancePlanningPlant = _MaintenancePlanPlant.MaintenancePlanningPlant
{
key I_MaintOrderHistTechObj.MaintenanceOrder,
cast( 'X' as eam_is_historical_order preserving type ) as MaintenanceOrderIsHistorical,
I_MaintOrderHistTechObj.MaintenanceOrderType,
I_MaintOrderHistTechObj.MaintenanceOrderDesc,
I_MaintOrderHistTechObj.MaintPriority,
I_MaintOrderHistTechObj.MaintPriorityType,
I_MaintOrderHistTechObj._LocationAccountAssignment.FunctionalLocation,
I_MaintOrderHistTechObj.Equipment,
I_MaintOrderHistTechObj.Assembly,
I_MaintOrderHistTechObj._Equipment.Material,
I_MaintOrderHistTechObj.SerialNumber,
I_MaintOrderHistTechObj.MaintenanceNotification,
I_MaintOrderHistTechObj.LeadingOrder,
I_MaintOrderHistTechObj.MaintenancePlannerGroup,
@ObjectModel.foreignKey.association: '_MaintenancePlanPlant'
I_MaintOrderHistTechObj.MaintenancePlanningPlant,
I_MaintOrderHistTechObj.MaintOrdPersonResponsible,
I_MaintOrderHistTechObj.MaintenanceRevision,
I_MaintOrderHistTechObj.MaintenancePlan,
I_MaintOrderHistTechObj.MaintenanceItem,
I_MaintOrderHistTechObj.BillOfOperationsType as TaskListType,
I_MaintOrderHistTechObj.BillOfOperations as TaskListGroup,
I_MaintOrderHistTechObj.BillOfOperationsVariant as TaskListGroupCounter,
I_MaintOrderHistTechObj.MaintenanceOrderPlanningCode,
I_MaintOrderHistTechObj.MaintenanceActivityType,
I_MaintOrderHistTechObj._LocationAccountAssignment.ABCIndicator,
I_MaintOrderHistTechObj._LocationAccountAssignment.MaintenancePlant,
I_MaintOrderHistTechObj._LocationAccountAssignment.AssetLocation,
I_MaintOrderHistTechObj._LocationAccountAssignment.AssetRoom,
I_MaintOrderHistTechObj.MaintenanceProcessingPhase,
I_MaintOrderHistTechObj.OperationSystemCondition,
I_MaintOrderHistTechObj._LocationAccountAssignment.PlantSection,
I_MaintOrderHistTechObj._MainWorkCenter.WorkCenter as MainWorkCenter,
I_MaintOrderHistTechObj._MainWorkCenter.Plant as MainWorkCenterPlant,
I_MaintOrderHistTechObj._LocationAccountAssignment._WorkCenter.WorkCenter,
I_MaintOrderHistTechObj._LocationAccountAssignment._WorkCenter.Plant as WorkCenterPlant,
// ADPSP is not available HIKO
'' as ReferenceElement,
I_MaintOrderHistTechObj._LocationAccountAssignment.CostCenter,
I_MaintOrderHistTechObj._LocationAccountAssignment.ControllingArea,
// SuperiorProjectNetwork not available because AUFNT missing in HIKO
//@ObjectModel.foreignKey.association: '_SuperiorProjectNetwork'
'' as SuperiorProjectNetwork,
@ObjectModel.foreignKey.association: '_CompanyCode'
I_MaintOrderHistTechObj._LocationAccountAssignment.CompanyCode,
I_MaintOrderHistTechObj._LocationAccountAssignment.BusinessArea,
@ObjectModel.foreignKey.association: '_WBSElementBasicData'
I_MaintOrderHistTechObj._LocationAccountAssignment.WBSElementInternalID,
I_MaintOrderHistTechObj._LocationAccountAssignment.MasterFixedAsset,
I_MaintOrderHistTechObj._LocationAccountAssignment.FixedAsset,
I_MaintOrderHistTechObj._LocationAccountAssignment.SettlementOrder,
I_MaintOrderHistTechObj.MaintenanceOrderInternalID,
I_MaintOrderHistTechObj.IsMarkedForDeletion,
// Dates and Times
I_MaintOrderHistTechObj.CreationDate,
'000000' as CreationTime,
I_MaintOrderHistTechObj.LastChangeDate,
'000000' as LastChangeTime,
I_MaintOrderHistTechObj.MaintOrdBasicStartDate as PlannedStartDate,
'000000' as PlannedStartTime,
I_MaintOrderHistTechObj.MaintOrdBasicEndDate as PlannedEndDate,
'000000' as PlannedEndTime,
'00000000' as ScheduledBasicStartDate,
'000000' as ScheduledBasicStartTime,
'00000000' as ScheduledBasicEndDate,
'000000' as ScheduledBasicEndTime,
I_MaintOrderHistTechObj.ActualStartDate,
'000000' as ActualStartTime,
I_MaintOrderHistTechObj.ConfirmedEndDate,
'000000' as ConfirmedEndTime,
I_MaintOrderHistTechObj.MaintOrderReferenceDate,
// Dates and Times as timestamps
cast( dats_tims_to_tstmp( CreationDate, cast('000000' as abap.tims), abap_system_timezone( $session.client,'NULL' ),
$session.client, 'NULL' ) as creation_timestamp ) as CreationDateTime,
cast( dats_tims_to_tstmp( CreationDate, cast('000000' as abap.tims), abap_system_timezone( $session.client,'NULL' ),
$session.client, 'NULL' ) as rslastchangedat preserving type ) as LastChangeDateTime,
cast( dats_tims_to_tstmp( cast('00000000' as abap.dats), cast('000000' as abap.tims), abap_system_timezone( $session.client,'NULL' ),
$session.client, 'NULL' ) as sched_basic_end_timestamp ) as ScheduledBasicEndDateTime,
cast( dats_tims_to_tstmp( ConfirmedEndDate, cast('000000' as abap.tims), abap_system_timezone( $session.client,'NULL' ),
$session.client, 'NULL' ) as conf_end_timestamp ) as ConfirmedEndDateTime,
// Users
I_MaintOrderHistTechObj.CreatedByUser,
I_MaintOrderHistTechObj.LastChangedByUser,
/****************************************************************************************************
* Technical Object
****************************************************************************************************/
I_MaintOrderHistTechObj.TechnicalObject,
I_MaintOrderHistTechObj._TechnicalObject.TechnicalObjectType,
I_MaintOrderHistTechObj.TechObjIsEquipOrFuncnlLoc,
/****************************************************************************************************
* Measures
****************************************************************************************************/
// Durations
// no durations, because ScheduledBasicStartDate is missing
cast (0 as eam_order_leadtime_in_workdays) as OrderLeadTimeDuration,
cast (0 as eam_order_runtime_in_cal_days) as OrderRuntimeDuration,
cast( 'TAG' as qeinhtag ) as OrderDurationUnit,
cast( 1 as eam_num_orders_created ) as NumberOfCreatedMaintOrders,
cast( case when I_MaintOrderHistTechObj.IsMarkedForDeletion != 'X' then 1
else 0 end as eam_num_orders ) as NumberOfOrders,
cast( case when I_MaintOrderHistTechObj.MaintenanceProcessingPhase = '3'
or ( I_MaintOrderHistTechObj.MaintenanceProcessingPhase = '4'
and not (I_MaintOrderHistTechObj._StatusObjectStatus[1: IsUserStatus='' and StatusIsActive='X' and StatusCode = 'I0015' ].StatusCode != '' ) )
or I_MaintOrderHistTechObj.MaintenanceProcessingPhase = '5'
then 1
else 0 end as eam_num_orders_compl ) as NumberOfCompletedMaintOrders,
cast( case when I_MaintOrderHistTechObj.MaintenanceOrderPlanningCode = '1' then 1
else 0 end as eam_num_orders_planned ) as NumberOfPlannedMaintOrders,
cast( case when I_MaintOrderHistTechObj.MaintenanceOrderPlanningCode = ' ' then 1
else 0 end as eam_num_orders_unplanned ) as NumberOfUnplannedMaintOrders,
cast( case when I_MaintOrderHistTechObj.MaintenanceOrderPlanningCode = '2' then 1
else 0 end as eam_num_orders_immediate ) as NumberOfImmediateMaintOrders,
cast( case when ( I_MaintOrderHistTechObj.MaintenanceProcessingPhase = '4'
and I_MaintOrderHistTechObj._StatusObjectStatus[1: IsUserStatus='' and StatusIsActive='X' and StatusCode = 'I0015' ].StatusCode != '' )
then 1
else 0 end as eam_num_orders_not_to_be_exec ) as NmbrOfMaintOrdsNotToBeExecuted,
cast( case when I_MaintOrderHistTechObj.MaintenanceProcessingPhase = '0'
or I_MaintOrderHistTechObj.MaintenanceProcessingPhase = '2'
then 1
else 0 end as eam_num_orders_outstanding ) as NmbrOfOutstandingMaintOrders,
cast( 0 as eam_num_orders_compl_on_time) as NmbrOfMaintOrdsCompletedOnTime,
cast( 1 as eam_num_orders_historical) as NmbrOfHistoricalOrders,
//Technical Fields
I_MaintOrderHistTechObj.WorkCenterInternalID as MainWorkCenterInternalID,
I_MaintOrderHistTechObj._LocationAccountAssignment.WorkCenterInternalID,
I_MaintOrderHistTechObj.WorkCenterTypeCode,
//Associations
I_MaintOrderHistTechObj._MaintenanceOrderType,
I_MaintOrderHistTechObj._Equipment,
I_MaintOrderHistTechObj._Assembly,
I_MaintOrderHistTechObj._MaintenanceItem,
I_MaintOrderHistTechObj._MaintenanceNotification,
I_MaintOrderHistTechObj._MaintenancePlannerGroup,
I_MaintOrderHistTechObj._MaintenancePlanningPlant,
_MaintenancePlanPlant,
I_MaintOrderHistTechObj._MaintenancePlan,
I_MaintOrderHistTechObj._BillOfOperationsType,
I_MaintOrderHistTechObj._BillOfOperationsGroup,
I_MaintOrderHistTechObj._MaintenanceActivityType,
I_MaintOrderHistTechObj._LocationAccountAssignment._ABCIndicator,
I_MaintOrderHistTechObj._LocationAccountAssignment._CompanyCode,
I_MaintOrderHistTechObj._LocationAccountAssignment._MaintenancePlant,
I_MaintOrderHistTechObj._LocationAccountAssignment._Location,
I_MaintOrderHistTechObj._LocationAccountAssignment._PlantSection,
I_MaintOrderHistTechObj._LocationAccountAssignment._FunctionalLocation,
I_MaintOrderHistTechObj._LocationAccountAssignment._WorkCenter._Plant as _WorkCenterPlant,
I_MaintOrderHistTechObj._LocationAccountAssignment._CostCenter,
I_MaintOrderHistTechObj._LocationAccountAssignment._ControllingArea,
I_MaintOrderHistTechObj._LocationAccountAssignment._BusinessArea,
I_MaintOrderHistTechObj._MainWorkCenter,
I_MaintOrderHistTechObj._MainWorkCenter._Plant as _MainWorkCenterPlant,
I_MaintOrderHistTechObj._LocationAccountAssignment._WBSElementBasicData,
_TechnicalObjectType,
_TechObjIsEquipOrFuncnlLoc,
_MainWorkCenterBySemanticKey,
_WorkCenterBySemanticKey,
_EquipmentData,
_FunctionalLocationData,
_OrderDurationUnit,
_WorkCenter
}
-
事务代码:IW33/IW39
包含维修工单短描述、通知、计划参数、分配、科目分配、计划数据 -
视图结构:
字段名称 | 技术名称 |
---|---|
订单 | MAINTENANCEORDER |
为历史 | MAINTENANCEORDERISHISTORICAL |
订单类型 | MAINTENANCEORDERTYPE |
描述 | MAINTENANCEORDERDESC |
优先级 | MAINTPRIORITY |
优先级类型 | MAINTPRIORITYTYPE |
功能位置 | FUNCTIONALLOCATION |
设备 | EQUIPMENT |
装配 | ASSEMBLY |
物料 | MATERIAL |
序列号 | SERIALNUMBER |
通知 | MAINTENANCENOTIFICATION |
主要订单 | LEADINGORDER |
计划人员组 | MAINTENANCEPLANNERGROUP |
计划工厂 | MAINTENANCEPLANNINGPLANT |
负责合伙人 | MAINTORDPERSONRESPONSIBLE |
修订 | MAINTENANCEREVISION |
维护计划 | MAINTENANCEPLAN |
维护项目 | MAINTENANCEITEM |
工序单类型 | TASKLISTTYPE |
工序清单 | TASKLISTGROUP |
工序清单变式 | TASKLISTGROUPCOUNTER |
订单计划标识 | MAINTENANCEORDERPLANNINGCODE |
活动类型 | MAINTENANCEACTIVITYTYPE |
ABC 标识 | ABCINDICATOR |
维护工厂 | MAINTENANCEPLANT |
位置 | ASSETLOCATION |
房间 | ASSETROOM |
阶段 | MAINTENANCEPROCESSINGPHASE |
系统条件 | OPERATIONSYSTEMCONDITION |
厂区 | PLANTSECTION |
主工作中心 | MAINWORKCENTER |
工厂工作中心 | MAINWORKCENTERPLANT |
工作中心 | WORKCENTER |
工厂 | WORKCENTERPLANT |
参考元素 PM/PS | REFERENCEELEMENT |
成本中心 | COSTCENTER |
成本控制范围 | CONTROLLINGAREA |
子网络 | SUPERIORPROJECTNETWORK |
公司代码 | COMPANYCODE |
业务范围 | BUSINESSAREA |
WBS 要素 | WBSELEMENTINTERNALID |
资产 | MASTERFIXEDASSET |
子编号 | FIXEDASSET |
结算订单 | SETTLEMENTORDER |
对象编号 | MAINTENANCEORDERINTERNALID |
删除标记 | ISMARKEDFORDELETION |
创建日期 | CREATIONDATE |
创建的时间 | CREATIONTIME |
更改日期 | LASTCHANGEDATE |
更改时间 | LASTCHANGETIME |
基本开始日期 | PLANNEDSTARTDATE |
开始时间 | PLANNEDSTARTTIME |
基本完成日期 | PLANNEDENDDATE |
基本完成时间 | PLANNEDENDTIME |
按计划开始 | SCHEDULEDBASICSTARTDATE |
计划开始时间 | SCHEDULEDBASICSTARTTIME |
计划完工 | SCHEDULEDBASICENDDATE |
完成时间 | SCHEDULEDBASICENDTIME |
实际开始 | ACTUALSTARTDATE |
实际开始 | ACTUALSTARTTIME |
实际完成 | CONFIRMEDENDDATE |
实际完成 | CONFIRMEDENDTIME |
参考日期 | MAINTORDERREFERENCEDATE |
创建日期/时间 | CREATIONDATETIME |
已更改 | LASTCHANGEDATETIME |
计划结束日期/时间 | SCHEDULEDBASICENDDATETIME |
确认结束日期/时间 | CONFIRMEDENDDATETIME |
输入者 | CREATEDBYUSER |
更改人 | LASTCHANGEDBYUSER |
技术对象 | TECHNICALOBJECT |
TECHNICALOBJECTTYPE | |
技术对象类型 | TECHOBJISEQUIPORFUNCNLLOC |
净提前期 | ORDERLEADTIMEDURATION |
总运行时间 | ORDERRUNTIMEDURATION |
天 | ORDERDURATIONUNIT |
已创建订单 | NUMBEROFCREATEDMAINTORDERS |
未删除总数 | NUMBEROFORDERS |
已完成订单 | NUMBEROFCOMPLETEDMAINTORDERS |
计划订单 | NUMBEROFPLANNEDMAINTORDERS |
未计划订单 | NUMBEROFUNPLANNEDMAINTORDERS |
即时订单 | NUMBEROFIMMEDIATEMAINTORDERS |
不执行 | NMBROFMAINTORDSNOTTOBEEXECUTED |
未处理订单 | NMBROFOUTSTANDINGMAINTORDERS |
准时完成 | NMBROFMAINTORDSCOMPLETEDONTIME |
历史订单 | NMBROFHISTORICALORDERS |
工作中心 | MAINWORKCENTERINTERNALID |
PP工作中心 | WORKCENTERINTERNALID |
对象类型 | WORKCENTERTYPECODE |
作者:观兴
出处:https://www.cnblogs.com/guanxing/p/18657261
版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。
转载需本人同意,未经同意转载视同接受稿费2元/字
本文来自博客园,作者:观兴,转载请注明原文链接:https://www.cnblogs.com/guanxing/p/18657261
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
· 上周热点回顾(2.17-2.23)