@AbapCatalog.sqlViewName: 'PPOROPDURN'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@AccessControl.authorizationCheck: #NOT_REQUIRED
@ClientHandling.algorithm: #SESSION_VARIABLE
@ObjectModel.usageType: {serviceQuality: #D, sizeCategory: #XL, dataClass: #TRANSACTIONAL}
@VDM.viewType: #COMPOSITE
@VDM.private: true
//@EndUserText.label: 'Process Order Operation'
define view P_ProcOrderOperationDurn
as select from I_OrderOperation as afvg
inner join P_ProcOrdAORListDistinct as _AORList on afvg.OrderInternalID = _AORList.OrderInternalID
inner join I_MfgOrderBasic as aufv on aufv.OrderInternalID = afvg.OrderInternalID
and aufv.ManufacturingOrderCategory = '40'
left outer to one join I_OrderOperationBasic as afvc on afvc.OrderInternalID = afvg.OrderInternalID //sub-operation handling
and afvc.OrderOperationInternalID = afvg.SuperiorOperationInternalID
// and afvc.BillOfOperationsType = '2'
left outer to one join I_OrderOperationBasic as afvp on afvp.OrderInternalID = afvg.OrderInternalID //phase handling
and afvp.OrderOperationInternalID = afvg.OrderIntBillOfOpItemOfPhase
// and afvp.BillOfOperationsType = '2'
association [1..1] to I_OrderInternalID as _OrderInternalID on $projection.MfgOrderInternalID = _OrderInternalID.OrderInternalID
association [1..1] to I_MfgOrder as _MfgOrder on $projection.ManufacturingOrder = _MfgOrder.ManufacturingOrder
association [1..1] to I_MfgOrderCategory as _MfgOrderCategory on $projection.ManufacturingOrderCategory = _MfgOrderCategory.ManufacturingOrderCategory
association [1..1] to I_MfgOrderType as _MfgOrderType on $projection.ManufacturingOrderType = _MfgOrderType.ManufacturingOrderType
association [0..1] to I_OrderOperationBasic as _SuperiorOperation on $projection.MfgOrderInternalID = _SuperiorOperation.OrderInternalID
and $projection.SuperiorOperationInternalID = _SuperiorOperation.OrderOperationInternalID
association [0..1] to I_OperationStandardText as _OperationStandardTextCode on $projection.OperationStandardTextCode = _OperationStandardTextCode.OperationStandardTextCode
association [1..1] to I_Plant as _Plant on $projection.Plant = _Plant.Plant
association [1..1] to I_Plant as _ProductionPlant on $projection.ProductionPlant = _ProductionPlant.Plant
association [1..1] to I_UnitOfMeasure as _ProductionUnit on $projection.ProductionUnit = _ProductionUnit.UnitOfMeasure
association [1..1] to I_UnitOfMeasure as _OperationUnit on $projection.OperationUnit = _OperationUnit.UnitOfMeasure
association [0..1] to I_ProductionSupervisor as _ProductionSupervisor on $projection.Plant = _ProductionSupervisor.Plant
and $projection.ProductionSupervisor = _ProductionSupervisor.ProductionSupervisor
association [0..1] to I_MRPController as _MRPController on $projection.Plant = _MRPController.Plant
and $projection.MRPController = _MRPController.MRPController
association [0..1] to I_ResponsiblePlannerGroup as _ResponsiblePlannerGroup on $projection.Plant = _ResponsiblePlannerGroup.Plant
and $projection.ResponsiblePlannerGroup = _ResponsiblePlannerGroup.ResponsiblePlannerGroup
association [0..1] to I_WorkCenterType as _WorkCenterType on $projection.WorkCenterTypeCode = _WorkCenterType.WorkCenterTypeCode
association [0..1] to I_WorkCenter as _WorkCenter on $projection.WorkCenterTypeCode = _WorkCenter.WorkCenterTypeCode
and $projection.WorkCenterInternalID = _WorkCenter.WorkCenterInternalID
and $projection.WorkCenterTypeCode = 'A'
// association [0..1] to I_WorkCenterAllCapacity as _AllCapacity on $projection.WorkCenterInternalID = _AllCapacity.WorkCenterInternalID
// and $projection.WorkCenterTypeCode = _AllCapacity.WorkCenterTypeCode
// and $projection.CapacityInternalId = _AllCapacity.CapacityInternalID
association [1..1] to I_OperationControlProfile as _OperationControlProfile on $projection.OperationControlProfile = _OperationControlProfile.OperationControlProfile
association [0..1] to I_BillOfOperationsType as _BillOfOperationsType on $projection.BillOfOperationsType = _BillOfOperationsType.BillOfOperationsType
association [0..1] to I_BillOfOperationsGroup as _BillOfOperationsGroup on $projection.BillOfOperationsType = _BillOfOperationsGroup.BillOfOperationsType
and $projection.BillOfOperationsGroup = _BillOfOperationsGroup.BillOfOperationsGroup
association [0..1] to I_MfgBillOfOperations as _BillOfOperationsVariant on $projection.BillOfOperationsType = _BillOfOperationsVariant.BillOfOperationsType
and $projection.BillOfOperationsGroup = _BillOfOperationsVariant.BillOfOperationsGroup
and $projection.BillOfOperationsVariant = _BillOfOperationsVariant.BillOfOperationsVariant
association [0..1] to I_MfgBillOfOperationsSequence as _BillOfOperationsSequence on $projection.BillOfOperationsType = _BillOfOperationsSequence.BillOfOperationsType
and $projection.BillOfOperationsGroup = _BillOfOperationsSequence.BillOfOperationsGroup
and $projection.BillOfOperationsVariant = _BillOfOperationsSequence.BillOfOperationsVariant
and $projection.BillOfOperationsSequence = _BillOfOperationsSequence.BillOfOperationsSequence
association [0..1] to I_BOOOperationInternalID as _BOOOperationInternalID on $projection.BillOfOperationsType = _BOOOperationInternalID.BillOfOperationsType
and $projection.BillOfOperationsGroup = _BOOOperationInternalID.BillOfOperationsGroup
and $projection.BOOOperationInternalID = _BOOOperationInternalID.BOOOperationInternalID
association [0..1] to I_FactoryCalendar as _FactoryCalendar on $projection.FactoryCalendar = _FactoryCalendar.FactoryCalendar
association [0..1] to I_CapacityRequirement as _CapacityRequirement on $projection.CapacityRequirement = _CapacityRequirement.CapacityRequirement
association [0..1] to I_CapacityRequirementItem as _CapacityRequirementItem on $projection.CapacityRequirement = _CapacityRequirementItem.CapacityRequirement
and $projection.CapacityRequirementItem = _CapacityRequirementItem.CapacityRequirementItem
association [0..1] to I_ControlRecipeDestination as _ControlRecipeDestination on $projection.Plant = _ControlRecipeDestination.Plant
and $projection.ControlRecipeDestination = _ControlRecipeDestination.ControlRecipeDestination
association [0..1] to I_ConfirmationGroup as _OperationConfirmation on $projection.OperationConfirmation = _OperationConfirmation.ConfirmationGroup
association [0..1] to I_ChangeMaster as _ChangeNumber on $projection.ChangeNumber = _ChangeNumber.ChangeNumber
association [0..1] to I_PurchaseOrderAPI01 as _PurchaseOrder on $projection.PurchaseOrder = _PurchaseOrder.PurchaseOrder
association [0..1] to I_PurchaseOrderItemAPI01 as _PurchaseOrderItem on $projection.PurchaseOrder = _PurchaseOrderItem.PurchaseOrder
and $projection.PurchaseOrderItem = _PurchaseOrderItem.PurchaseOrderItem
association [0..1] to I_Purchaserequisition as _PurchaseRequisition on $projection.PurchaseRequisition = _PurchaseRequisition.PurchaseRequisition
association [0..1] to I_PurchaseRequisition_Api01 as _PurchaseRequisitionItem on $projection.PurchaseRequisition = _PurchaseRequisitionItem.PurchaseRequisition
and $projection.PurchaseRequisitionItem = _PurchaseRequisitionItem.PurchaseRequisitionItem
association [0..1] to I_PurchaseRequisitionItemAPI01 as _PurchaseRequisitionItem2 on $projection.PurchaseRequisition = _PurchaseRequisitionItem2.PurchaseRequisition
and $projection.PurchaseRequisitionItem = _PurchaseRequisitionItem2.PurchaseRequisitionItem
association [0..1] to I_PurchasingOrganization as _PurchasingOrganization on $projection.PurchasingOrganization = _PurchasingOrganization.PurchasingOrganization
association [0..1] to I_PurchasingGroup as _PurchasingGroup on $projection.PurchasingGroup = _PurchasingGroup.PurchasingGroup
association [0..1] to I_PurchasingInfoRecordApi01 as _PurchasingInfoRecord on $projection.PurchasingInfoRecord = _PurchasingInfoRecord.PurchasingInfoRecord
association [0..1] to I_Supplier as _Supplier on $projection.Supplier = _Supplier.Supplier
association [0..1] to I_SupplierCompanyByPlant as _SupplierCompanyByPlant on $projection.Plant = _SupplierCompanyByPlant.Plant
and $projection.Supplier = _SupplierCompanyByPlant.Supplier
association [0..1] to I_EmployeeWageGroup as _EmployeeWageGroup on $projection.Plant = _EmployeeWageGroup.Plant
and $projection.EmployeeWageGroup = _EmployeeWageGroup.EmployeeWageGroup
association [0..1] to I_EmployeeSuitability as _EmployeeSuitability on $projection.Plant = _EmployeeSuitability.Plant
and $projection.EmployeeSuitability = _EmployeeSuitability.EmployeeSuitability
// association [0..1] to I_Employment as _Employee on $projection.Personnel = _Employee.EmploymentInternalID
association [0..1] to I_PersonWorkAgreement_1 as _Employee on $projection.Personnel = _Employee.PersonWorkAgreement
association [0..1] to I_CompanyCode as _CompanyCode on $projection.CompanyCode = _CompanyCode.CompanyCode
association [0..*] to I_ProfitCenter as _ProfitCenter on $projection.ControllingArea = _ProfitCenter.ControllingArea
and $projection.ProfitCenter = _ProfitCenter.ProfitCenter
association [0..*] to I_CostCenter as _RequestingCostCenter on $projection.ControllingArea = _RequestingCostCenter.ControllingArea
and $projection.RequestingCostCenter = _RequestingCostCenter.CostCenter
association [0..1] to I_CostElement as _CostElement on $projection.ControllingArea = _CostElement.ControllingArea
and $projection.CostElement = _CostElement.CostElement
association [0..1] to I_CostingVariant as _CostingVariant on $projection.CostingVariant = _CostingVariant.CostingVariant
association [0..1] to I_ControllingArea as _ControllingArea on $projection.ControllingArea = _ControllingArea.ControllingArea
association [0..1] to I_ControllingObjectClass as _ControllingObjectClass on $projection.ControllingObjectClass = _ControllingObjectClass.ControllingObjectClass
association [0..1] to I_Currency as _ControllingObjectCurrency on $projection.ControllingObjectCurrency = _ControllingObjectCurrency.Currency
association [0..1] to I_Currency as _OpExternalProcessingCurrency on $projection.OpExternalProcessingCurrency = _OpExternalProcessingCurrency.Currency
association [0..1] to I_FunctionalArea as _FunctionalArea on $projection.FunctionalArea = _FunctionalArea.FunctionalArea
association [0..1] to I_BusinessArea as _BusinessArea on $projection.BusinessArea = _BusinessArea.BusinessArea
association [0..1] to I_BusinessProcess as _BusinessProcess on $projection.ControllingArea = _BusinessProcess.ControllingArea
and $projection.BusinessProcess = _BusinessProcess.BusinessProcess
association [0..1] to I_UnitOfMeasure as _BusinessProcessEntryUnit on $projection.BusinessProcessEntryUnit = _BusinessProcessEntryUnit.UnitOfMeasure
association [0..1] to I_OperationSetupGroupCategory as _OperationSetupGroupCategory on $projection.Plant = _OperationSetupGroupCategory.Plant
and $projection.OperationSetupGroupCategory = _OperationSetupGroupCategory.OperationSetupGroupCategory
association [0..1] to I_OperationSetupGroup as _OperationSetupGroup on $projection.OperationSetupGroup = _OperationSetupGroup.OperationSetupGroup
and $projection.OperationSetupGroupCategory = _OperationSetupGroup.OperationSetupGroupCategory
and $projection.Plant = _OperationSetupGroup.Plant
association [0..1] to I_OperationSetupType as _OperationSetupType on $projection.OperationSetupType = _OperationSetupType.OperationSetupType
and $projection.Plant = _OperationSetupType.Plant
association [0..1] to I_LeadTimeReductionStrategy as _LeadTimeReductionStrategy on $projection.LeadTimeReductionStrategy = _LeadTimeReductionStrategy.LeadTimeReductionStrategy
and $projection.Plant = _LeadTimeReductionStrategy.Plant
association [0..1] to I_OperationDateOffsetRefCode as _StartDateOffsetReferenceCode on $projection.StartDateOffsetReferenceCode = _StartDateOffsetReferenceCode.OperationDateOffsetRefCode
association [0..1] to I_OperationDateOffsetRefCode as _EndDateOffsetReferenceCode on $projection.EndDateOffsetReferenceCode = _EndDateOffsetReferenceCode.OperationDateOffsetRefCode
association [0..1] to I_StandardWorkFmlaParamGroup as _StandardWorkFmlaParamGroup on $projection.StandardWorkFormulaParamGroup = _StandardWorkFmlaParamGroup.StandardWorkFormulaParamGroup
association [0..1] to I_Language as _Language on $projection.Language = _Language.Language
association [0..1] to I_OpActyNtwkInstance as _SetupOpActyNtwkInstance on $projection.SetupOpActyNtwkInstance = _SetupOpActyNtwkInstance.OpActyNtwkInstance
association [0..1] to I_OpActyNtwkInstance as _ProduceOpActyNtwkInstance on $projection.ProduceOpActyNtwkInstance = _ProduceOpActyNtwkInstance.OpActyNtwkInstance
association [0..1] to I_OpActyNtwkInstance as _TeardownOpActyNtwkInstance on $projection.TeardownOpActyNtwkInstance = _TeardownOpActyNtwkInstance.OpActyNtwkInstance
association [0..1] to I_UnitOfMeasure as _FreeDefinedQuantity1Unit on $projection.FreeDefinedQuantity1Unit = _FreeDefinedQuantity1Unit.UnitOfMeasure
association [0..1] to I_UnitOfMeasure as _FreeDefinedQuantity2Unit on $projection.FreeDefinedQuantity2Unit = _FreeDefinedQuantity2Unit.UnitOfMeasure
association [0..1] to I_Currency as _FreeDefinedAmount1Currency on $projection.FreeDefinedAmount1Currency = _FreeDefinedAmount1Currency.Currency
association [0..1] to I_Currency as _FreeDefinedAmount2Currency on $projection.FreeDefinedAmount2Currency = _FreeDefinedAmount2Currency.Currency
-- to root: Header
association [1..1] to I_ManufacturingOrder as _ManufacturingOrder on $projection.ManufacturingOrder = _ManufacturingOrder.ManufacturingOrder
-- to parent: Sequence
association [1..1] to I_MfgOrderSequence as _MfgOrderSequence on $projection.ManufacturingOrder = _MfgOrderSequence.ManufacturingOrder
and $projection.ManufacturingOrderSequence = _MfgOrderSequence.ManufacturingOrderSequence
-- to child: Components
association [0..*] to I_MfgOrderOperationComponent as _MfgOrderOpComponent on $projection.ManufacturingOrder = _MfgOrderOpComponent.ManufacturingOrder
and $projection.ManufacturingOrderSequence = _MfgOrderOpComponent.ManufacturingOrderSequence
and $projection.ManufacturingOrderOperation = _MfgOrderOpComponent.ManufacturingOrderOperation
-- to child: Prodn. resource/tools
association [0..*] to I_MfgOrderOperationPRT as _MfgOrderOperationPRT on $projection.ManufacturingOrder = _MfgOrderOperationPRT.ManufacturingOrder
and $projection.ManufacturingOrderSequence = _MfgOrderOperationPRT.ManufacturingOrderSequence
and $projection.ManufacturingOrderOperation = _MfgOrderOperationPRT.ManufacturingOrderOperation
-- to child: Trigger points
association [0..*] to I_MfgOrderOperationTrggrPoint as _MfgOrderOpTriggerPoint on $projection.ManufacturingOrder = _MfgOrderOpTriggerPoint.ManufacturingOrder
and $projection.ManufacturingOrderSequence = _MfgOrderOpTriggerPoint.ManufacturingOrderSequence
and $projection.ManufacturingOrderOperation = _MfgOrderOpTriggerPoint.ManufacturingOrderOperation
-- to child: Document links
association [0..*] to I_MfgOrderOpDocInfoRecdObjLink as _MfgOrderOpDocInfoRecord on $projection.ManufacturingOrder = _MfgOrderOpDocInfoRecord.ManufacturingOrder
and $projection.ManufacturingOrderSequence = _MfgOrderOpDocInfoRecord.ManufacturingOrderSequence
and $projection.ManufacturingOrderOperation = _MfgOrderOpDocInfoRecord.ManufacturingOrderOperation
-- to child: Confirmations
association [0..*] to I_MfgOrderOperationConf as _MfgOrderOperationConf on $projection.ManufacturingOrder = _MfgOrderOperationConf.ManufacturingOrder
and $projection.ManufacturingOrderSequence = _MfgOrderOperationConf.ManufacturingOrderSequence
and $projection.ManufacturingOrderOperation = _MfgOrderOperationConf.ManufacturingOrderOperation
-- to extension
association [1..1] to E_OrderOperation as _Extension on $projection.MfgOrderInternalID = _Extension.OrderInternalID
and $projection.OrderOperationInternalID = _Extension.OrderOperationInternalID
association [0..1] to I_Material as _Material on $projection.Material = _Material.Material
{
// Technical Key
@ObjectModel.foreignKey.association: '_OrderInternalID'
key cast(afvg.OrderInternalID as pph_aufpl preserving type) as MfgOrderInternalID,
key cast(afvg.OrderOperationInternalID as operationinternalid preserving type) as OrderOperationInternalID,
// Semantical key
@ObjectModel.foreignKey.association: '_MfgOrder'
// cast(aufv.OrderID as manufacturingorder preserving type) as ManufacturingOrder,
cast(aufv.ManufacturingOrder as manufacturingorder preserving type) as ManufacturingOrder,
@ObjectModel.foreignKey.association: '_MfgOrderSequence'
cast(afvg.Sequence as manufacturingordersequence preserving type) as ManufacturingOrderSequence,
@ObjectModel.text.element: 'MfgOrderOperationText'
case
when afvg.SuperiorOperationInternalID > '00000000' then
cast(afvc.Operation as manufacturingorderoperation preserving type) //superior operation ID
else
cast(afvg.Operation as manufacturingorderoperation preserving type)
end as ManufacturingOrderOperation,
@ObjectModel.text.element: 'MfgOrderOperationText'
case
when afvg.SuperiorOperationInternalID > '00000000' then
cast(afvg.Operation as manufacturingordersuboperation preserving type)
else ''
end as ManufacturingOrderSubOperation,
afvc.Operation as MfgOrderOperationOrSubOp,
// Order header data
@ObjectModel.foreignKey.association: '_MfgOrderCategory'
cast(aufv.ManufacturingOrderCategory as manufacturingordercategory preserving type) as ManufacturingOrderCategory,
// cast(aufv.OrderCategory as manufacturingordercategory preserving type) as ManufacturingOrderCategory,
@ObjectModel.foreignKey.association: '_MfgOrderType'
cast(aufv.ManufacturingOrderType as manufacturingordertype preserving type) as ManufacturingOrderType,
// cast(aufv.OrderType as manufacturingordertype preserving type) as ManufacturingOrderType,
_MfgOrderType._Text[1: Language=$session.system_language].ManufacturingOrderTypeName,
@ObjectModel.foreignKey.association: '_ProductionPlant'
cast(aufv.ProductionPlant as pwwrk preserving type) as ProductionPlant,
// cast(aufv.Plant as pwwrk preserving type) as ProductionPlant,
_ProductionPlant.PlantName as ProductionPlantName,
cast( _ProductionPlant._OrganizationAddress[AddressRepresentationCode = ''].AddressTimeZone as co_plant_timezone ) as PlantTimeZone,
@ObjectModel.foreignKey.association: '_ProductionSupervisor'
cast(aufv.ProductionSupervisor as pph_fevor preserving type) as ProductionSupervisor,
_ProductionSupervisor.ProductionSupervisorName,
@ObjectModel.foreignKey.association: '_MRPController'
cast(aufv.MRPController as pph_dispo preserving type) as MRPController,
_MRPController.MRPControllerName,
@ObjectModel.foreignKey.association: '_ResponsiblePlannerGroup'
cast(aufv.ResponsiblePlannerGroup as vagrp preserving type) as ResponsiblePlannerGroup,
cast(aufv.ProductConfiguration as product_configuration preserving type) as ProductConfiguration,
aufv.InspectionLot,
aufv.ManufacturingOrderImportance,
// aufv.PriorityCode as ManufacturingOrderImportance,
// Text
@Semantics.text: true
cast(afvg.OperationText as mfgorderoperationtext preserving type) as MfgOrderOperationText,
@ObjectModel.foreignKey.association: '_Language'
afvg.Language as Language,
@ObjectModel.foreignKey.association: '_OperationStandardTextCode'
cast(afvg.StandardTextInternalID as pph_ktsch preserving type) as OperationStandardTextCode,
// Long text logic
cast(case afvg.Language
when '' then ''
else 'X'
end as aufltext preserving type) as OperationHasLongText,
// Attributes
afvg.OperationIsToBeDeleted,
afvg.MfgOrderOperationIsPhase,
cast(afvp.Operation as vdm_supop preserving type) as MfgOrderPhaseSuperiorOperation,
afvp.OperationText as SuperiorOperationText,
cast(afvg.NumberOfCapacities as pph_anzkap preserving type) as NumberOfCapacities,
afvg.NumberOfConfirmationSlips,
afvg.OperationImportance,
// Assignments
@ObjectModel.foreignKey.association: '_SuperiorOperation'
afvg.SuperiorOperationInternalID,
@ObjectModel.foreignKey.association: '_Plant'
afvg.Plant,
@Consumption.valueHelpDefinition: [ { entity: { name: 'I_WorkCenterStdVH', element: 'WorkCenterInternalID' } } ]
@ObjectModel.foreignKey.association: '_WorkCenter'
cast(afvg.WorkCenterInternalID as pph_arbid preserving type) as WorkCenterInternalID,
@ObjectModel.foreignKey.association: '_WorkCenterType'
cast(afvg.WorkCenterTypeCode as pph_arbty preserving type) as WorkCenterTypeCode,
@ObjectModel.foreignKey.association: '_OperationControlProfile'
cast(afvg.OperationControlProfile as pph_steus preserving type) as OperationControlProfile,
_OperationControlProfile._Text[1: Language=$session.system_language].OperationControlProfileName,
@ObjectModel.foreignKey.association: '_ControlRecipeDestination'
afvg.ControlRecipeDestination,
@ObjectModel.foreignKey.association: '_OperationConfirmation'
afvg.OperationConfirmation,
cast(afvg.NumberOfOperationConfirmations as pph_noofconf preserving type) as NumberOfOperationConfirmations,
@ObjectModel.foreignKey.association: '_FactoryCalendar'
cast(afvg.FactoryCalendar as cr_wfcid preserving type) as FactoryCalendar,
@Consumption.valueHelpDefinition: [ { entity: { name: 'I_CapacityRequirementStdVH', element: 'CapacityRequirement' } } ]
@ObjectModel.foreignKey.association: '_CapacityRequirement'
afvg.CapacityRequirement,
@Consumption.valueHelpDefinition: [ { entity: { name: 'I_CapRqmtItmStdVH', element: 'CapacityRequirementItem' } } ]
@ObjectModel.foreignKey.association: '_CapacityRequirementItem'
cast(afvg.CapacityRequirementItem as pph_bedzl preserving type) as CapacityRequirementItem,
@Consumption.valueHelpDefinition: [ { entity: { name: 'I_ChangeMasterStdVH', element: 'ChangeNumber' } } ]
@ObjectModel.foreignKey.association: '_ChangeNumber'
afvg.ChangeNumber,
cast(afvg.ObjectInternalID as pph_objnr preserving type) as ObjectInternalID,
afvg.OperationTrackingNumber,
// Assignments BOO and BOM
@ObjectModel.foreignKey.association: '_BillOfOperationsType'
cast(afvg.BillOfOperationsType as billofoperationstype preserving type) as BillOfOperationsType,
@ObjectModel.foreignKey.association: '_BillOfOperationsGroup'
afvg.BillOfOperationsGroup,
@ObjectModel.foreignKey.association: '_BillOfOperationsVariant'
afvg.BillOfOperationsVariant,
@ObjectModel.foreignKey.association: '_BillOfOperationsSequence'
cast(afvg.BillOfOperationsSequence as boosequence preserving type) as BillOfOperationsSequence,
@ObjectModel.foreignKey.association: '_BOOOperationInternalID'
afvg.BOOOperationInternalID,
afvg.BillOfOperationsVersion,
cast(afvg.BillOfMaterialCategory as pph_stlty preserving type) as BillOfMaterialCategory,
afvg.BillOfMaterialInternalID,
cast(afvg.BillOfMaterialItemNodeNumber as pph_stlkn preserving type) as BillOfMaterialItemNodeNumber,
afvg.BOMItemNodeCount,
// Assignments Purchasing
afvg.ExtProcgOperationHasSubcontrg,
@ObjectModel.foreignKey.association: '_PurchasingOrganization'
cast(afvg.PurchasingOrganization as pph_ekorg preserving type) as PurchasingOrganization,
@ObjectModel.foreignKey.association: '_PurchasingGroup'
afvg.PurchasingGroup,
-- @ObjectModel.foreignKey.association: '_PurchaseRequisition'
afvg.PurchaseRequisition,
-- @ObjectModel.foreignKey.association: '_PurchaseRequisitionItem'
cast(afvg.PurchaseRequisitionItem as pph_bnfpo preserving type) as PurchaseRequisitionItem,
-- @ObjectModel.foreignKey.association: '_PurchaseOrder'
cast(afvg.PurchasingDocument as vdm_purchaseorder preserving type) as PurchaseOrder,
-- @ObjectModel.foreignKey.association: '_PurchaseOrderItem'
cast(afvg.PurchasingDocumentItem as vdm_purchaseorderitem preserving type) as PurchaseOrderItem,
-- @ObjectModel.foreignKey.association: '_PurchasingInfoRecord'
cast(afvg.PurchasingInfoRecord as pph_infnr preserving type) as PurchasingInfoRecord,
cast(afvg.PurgInfoRecdDataIsFixed as vdm_kzfix preserving type) as PurgInfoRecdDataIsFixed,
cast(afvg.PurchasingInfoRecordCategory as pph_esokz preserving type) as PurchasingInfoRecordCategory,
@Consumption.valueHelpDefinition: [ { entity: { name: 'I_Supplier_VH', element: 'Supplier' } } ]
@ObjectModel.foreignKey.association: '_Supplier'
afvg.Supplier,
@Semantics.text: true
cast(afvg.GoodsRecipientName as pph_wempf preserving type) as GoodsRecipientName,
@Semantics.text: true
afvg.UnloadingPointName,
// Amount and Currency
@Semantics.currencyCode: true
afvg.Currency as OpExternalProcessingCurrency,
@DefaultAggregation: #SUM
@Semantics.amount.currencyCode: 'OpExternalProcessingCurrency'
afvg.OpExternalProcessingPrice,
afvg.NumberOfOperationPriceUnits,
// Assignments FI/CO
@Consumption.valueHelpDefinition: [ { entity: { name: 'I_CompanyCodeStdVH', element: 'CompanyCode' } } ]
@ObjectModel.foreignKey.association: '_CompanyCode'
afvg.CompanyCode,
@Consumption.valueHelpDefinition: [ { entity: { name: 'I_BusinessAreaStdVH', element: 'BusinessArea' } } ]
@ObjectModel.foreignKey.association: '_BusinessArea'
afvg.BusinessArea,
@ObjectModel.foreignKey.association: '_ControllingArea'
aufv.ControllingArea,
@Consumption.valueHelpDefinition: [ { entity: { name: 'I_ProfitCenterStdVH', element: 'ProfitCenter' } } ]
-- @ObjectModel.foreignKey.association: '_ProfitCenter'
afvg.ProfitCenter,
@Consumption.valueHelpDefinition: [ { entity: { name: 'I_CostCenterStdVH', element: 'CostCenter' } } ]
-- @ObjectModel.foreignKey.association: '_RequestingCostCenter'
afvg.RequestingCostCenter,
@ObjectModel.foreignKey.association: '_CostElement'
afvg.CostElement,
@ObjectModel.foreignKey.association: '_CostingVariant'
afvg.CostingVariant,
afvg.CostingSheet,
afvg.CostEstimate,
@Semantics.currencyCode: true
afvg.ControllingObjectCurrency,
@ObjectModel.foreignKey.association: '_ControllingObjectClass'
cast(afvg.ControllingObjectClass as pph_scope preserving type) as ControllingObjectClass,
@ObjectModel.foreignKey.association: '_FunctionalArea'
afvg.FunctionalArea,
afvg.TaxJurisdiction,
// Assignments HR
cast(afvg.EmployeeWageType as pph_loart preserving type) as EmployeeWageType,
@ObjectModel.foreignKey.association: '_EmployeeWageGroup'
cast(afvg.EmployeeWageGroup as pph_logrp preserving type) as EmployeeWageGroup,
@ObjectModel.foreignKey.association: '_EmployeeSuitability'
cast(afvg.EmployeeSuitability as pph_qualf preserving type) as EmployeeSuitability,
afvg.NumberOfTimeTickets,
@Consumption.valueHelpDefinition: [ { entity: { name: 'I_PersWrkAgrmtSrchHelp', element: 'PersonWorkAgreement' } } ]
@ObjectModel.foreignKey.association: '_Employee'
cast(afvg.Personnel as pph_pernr preserving type) as Personnel,
cast(afvg.NumberOfEmployees as pph_anzms preserving type) as NumberOfEmployees,
// Setup and Overlapping
@ObjectModel.foreignKey.association: '_OperationSetupGroupCategory'
cast(afvg.OperationSetupGroupCategory as pph_rfgrp preserving type) as OperationSetupGroupCategory,
@ObjectModel.foreignKey.association: '_OperationSetupGroup'
cast(afvg.OperationSetupGroup as pph_rfsch preserving type) as OperationSetupGroup,
@ObjectModel.foreignKey.association: '_OperationSetupType'
cast(afvg.OperationSetupType as pph_rasch preserving type) as OperationSetupType,
afvg.OperationOverlappingIsRequired,
afvg.OperationOverlappingIsPossible,
afvg.OperationsIsAlwaysOverlapping,
afvg.OperationSplitIsRequired,
afvg.MaximumNumberOfSplits,
@ObjectModel.foreignKey.association: '_LeadTimeReductionStrategy'
cast(afvg.LeadTimeReductionStrategy as pph_rstra preserving type) as LeadTimeReductionStrategy,
afvg.OpSchedldReductionLevel,
// Scheduled Dates and Times
cast(afvg.OpErlstSchedldExecStrtDte as pph_fsavd preserving type) as OpErlstSchedldExecStrtDte,
cast(afvg.OpErlstSchedldExecStrtTme as pph_fsavz preserving type) as OpErlstSchedldExecStrtTme,
cast(afvg.OpErlstSchedldProcgStrtDte as pph_fssbd preserving type) as OpErlstSchedldProcgStrtDte,
cast(afvg.OpErlstSchedldProcgStrtTme as pph_fssbz preserving type) as OpErlstSchedldProcgStrtTme,
cast(afvg.OpErlstSchedldTrdwnStrtDte as pph_fssad preserving type) as OpErlstSchedldTrdwnStrtDte,
cast(afvg.OpErlstSchedldTrdwnStrtTme as pph_fssaz preserving type) as OpErlstSchedldTrdwnStrtTme,
cast(afvg.OpErlstSchedldExecEndDte as pph_fsedd preserving type) as OpErlstSchedldExecEndDte,
cast(afvg.OpErlstSchedldExecEndTme as pph_fsedz preserving type) as OpErlstSchedldExecEndTme,
cast(afvg.OpLtstSchedldExecStrtDte as pph_ssavd preserving type) as OpLtstSchedldExecStrtDte,
cast(afvg.OpLtstSchedldExecStrtTme as pph_ssavz preserving type) as OpLtstSchedldExecStrtTme,
cast(afvg.OpLtstSchedldProcgStrtDte as pph_sssbd preserving type) as OpLtstSchedldProcgStrtDte,
cast(afvg.OpLtstSchedldProcgStrtTme as pph_sssbz preserving type) as OpLtstSchedldProcgStrtTme,
cast(afvg.OpLtstSchedldTrdwnStrtDte as pph_sssad preserving type) as OpLtstSchedldTrdwnStrtDte,
cast(afvg.OpLtstSchedldTrdwnStrtTme as pph_sssaz preserving type) as OpLtstSchedldTrdwnStrtTme,
cast(afvg.OpLtstSchedldExecEndDte as pph_ssedd preserving type) as OpLtstSchedldExecEndDte,
cast(afvg.OpLtstSchedldExecEndTme as pph_ssedz preserving type) as OpLtstSchedldExecEndTme,
cast(afvg.SchedldFcstdEarliestStartDate as pph_fpavd preserving type) as SchedldFcstdEarliestStartDate,
cast(afvg.SchedldFcstdEarliestStartTime as pph_fpavz preserving type) as SchedldFcstdEarliestStartTime,
cast(afvg.SchedldFcstdEarliestEndDate as pph_fpedd preserving type) as SchedldFcstdEarliestEndDate,
cast(afvg.SchedldFcstdEarliestEndTime as pph_fpedz preserving type) as SchedldFcstdEarliestEndTime,
cast(afvg.LatestSchedldFcstdStartDate as pph_spavd preserving type) as LatestSchedldFcstdStartDate,
cast(afvg.SchedldFcstdLatestStartTime as pph_spavz preserving type) as SchedldFcstdLatestStartTime,
cast(afvg.LatestSchedldFcstdEndDate as pph_spedd preserving type) as LatestSchedldFcstdEndDate,
cast(afvg.SchedldFcstdLatestEndTime as pph_spedz preserving type) as SchedldFcstdLatestEndTime,
// Actual Dates and Times
cast(afvg.OperationConfirmedStartDate as pph_isavd preserving type) as OperationConfirmedStartDate,
cast(afvg.OperationConfirmedEndDate as pph_ieavd preserving type) as OperationConfirmedEndDate,
afvg.OpActualExecutionStartDate,
afvg.OpActualExecutionStartTime,
afvg.OpActualSetupEndDate,
afvg.OpActualSetupEndTime,
afvg.OpActualProcessingStartDate,
afvg.OpActualProcessingStartTime,
afvg.OpActualProcessingEndDate,
afvg.OpActualProcessingEndTime,
afvg.OpActualTeardownStartDate,
afvg.OpActualTeardownStartTme,
afvg.OpActualExecutionEndDate,
afvg.OpActualExecutionEndTime,
cast(afvg.ActualForecastEndDate as pph_pedd preserving type) as ActualForecastEndDate,
cast(afvg.ActualForecastEndTime as pph_pedz preserving type) as ActualForecastEndTime,
// Wait Dates and Times
afvg.EarliestScheduledWaitStartDate,
afvg.EarliestScheduledWaitStartTime,
afvg.EarliestScheduledWaitEndDate,
afvg.EarliestScheduledWaitEndTime,
afvg.LatestScheduledWaitStartDate,
afvg.LatestScheduledWaitStartTime,
afvg.LatestScheduledWaitEndDate,
afvg.LatestScheduledWaitEndTime,
// Durations
afvg.BreakDurationUnit,
afvg.PlannedBreakDuration,
afvg.ConfirmedBreakDuration,
cast(afvg.OverlapMinimumDurationUnit as pph_dzeimu preserving type) as OverlapMinimumDurationUnit,
afvg.OverlapMinimumDuration,
afvg.MaximumWaitDurationUnit,
afvg.MaximumWaitDuration,
afvg.MinimumWaitDurationUnit,
afvg.MinimumWaitDuration,
afvg.StandardMoveDurationUnit,
afvg.StandardMoveDuration,
afvg.StandardQueueDurationUnit,
afvg.StandardQueueDuration,
afvg.MinimumQueueDurationUnit,
afvg.MinimumQueueDuration,
afvg.MinimumMoveDurationUnit,
afvg.MinimumMoveDuration,
afvg.OperationStandardDuration,
afvg.OperationStandardDurationUnit,
cast(afvg.MinimumDuration as vdm_daumin preserving type) as MinimumDuration,
cast(afvg.MinimumDurationUnit as vdm_daumine preserving type) as MinimumDurationUnit,
afvg.ScheduledMoveDuration,
afvg.ScheduledMoveDurationUnit,
afvg.ScheduledQueueDuration,
afvg.ScheduledQueueDurationUnit,
afvg.ScheduledWaitDuration,
afvg.ScheduledWaitDurationUnit,
cast(afvg.PlannedDeliveryDuration as pph_plifz preserving type) as PlannedDeliveryDuration,
afvg.OpPlannedSetupDurn,
afvg.OpPlannedSetupDurnUnit,
afvg.OpPlannedProcessingDurn,
cast(afvg.OpPlannedProcessingDurnUnit as pph_beaze preserving type) as OpPlannedProcessingDurnUnit,
afvg.OpPlannedTeardownDurn,
afvg.OpPlannedTeardownDurnUnit,
cast(afvg.ActualForecastDuration as pph_pdau preserving type) as ActualForecastDuration,
cast(afvg.ActualForecastDurationUnit as pph_pdae preserving type) as ActualForecastDurationUnit,
// Offset
-- Start
@ObjectModel.foreignKey.association: '_StartDateOffsetReferenceCode'
afvg.StartDateOffsetReferenceCode,
@Semantics.unitOfMeasure: true
afvg.StartDateOffsetDurationUnit,
afvg.StartDateOffsetDuration,
-- End
@ObjectModel.foreignKey.association: '_EndDateOffsetReferenceCode'
afvg.EndDateOffsetReferenceCode,
@Semantics.unitOfMeasure: true
afvg.EndDateOffsetDurationUnit,
afvg.EndDateOffsetDuration,
// Standard Value Key
@ObjectModel.foreignKey.association: '_StandardWorkFmlaParamGroup'
afvg.StandardWorkFormulaParamGroup,
// Quantities and UoM
@Semantics.unitOfMeasure: true
cast(afvg.OperationUnit as operationunit preserving type) as OperationUnit,
afvg.OpQtyToBaseQtyDnmntr,
afvg.OpQtyToBaseQtyNmrtr,
afvg.OperationScrapPercent,
@Semantics.quantity.unitOfMeasure: 'OperationUnit'
@DefaultAggregation: #MAX
afvg.OperationReferenceQuantity,
@Semantics.quantity.unitOfMeasure: 'OperationUnit'
@DefaultAggregation: #SUM
afvg.OpPlannedTotalQuantity,
@Semantics.quantity.unitOfMeasure: 'OperationUnit'
@DefaultAggregation: #SUM
afvg.OpPlannedScrapQuantity,
@Semantics.quantity.unitOfMeasure: 'OperationUnit'
@DefaultAggregation: #SUM
cast((afvg.OpPlannedTotalQuantity - afvg.OpPlannedScrapQuantity) as vdm_gmeng) as OpPlannedYieldQuantity,
@Semantics.quantity.unitOfMeasure: 'OperationUnit'
@DefaultAggregation: #SUM
afvg.OpTotalConfirmedYieldQty,
@Semantics.quantity.unitOfMeasure: 'OperationUnit'
@DefaultAggregation: #SUM
afvg.OpTotalConfirmedScrapQty,
@Semantics.quantity.unitOfMeasure: 'OperationUnit'
@DefaultAggregation: #SUM
afvg.OperationConfirmedReworkQty,
@Semantics.unitOfMeasure: true
cast(aufv.ProductionUnit as productionunit preserving type) as ProductionUnit,
// cast(aufv.BaseUnit as productionunit preserving type) as ProductionUnit,
@Semantics.quantity.unitOfMeasure: 'ProductionUnit'
@DefaultAggregation: #SUM
afvg.OpTotConfdYieldQtyInOrdQtyUnit,
// Confirmed Work Quantities and UoM
@Semantics.unitOfMeasure: true
cast(afvg.OpWorkQuantityUnit1 as vdm_ile01 preserving type) as OpWorkQuantityUnit1,
@Semantics.quantity.unitOfMeasure: 'OpWorkQuantityUnit1'
@DefaultAggregation: #SUM
cast(afvg.OpConfirmedWorkQuantity1 as vdm_ism01 preserving type) as OpConfirmedWorkQuantity1,
afvg.NoFurtherOpWorkQuantity1IsExpd,
@Semantics.unitOfMeasure: true
cast(afvg.OpWorkQuantityUnit2 as vdm_ile02 preserving type) as OpWorkQuantityUnit2,
@Semantics.quantity.unitOfMeasure: 'OpWorkQuantityUnit2'
@DefaultAggregation: #SUM
cast(afvg.OpConfirmedWorkQuantity2 as vdm_ism02 preserving type) as OpConfirmedWorkQuantity2,
afvg.NoFurtherOpWorkQuantity2IsExpd,
@Semantics.unitOfMeasure: true
cast(afvg.OpWorkQuantityUnit3 as vdm_ile03 preserving type) as OpWorkQuantityUnit3,
@Semantics.quantity.unitOfMeasure: 'OpWorkQuantityUnit3'
@DefaultAggregation: #SUM
cast(afvg.OpConfirmedWorkQuantity3 as vdm_ism03 preserving type) as OpConfirmedWorkQuantity3,
afvg.NoFurtherOpWorkQuantity3IsExpd,
@Semantics.unitOfMeasure: true
cast(afvg.OpWorkQuantityUnit4 as vdm_ile04 preserving type) as OpWorkQuantityUnit4,
@Semantics.quantity.unitOfMeasure: 'OpWorkQuantityUnit4'
@DefaultAggregation: #SUM
cast(afvg.OpConfirmedWorkQuantity4 as vdm_ism04 preserving type) as OpConfirmedWorkQuantity4,
afvg.NoFurtherOpWorkQuantity4IsExpd,
@Semantics.unitOfMeasure: true
cast(afvg.OpWorkQuantityUnit5 as vdm_ile05 preserving type) as OpWorkQuantityUnit5,
@Semantics.quantity.unitOfMeasure: 'OpWorkQuantityUnit5'
@DefaultAggregation: #SUM
cast(afvg.OpConfirmedWorkQuantity5 as vdm_ism05 preserving type) as OpConfirmedWorkQuantity5,
afvg.NoFurtherOpWorkQuantity5IsExpd,
@Semantics.unitOfMeasure: true
cast(afvg.OpWorkQuantityUnit6 as vdm_ile06 preserving type) as OpWorkQuantityUnit6,
@Semantics.quantity.unitOfMeasure: 'OpWorkQuantityUnit6'
@DefaultAggregation: #SUM
cast(afvg.OpConfirmedWorkQuantity6 as vdm_ism06 preserving type) as OpConfirmedWorkQuantity6,
afvg.NoFurtherOpWorkQuantity6IsExpd,
// Work Quantities and UoM
@Semantics.unitOfMeasure: true
cast(afvg.WorkCenterStandardWorkQtyUnit1 as pph_vge01 preserving type) as WorkCenterStandardWorkQtyUnit1,
@Semantics.quantity.unitOfMeasure: 'WorkCenterStandardWorkQtyUnit1'
@DefaultAggregation: #SUM
cast(afvg.WorkCenterStandardWorkQty1 as vdm_vgw01 preserving type) as WorkCenterStandardWorkQty1,
cast(afvg.CostCtrActivityType1 as vdm_lar01 preserving type) as CostCtrActivityType1,
@Semantics.unitOfMeasure: true
cast(afvg.WorkCenterStandardWorkQtyUnit2 as pph_vge02 preserving type) as WorkCenterStandardWorkQtyUnit2,
@Semantics.quantity.unitOfMeasure: 'WorkCenterStandardWorkQtyUnit2'
@DefaultAggregation: #SUM
cast(afvg.WorkCenterStandardWorkQty2 as vdm_vgw02 preserving type) as WorkCenterStandardWorkQty2,
cast(afvg.CostCtrActivityType2 as vdm_lar02 preserving type) as CostCtrActivityType2,
@Semantics.unitOfMeasure: true
cast(afvg.WorkCenterStandardWorkQtyUnit3 as pph_vge03 preserving type) as WorkCenterStandardWorkQtyUnit3,
@Semantics.quantity.unitOfMeasure: 'WorkCenterStandardWorkQtyUnit3'
@DefaultAggregation: #SUM
cast(afvg.WorkCenterStandardWorkQty3 as vdm_vgw03 preserving type) as WorkCenterStandardWorkQty3,
cast(afvg.CostCtrActivityType3 as vdm_lar03 preserving type) as CostCtrActivityType3,
@Semantics.unitOfMeasure: true
cast(afvg.WorkCenterStandardWorkQtyUnit4 as pph_vge04 preserving type) as WorkCenterStandardWorkQtyUnit4,
@Semantics.quantity.unitOfMeasure: 'WorkCenterStandardWorkQtyUnit4'
@DefaultAggregation: #SUM
cast(afvg.WorkCenterStandardWorkQty4 as vdm_vgw04 preserving type) as WorkCenterStandardWorkQty4,
cast(afvg.CostCtrActivityType4 as vdm_lar04 preserving type) as CostCtrActivityType4,
@Semantics.unitOfMeasure: true
cast(afvg.WorkCenterStandardWorkQtyUnit5 as pph_vge05 preserving type) as WorkCenterStandardWorkQtyUnit5,
@Semantics.quantity.unitOfMeasure: 'WorkCenterStandardWorkQtyUnit5'
@DefaultAggregation: #SUM
cast(afvg.WorkCenterStandardWorkQty5 as vdm_vgw05 preserving type) as WorkCenterStandardWorkQty5,
cast(afvg.CostCtrActivityType5 as vdm_lar05 preserving type) as CostCtrActivityType5,
@Semantics.unitOfMeasure: true
cast(afvg.WorkCenterStandardWorkQtyUnit6 as pph_vge06 preserving type) as WorkCenterStandardWorkQtyUnit6,
@Semantics.quantity.unitOfMeasure: 'WorkCenterStandardWorkQtyUnit6'
@DefaultAggregation: #SUM
cast(afvg.WorkCenterStandardWorkQty6 as vdm_vgw06 preserving type) as WorkCenterStandardWorkQty6,
cast(afvg.CostCtrActivityType6 as vdm_lar06 preserving type) as CostCtrActivityType6,
// Forecast Work Quantities
@Semantics.quantity.unitOfMeasure: 'WorkCenterStandardWorkQtyUnit1'
@DefaultAggregation: #SUM
cast(afvg.ForecastWorkQuantity1 as vdm_ofm01 preserving type) as ForecastWorkQuantity1,
@Semantics.quantity.unitOfMeasure: 'WorkCenterStandardWorkQtyUnit2'
@DefaultAggregation: #SUM
cast(afvg.ForecastWorkQuantity2 as vdm_ofm02 preserving type) as ForecastWorkQuantity2,
@Semantics.quantity.unitOfMeasure: 'WorkCenterStandardWorkQtyUnit3'
@DefaultAggregation: #SUM
cast(afvg.ForecastWorkQuantity3 as vdm_ofm03 preserving type) as ForecastWorkQuantity3,
@Semantics.quantity.unitOfMeasure: 'WorkCenterStandardWorkQtyUnit4'
@DefaultAggregation: #SUM
cast(afvg.ForecastWorkQuantity4 as vdm_ofm04 preserving type) as ForecastWorkQuantity4,
@Semantics.quantity.unitOfMeasure: 'WorkCenterStandardWorkQtyUnit5'
@DefaultAggregation: #SUM
cast(afvg.ForecastWorkQuantity5 as vdm_ofm05 preserving type) as ForecastWorkQuantity5,
@Semantics.quantity.unitOfMeasure: 'WorkCenterStandardWorkQtyUnit6'
@DefaultAggregation: #SUM
cast(afvg.ForecastWorkQuantity6 as vdm_ofm06 preserving type) as ForecastWorkQuantity6,
// Business Process
@Consumption.valueHelpDefinition: [ { entity: { name: 'I_BusinessProcessStdVH', element: 'BusinessProcess' } } ]
-- @ObjectModel.foreignKey.association: '_BusinessProcess'
afvg.BusinessProcess,
@Semantics.unitOfMeasure: true
afvg.BusinessProcessEntryUnit,
@Semantics.quantity.unitOfMeasure: 'BusinessProcessEntryUnit'
@DefaultAggregation: #SUM
afvg.BusinessProcessConfirmedQty,
afvg.NoFurtherBusinessProcQtyIsExpd,
@Semantics.unitOfMeasure: true
afvg.BusinessProcRemainingQtyUnit,
@Semantics.quantity.unitOfMeasure: 'BusinessProcRemainingQtyUnit'
@DefaultAggregation: #SUM
cast(afvg.BusinessProcessRemainingQty as pph_oprz1 preserving type) as BusinessProcessRemainingQty,
// OAN data
-- @ObjectModel.foreignKey.association: '_SetupOpActyNtwkInstance'
cast(afvg.SetupOpActyNtwkInstance as vdm_setup_instance preserving type) as SetupOpActyNtwkInstance,
-- @ObjectModel.foreignKey.association: '_ProduceOpActyNtwkInstance'
cast(afvg.ProduceOpActyNtwkInstance as vdm_produce_instance preserving type) as ProduceOpActyNtwkInstance,
-- @ObjectModel.foreignKey.association: '_TeardownOpActyNtwkInstance'
cast(afvg.TeardownOpActyNtwkInstance as vdm_teardown_instance preserving type) as TeardownOpActyNtwkInstance,
// Free-defined fields
afvg.FreeDefinedTableFieldSemantic,
afvg.FreeDefinedAttribute01,
afvg.FreeDefinedAttribute02,
afvg.FreeDefinedAttribute03,
afvg.FreeDefinedAttribute04,
@Semantics.unitOfMeasure: true
afvg.FreeDefinedQuantity1Unit,
@Semantics.quantity.unitOfMeasure: 'FreeDefinedQuantity1Unit'
@DefaultAggregation: #SUM
afvg.FreeDefinedQuantity1,
@Semantics.unitOfMeasure: true
afvg.FreeDefinedQuantity2Unit,
@Semantics.quantity.unitOfMeasure: 'FreeDefinedQuantity2Unit'
@DefaultAggregation: #SUM
afvg.FreeDefinedQuantity2,
@Semantics.currencyCode: true
afvg.FreeDefinedAmount1Currency,
@Semantics.amount.currencyCode: 'FreeDefinedAmount1Currency'
@DefaultAggregation: #SUM
afvg.FreeDefinedAmount1,
@Semantics.currencyCode: true
afvg.FreeDefinedAmount2Currency,
@Semantics.amount.currencyCode: 'FreeDefinedAmount2Currency'
@DefaultAggregation: #SUM
afvg.FreeDefinedAmount2,
afvg.FreeDefinedDate1,
afvg.FreeDefinedDate2,
afvg.FreeDefinedIndicator1,
afvg.FreeDefinedIndicator2,
_OperationControlProfile.ConfirmationIsNotPossible,
_OperationConfirmation.ConfirmationGroup,
//pvzkn - parent operations item number
afvg.OrderIntBillOfOpItemOfPhase,
_ManufacturingOrder.Material as Material,
//aufv.BillOfOperationsMaterial as Material,
//_ManufacturingOrder.ObjectInternalID as OrdObjectInternalID,
aufv.ObjectInternalID as OrdObjectInternalID,
// Has no long text indicator
cast(case afvg.Language
when '' then 'X'
else ''
end as processorderhasnolongtext preserving type) as ProcessOrderHasNoLongText, //replace with ProcOrdOpHasNoLongText
cast(_WorkCenter.WorkCenter as pph_arbpl preserving type) as WorkCenter,
_WorkCenter._Text[1: Language=$session.system_language].WorkCenterText,
_WorkCenter.CapacityInternalID,
// _AllCapacity.CapacityCategoryAllocation,
//'' as CapacityCategoryAllocation,
//Segmentation details
//_MfgOrder.StockSegment as StockSegment,
// Associations
@Consumption.hidden: true
_OrderInternalID,
_ManufacturingOrder,
@VDM.lifecycle.status: #DEPRECATED
@VDM.lifecycle.successor: '_ManufacturingOrder'
_MfgOrder,
_MfgOrderSequence,
_MfgOrderOpComponent,
_MfgOrderOperationPRT,
_MfgOrderOpTriggerPoint,
_MfgOrderOpDocInfoRecord,
_MfgOrderOperationConf,
_MfgOrderCategory,
_MfgOrderType,
_SuperiorOperation,
_OperationStandardTextCode,
_Plant,
_MRPController,
_ResponsiblePlannerGroup,
_ProductionSupervisor,
_ProductionUnit,
_OperationUnit,
_WorkCenter,
@Consumption.hidden: true
_WorkCenterType,
_OperationControlProfile,
_BillOfOperationsType,
_BillOfOperationsGroup,
_BillOfOperationsVariant,
_BillOfOperationsSequence,
@Consumption.hidden: true
_BOOOperationInternalID,
_OperationConfirmation,
_FactoryCalendar,
_CapacityRequirement,
_CapacityRequirementItem,
_ControlRecipeDestination,
_ChangeNumber,
_PurchasingOrganization,
_PurchasingGroup,
_PurchaseOrder,
_PurchaseOrderItem,
_PurchaseRequisition,
@VDM.lifecycle.status: #DEPRECATED
@VDM.lifecycle.successor: '_PurchaseRequisitionItem2'
@API.element.releaseState: #DEPRECATED
@API.element.successor: '_PurchaseRequisitionItem2'
_PurchaseRequisitionItem,
_PurchaseRequisitionItem2,
_PurchasingInfoRecord,
_Supplier,
@Consumption.hidden: true
_SupplierCompanyByPlant,
_OpExternalProcessingCurrency,
_EmployeeWageGroup,
_EmployeeSuitability,
_Employee,
_CompanyCode,
_ProfitCenter,
_RequestingCostCenter,
_ControllingArea,
_ControllingObjectClass,
_ControllingObjectCurrency,
_CostElement,
_CostingVariant,
_FunctionalArea,
_BusinessArea,
_BusinessProcess,
_BusinessProcessEntryUnit,
_OperationSetupGroupCategory,
_OperationSetupGroup,
_OperationSetupType,
_LeadTimeReductionStrategy,
_StartDateOffsetReferenceCode,
_EndDateOffsetReferenceCode,
_StandardWorkFmlaParamGroup,
_Language,
_SetupOpActyNtwkInstance,
_ProduceOpActyNtwkInstance,
_TeardownOpActyNtwkInstance,
_LongText,
_FreeDefinedQuantity1Unit,
_FreeDefinedQuantity2Unit,
_FreeDefinedAmount1Currency,
_FreeDefinedAmount2Currency,
_ProductionPlant,
_Material
}
where
aufv.ManufacturingOrderCategory = '40';
// aufv.OrderCategory = '40';
// and afvg.BillOfOperationsType = '2'; //process orders only