From 0b288e121e532eacae485608cd8f2ae497977faa Mon Sep 17 00:00:00 2001
From: yypsybs <yypsybs@foxmail.com>
Date: 星期一, 18 九月 2023 17:02:36 +0800
Subject: [PATCH] Merge branch 'dev' into dev_yx
---
_Main/BL/Type_PanelMaterialIT/Attribute_CurrencyID.qbl | 7
_Main/BL/Type_PanelMaterialIT/DefaultValue_PriorityName.qbl | 7
_Main/BL/Type_PanelMaterialTM18/Attribute_ID.qbl | 7
_Main/BL/Type_PanelMaterialTM17/DefaultValue_IsEligibleForNetting.qbl | 7
_Main/BL/Type_PanelMaterialTM17/DefaultValue_Quantity.qbl | 6
_Main/BL/Type_HistoricalSalesOrder/Attribute_ID.qbl | 7
_Main/BL/Type_PanelMaterialVehicle/DefaultValue_CurrencyID.qbl | 7
_Main/BL/Type_FillingCapacityOrder/Attribute_Quantity.qbl | 7
_Main/BL/Type_PanelMaterialTianHua/DefaultValue_PriorityName.qbl | 7
_Main/BL/EDI/Broker_Broker_OTD_Product.qbl | 1
_Main/BL/Type_ActualProductInStockingPointInPeriod/StaticMethod_CreateOrUpdate.qbl | 4
_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_IsExcludedFromFulfillmentKPIUser.qbl | 7
_Main/BL/Type_PanelMaterialIT/DefaultValue_ProductID.qbl | 6
_Main/BL/Type_PanelMaterialTM17/Attribute_OrderID.qbl | 7
_Main/BL/Type_PanelMaterialTianHua/Attribute_CustomerID.qbl | 7
_Main/BL/Type_FilllingCapacityOrderScheme/Attribute_CustomerID.qbl | 7
_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_IsExcludedFromFulfillmentKPIUser.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_DialogFillingOrderScheme/Component_pnlActions.def | 40
_Main/BL/Type_CustomerAndForecastOrder/Attribute_SalesAmount.qbl | 7
_Main/BL/Type_CustomerAndForecastOrder/DefaultValue_VerNo.qbl | 6
_Main/BL/Type_CustomerAndForecastOrder/StaticMethod_CreateTestData.qbl | 21
_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_UnitOfMeasureName.qbl | 7
_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_OrderLineID.qbl | 6
_Main/BL/Type_Lane/StaticMethod_CreateLane.qbl | 2
_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_ProfitabilityLevel.qbl | 7
_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_IsEligibleForNetting.qbl | 7
_Main/BL/Type_PanelMaterialAutomotiveElectronics/_ROOT_Type_PanelMaterialAutomotiveElectronics.qbl | 10
_Main/BL/Type_PanelMaterialTianHua/Attribute_Price.qbl | 7
_Main/BL/Type_PanelMaterialTianHua/Attribute_Quantity.qbl | 7
_Main/BL/Type_HistoricalSalesOrder/Attribute_UnitOfMeasureName.qbl | 8
_Main/BL/Type_FilllingCapacityOrderScheme/StaticMethod_CreateFillingCapacityOrderScheme.qbl | 48
_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_IsEligibleForNetting.qbl | 7
_Main/BL/Type_CustomerAndForecastOrder/Attribute_Quantity.qbl | 7
_Main/BL/Type_FilllingCapacityOrderScheme/DefaultValue_CustomerID.qbl | 6
_Main/BL/Type_CustomerAndForecastOrder/Attribute_ForecastDemandDate.qbl | 7
_Main/BL/Type_CustomerAndForecastOrder/Attribute_ServiceType.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_DialogFillingCustomerAndForecast/Component_pnlContent.def | 86
_Main/BL/Type_PanelMaterialIT/Attribute_IsExcludedFromFulfillmentKPIUser.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_FormHistoricalSalesOrders/Component_listContextMenuHistoricalSalesOrders.def | 46
_Main/UI/MacroPlannerWebApp/Component_FormWorkOrderType/Response_ListWorkOrderType_MenuEdit_OnClick.def | 20
_Main/BL/IntegratorConfigs/IntegratorConfig_PanelMaterialRestServer/QuintiqEndpoint_QuintiqEndpoint.qbl | 8
_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Response_pnlActions_btnOk_OnClick.def | 15
_Main/BL/Type_PanelMaterialTM18/DefaultValue_Price.qbl | 7
_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_Customer.qbl | 7
_Main/BL/Type_PanelMaterialIT/_ROOT_Type_PanelMaterialIT.qbl | 10
_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/Method_Edit.def | 16
_Main/BL/Type_PanelMaterialTM18/Attribute_IsFirmed.qbl | 7
_Main/BL/Type_CustomerAndForecastOrder/Attribute_UnitOfMeasureName.qbl | 7
_Main/BL/Type_PanelMaterialTM17/Attribute_UnitOfMeasureName.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_FormFillingScheme/Component_Menurelease.def | 23
_Main/BL/Type_PanelMaterialTianHua/DefaultValue_StockingPointID.qbl | 7
_Main/BL/Type_PanelMaterialSportsHealth/Attribute_OrderLineID.qbl | 7
_Main/BL/Type_PanelMaterialTianHua/Attribute_Customer.qbl | 7
_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_UnitOfMeasureName.qbl | 7
_Main/BL/Type_PanelMaterialIT/DefaultValue_IsFirmed.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_Form367/Component_listActionBarPageBusinessType#675.def | 10
_Main/BL/Type_PanelMaterialTM17/Attribute_SalesSegmentName.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditWorkOrderType/Method_Edit.def | 17
_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityScheme/Response_ListCustomerAndFillingCapacityOrder_MenuTest_OnClick.def | 17
_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityScheme/Component_listContextMenuCustomerAndFillingCapacityOrder.def | 35
_Main/BL/IntegratorConfigs/IntegratorConfig_PanelMaterialRestServer/RestEndpoint_RestEndpointPanelMaterial.qbl | 10
_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_OrderID.qbl | 6
_Main/BL/Type_PanelMaterialTianHua/Attribute_StockingPointID.qbl | 7
_Main/BL/Type_PanelMaterialVehicle/Attribute_Quantity.qbl | 7
_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_RewindsQuantityToReduced.qbl | 7
_Main/BL/Type_PanelMaterialIT/Attribute_ProductID.qbl | 7
_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_OrderDate.qbl | 7
_Main/BL/Type_HistoricalSalesOrder/DefaultValue_Customer.qbl | 6
_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_IsFirmed.qbl | 7
_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_IsEligibleForNetting.qbl | 7
_Main/UI/MacroPlanner/Component_FormProducts/Component_ListProduct.def | 42
_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Component_listContextMenuData.def | 62
_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Method_Edit.def | 17
_Main/BL/Type_PanelMaterialTM17/Attribute_Customer.qbl | 7
_Main/BL/Type_PanelMaterialTM18/Attribute_IsExcludedFromFulfillmentKPIUser.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_DialogBusinessType/Method_ClickBtnOk.def | 25
_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_OrderID.qbl | 6
_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_OrderLineID.qbl | 6
_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/Response_pnlActions_btnCancel_OnClick.def | 15
_Main/BL/Type_PanelMaterialTianHua/_ROOT_Type_PanelMaterialTianHua.qbl | 10
_Main/UI/MacroPlannerWebApp/Component_DialogFillingOrderScheme/Component_pnlContent.def | 24
_Main/BL/Type_PanelMaterialTianHua/DefaultValue_ID.qbl | 6
_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder/Response_ListFillingCapacityOrder_MenuDelete_OnClick.def | 19
_Main/BL/Type_PanelMaterialIT/Attribute_CustomerID.qbl | 7
_Main/BL/Type_PanelMaterialIT/DefaultValue_IsExcludedFromFulfillmentKPIUser.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/_ROOT_Component_FormPanelPullPlanReport.def | 17
_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_PriorityName.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_DialogFillingCustomerAndForecast/Method_Filling.def | 15
_Main/BL/Type_CustomerAndForecastOrder/Attribute_Customer.qbl | 7
_Main/BL/Type_PanelMaterialTM17/DefaultValue_Customer.qbl | 6
_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_OrderLineID.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Method_New.def | 17
_Main/BL/Type_PanelMaterialIT/DefaultValue_Price.qbl | 7
_Main/BL/Type_MacroPlan/Method_MappingProductData.qbl | 4
_Main/BL/Type_PanelMaterialVehicle/DefaultValue_IsExcludedFromFulfillmentKPIUser.qbl | 7
_Main/BL/Type_PanelMaterialSportsHealth/Attribute_UnitOfMeasureName.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ActionBarGroupSalesViews#633.def | 22
_Main/BL/Type_PanelMaterialVehicle/Attribute_PriorityName.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/_ROOT_Component_DialogFillingCapacityOrder.def | 42
_Main/BL/Type_PanelMaterialAll/Attribute_releaseDate.qbl | 7
_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_SalesSegmentName.qbl | 7
_Main/BL/Type_FilllingCapacityOrderScheme/StaticMethod_ReleaseFillingScheme.qbl | 22
_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Component_PanelData#431.def | 14
_Main/BL/Relations/Relation_PanelMaterialVehicle_PanelMaterialAll_PanelMaterialAll_PanelMateria.qbl | 23
_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityScheme/Component_listActionBarPageCustomerAndFillingCapacityOrder.def | 10
_Main/BL/Type_CustomerAndForecastOrder/Attribute_OrderID.qbl | 8
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_TIANMA_JITUAN_ContextMenuSalesFillingCapacity_MenuSalesFillingCapac.def | 18
_Main/BL/Relations/Relation_HistoricalFillingCapacityOrder_MacroPlan_MacroPlan_HistoricalFillin.qbl | 23
_Main/BL/Relations/Relation_PanelMaterialIT_PanelMaterialAll_PanelMaterialAll_PanelMaterialIT.qbl | 23
_Main/UI/MacroPlannerWebApp/Component_FormWorkOrderType/Component_listContextMenuWorkOrderType.def | 62
_Main/BL/Relations/Relation_PanelMaterialTM18_PanelMaterialAll_PanelMaterialAll_PanelMaterialTM.qbl | 23
_Main/BL/Type_PanelMaterialSportsHealth/Attribute_Customer.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_Form367/Component_listContextMenuBusinessType655.def | 46
_Main/UI/MacroPlannerWebApp/Component_FormHistoricalSalesOrders/Component_listActionBarPageHistoricalSalesOrders.def | 10
_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_IsEligibleForNetting.qbl | 7
_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_CurrencyID.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Response_PanelFunctionButtons_ButtonRefresh_OnClick.def | 24
_Main/BL/Type_HistoricalSalesOrder/StaticMethod_GetUnitOfMeasuresString.qbl | 26
_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Component_PanelPanelPullPlanReport.def | 15
_Main/UI/MacroPlannerWebApp/Component_FormHistoricalSalesOrders/Response_ListHistoricalSalesOrders_MenuEdit_OnClick.def | 20
_Main/BL/Type_PanelMaterialTianHua/StaticMethod_ReceiveDataGeneration.qbl | 65
_Main/BL/Type_InventoryValueAndCost/StaticMethod_FindById.qbl | 5
_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_ProductID.qbl | 6
_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_Customer.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_Form367/Response_ListBusinessType_MenuNew_OnClick.def | 18
_Main/BL/Type_PanelMaterialTM18/Attribute_PriorityName.qbl | 7
_Main/BL/Type_MacroPlan/Method_MappingOperationBOMData.qbl | 15
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ActionBarPageSales.def | 8
_Main/UI/MacroPlannerWebApp/Views/填产方案列表.vw | 194 +
_Main/BL/Type_PanelMaterialTianHua/DefaultValue_IsExcludedFromFulfillmentKPIUser.qbl | 7
_Main/BL/ConfigTemplates.properties | 4
_Main/BL/Type_CustomerAndForecastOrder/StaticMethod_CreateFillingCapacityOrder.qbl | 17
_Main/UI/MacroPlannerWebApp/Component_FormHistoricalSalesOrders/Response_ListHistoricalSalesOrders_MenuNew_OnClick.def | 26
_Main/UI/MacroPlannerWebApp/Component_DialogFillingCustomerAndForecast/Response_pnlActions_btnOk_OnClick.def | 15
_Main/BL/Type_HistoricalSalesOrder/DefaultValue_SalesSegmentName.qbl | 6
_Main/BL/Type_PanelMaterialVehicle/Attribute_IsExcludedFromFulfillmentKPIUser.qbl | 7
_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_Price.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_DialogMaterialLabelingAndPlanningStrategy/Response_pnlGeneral_ddslMaterialPlanningPolicyChanges_OnUserSelectionChanged.def | 25
_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityScheme/Method_OpenScheme.def | 10
_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder/_ROOT_Component_FormFillingCapacityOrder.def | 16
_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder/Component_listActionBarPageFillingCapacityOrder.def | 10
_Main/BL/Type_FillingCapacityOrder/Attribute_IsFilling.qbl | 7
_Main/BL/Type_WorkOrderType/Attribute_ID.qbl | 8
_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_ForecastDemandDate.qbl | 7
_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_SalesAmount.qbl | 7
_Main/BL/Type_PanelMaterialAll/_ROOT_Type_PanelMaterialAll.qbl | 9
_Main/BL/Type_PanelMaterialTM18/DefaultValue_Customer.qbl | 6
_Main/BL/Type_CustomerAndForecastOrder/Attribute_PanelBigSheetQuantity.qbl | 7
_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_IsExcludedFromFulfillmentKPIUser.qbl | 7
_Main/BL/Type_GlobalDTOTable/StaticMethod_ReceivingPanelMaterials.qbl | 13
_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_IsFirmed.qbl | 7
_Main/BL/Type_StockingPoint_MP/StaticMethod_CreateStockingpointFromJson.qbl | 2
_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Response_ListData_MenuDelete_OnClick.def | 18
_Main/BL/Type_MacroPlan/Method_MappingExternalSupplyData.qbl | 5
_Main/BL/Type_PanelMaterialTianHua/DefaultValue_ProductID.qbl | 6
_Main/BL/Type_HistoricalSalesOrder/Attribute_OrderDate.qbl | 7
_Main/BL/Type_MatAttrSettingAndPlanningStrategy/StaticMethod_SynchronizeInventoryTargets.qbl | 41
_Main/BL/Type_PanelMaterialTianHua/DefaultValue_CurrencyID.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_DialogFillingOrderScheme/_ROOT_Component_DialogFillingOrderScheme.def | 32
_Main/UI/MacroPlannerWebApp/Component_DialogBusinessType/Component_pnlActions.def | 40
_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/Response_pnlActions_btnOk_OnClick.def | 35
_Main/BL/Type_FilllingCapacityOrderScheme/Attribute_SalesSegmentName.qbl | 7
_Main/BL/Type_PanelMaterialTM18/DefaultValue_IsExcludedFromFulfillmentKPIUser.qbl | 7
_Main/BL/Type_PanelMaterialTianHua/Attribute_OrderLineID.qbl | 7
_Main/BL/Type_HistoricalFillingCapacityOrder/DefaultValue_StockingPointID.qbl | 6
_Main/BL/Type_PanelMaterialTM18/Attribute_Customer.qbl | 7
_Main/BL/Type_PanelMaterialTianHua/Attribute_OrderID.qbl | 7
_Main/BL/Type_HistoricalSalesOrder/DefaultValue_OrderID.qbl | 6
_Main/BL/Type_CustomerAndForecastOrder/Attribute_BusinessType.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_DialogHistoricalSalesOrders/Component_pnlContent.def | 109
_Main/BL/Type_Forecast/StaticMethod_CreateOrUpdate.qbl | 2
_Main/BL/Type_PanelMaterialSportsHealth/Attribute_Price.qbl | 7
_Main/BL/Type_PanelMaterialIT/DefaultValue_StockingPointID.qbl | 7
_Main/BL/Type_PanelMaterialSportsHealth/Attribute_StockingPointID.qbl | 7
_Main/BL/Type_MacroPlan/StaticMethod_DoSync0.qbl | 20
_Main/UI/MacroPlannerWebApp/Component_DialogBusinessType/Response_pnlActions_btnCancel_OnClick.def | 15
_Main/BL/Type_CustomerAndForecastOrder/Attribute_DemandDate.qbl | 7
_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_PriorityName.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Response_ListData_MenuEdit_OnClick.def | 20
_Main/BL/Type_PanelMaterial/Attribute_PanelModel.qbl | 8
_Main/BL/Type_FillingCapacityOrder/Attribute_UnitOfMeasureName.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Response_ListData_MenuCreate_OnClick.def | 22
_Main/BL/Relations/Relation_PanelMaterialSpecializedDisplay_PanelMaterialAll_PanelMaterialAll_P.qbl | 23
_Main/BL/Type_PanelMaterial/Attribute_DemandQuantity.qbl | 8
_Main/BL/Type_InventoryValueAndCost/StaticMethod_CreateOrUpdate.qbl | 34
_Main/BL/Type_MacroPlan/Method_MappingActualPISPIPData.qbl | 2
_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_CustomerID.qbl | 7
_Main/BL/Relations/Relation_WorkOrderType_GlobalOTDTable_GlobalOTDTable_WorkOrderType.qbl | 23
_Main/BL/Type_CustomerAndForecastOrder/Attribute_ProductID.qbl | 7
_Main/BL/Type_PanelMaterialIT/Attribute_Customer.qbl | 7
_Main/BL/Type_PanelMaterialVehicle/Attribute_OrderID.qbl | 7
_Main/BL/Type_PanelMaterialSportsHealth/Attribute_PriorityName.qbl | 7
_Main/BL/Type_PanelMaterialTM18/Attribute_Price.qbl | 7
_Main/BL/Type_HistoricalSalesOrder/DefaultValue_ProductID.qbl | 6
_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_SalesSegmentName.qbl | 6
_Main/BL/Type_PanelMaterialTM18/Attribute_SalesSegmentName.qbl | 7
_Main/BL/Type_PanelMaterialIT/Attribute_Quantity.qbl | 7
_Main/BL/Type_HistoricalFillingCapacityOrder/DefaultValue_ProductID0.qbl | 6
_Main/BL/Type_PanelMaterialVehicle/Attribute_StockingPointID.qbl | 7
_Main/UI/MacroPlanner/Component_FormProducts/Component_SplitterWnd8.def | 14
_Main/BL/Type_PanelMaterialTM18/DefaultValue_OrderID.qbl | 6
_Main/BL/Type_MacroPlan/Method_MappingInventoryValueAndCostData.qbl | 23
_Main/BL/Type_PanelMaterialVehicle/Attribute_Customer.qbl | 7
_Main/BL/Type_PanelMaterialIT/DefaultValue_ID.qbl | 6
_Main/BL/Type_CustomerOrder/StaticMethod_CreateOrUpdate.qbl | 22
_Main/UI/MacroPlannerWebApp/Component_Form367/Component_ListBusinessType.def | 59
_Main/BL/Type_PanelMaterialVehicle/Attribute_ProductID.qbl | 7
_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_Customer.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder/Component_ListFillingCapacityOrder.def | 60
_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Response_PanelFunctionButtons_ButtonSend_OnClick.def | 24
_Main/BL/Type_PanelMaterialTianHua/Attribute_IsEligibleForNetting.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_Form367/Response_ListBusinessType_MenuEdit_OnClick.def | 20
_Main/UI/MacroPlannerWebApp/Component_DialogHistoricalSalesOrders/Method_ClickBtnOk.def | 25
_Main/BL/Type_PanelMaterialTianHua/Attribute_PriorityName.qbl | 7
_Main/BL/Type_HistoricalSalesOrder/DefaultValue_PriorityName.qbl | 6
_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_Customer.qbl | 6
_Main/BL/Type_PanelMaterialSportsHealth/Attribute_IsExcludedFromFulfillmentKPIUser.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_DialogFillingCustomerAndForecast/_ROOT_Component_DialogFillingCustomerAndForecast.def | 42
_Main/BL/Type_PanelMaterialSportsHealth/Attribute_ID.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_DialogBusinessType/Response_pnlActions_btnOk_OnClick.def | 15
_Main/BL/Type_FillingCapacityOrder/Attribute_Customer.qbl | 7
_Main/BL/Type_CustomerAndForecastOrder/DefaultValue_ProductID.qbl | 6
_Main/BL/Type_HistoricalFillingCapacityOrder/DefaultValue_BusinessType.qbl | 6
_Main/BL/Type_PanelMaterialSportsHealth/Attribute_ProductID.qbl | 7
_Main/BL/Type_PanelMaterialIT/Attribute_SalesSegmentName.qbl | 7
_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_FillingType.qbl | 7
_Main/BL/Type_PanelMaterialVehicle/Attribute_IsEligibleForNetting.qbl | 7
_Main/BL/Type_FilllingCapacityOrderScheme/Attribute_IsRelease.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder/Response_ListFillingCapacityOrder_MenuSaveScheme_OnClick.def | 19
_Main/BL/Type_FilllingCapacityOrderScheme/DefaultValue_Customer.qbl | 6
_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditWorkOrderType/Response_pnlActions_btnCancel_OnClick.def | 15
_Main/UI/MacroPlannerWebApp/Component_FormHistoricalFillingCapacityOrder/Component_listActionBarPageHistoricalFillingCapacityOrder.def | 10
_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_OrderDate.qbl | 7
_Main/BL/Type_HistoricalSalesOrder/StaticMethod_GetStockingPointString.qbl | 25
_Main/BL/Type_MacroPlan/Method_MappingOperationBOMDataSupplyPurchase.qbl | 23
_Main/BL/Type_PanelMaterialIT/Attribute_StockingPointID.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditWorkOrderType/Component_pnlActions.def | 40
_Main/BL/Type_PanelMaterialVehicle/Attribute_UnitOfMeasureName.qbl | 7
_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_Quantity.qbl | 6
_Main/BL/Type_PanelMaterialVehicle/StaticMethod_ReceiveDataGeneration.qbl | 65
_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Method_ClickBtnOk.def | 25
_Main/UI/MacroPlannerWebApp/Component_DialogFillingCustomerAndForecast/Response_pnlActions_btnCancel_OnClick.def | 15
_Main/UI/MacroPlannerWebApp/Component_Form367/Response_ListBusinessType_MenuDelete_OnClick.def | 19
_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_OrderLineID.qbl | 7
_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_UnitOfMeasureName.qbl | 7
_Main/BL/Type_HistoricalSalesOrder/DefaultValue_BusinessType.qbl | 6
_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_VerNo.qbl | 7
_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_SalesSegmentName.qbl | 7
_Main/BL/Type_PanelMaterialTianHua/Attribute_CurrencyID.qbl | 7
_Main/BL/Type_Product_MP/Attribute_IsPanelMaterial.qbl | 8
_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_IsFirmed.qbl | 7
_Main/BL/Type_FilllingCapacityOrderScheme/DefaultValue_SalesSegmentName.qbl | 6
_Main/BL/Type_HistoricalSalesOrder/Attribute_StockPointID.qbl | 8
_Main/BL/Type_PanelMaterialVehicle/_ROOT_Type_PanelMaterialVehicle.qbl | 10
_Main/BL/Type_PanelMaterialSportsHealth/Attribute_OrderID.qbl | 7
_Main/BL/Type_HistoricalSalesOrder/Attribute_Price.qbl | 8
_Main/UI/MacroPlannerWebApp/Component_FormFillingScheme/_ROOT_Component_FormFillingScheme.def | 22
_Main/BL/Type_MacroPlan/Method_MappingOperationBOMDataRouting#576.qbl | 2
_Main/BL/Type_PanelMaterialTM18/DefaultValue_IsEligibleForNetting.qbl | 7
_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_OrderDate.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_Form367/_ROOT_Component_FormBusinessType#367.def | 16
_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder802/Component_listActionBarPageFillingSchemeDetail.def | 10
_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityScheme/_ROOT_Component_FormCustomerAndForecastOrder.def | 16
_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder/Response_ListFillingCapacityOrder_MenuNew_OnClick.def | 18
_Main/UI/MacroPlannerWebApp/Component_FormMaterialLabelingAndPlanningStrategy/Component_PanelMaterialExportAndImport#136.def | 16
_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_UnitOfMeasureName.qbl | 7
_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_UnitOfMeasureName.qbl | 7
_Main/BL/Type_PanelMaterialTM17/DefaultValue_ProductID.qbl | 6
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/_ROOT_Component_ApplicationMacroPlanner.def | 1
_Main/BL/Relations/Relation_PanelMaterialTM17_PanelMaterialAll_PanelMaterialAll_PanelMaterialTM.qbl | 23
_Main/BL/Relations/Relation_PanelMaterial_MacroPlan_MacroPlan_PanelMaterial.qbl | 23
_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_OrderID.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_FormFillingScheme/Component_listActionBarPageFillingScheme.def | 10
_Main/UI/MacroPlannerWebApp/Component_DialogFillingCustomerAndForecast/Component_pnlActions.def | 40
_Main/BL/Type_PanelMaterialIT/Attribute_OrderLineID.qbl | 7
_Main/BL/Type_PanelMaterialIT/Attribute_IsFirmed.qbl | 7
_Main/BL/Type_PanelMaterialTM18/Attribute_IsEligibleForNetting.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_FormHistoricalSalesOrders/_ROOT_Component_FormHistoricalSalesOrders.def | 16
_Main/BL/Type_BusinessType/Attribute_BusinessTypeName.qbl | 7
_Main/BL/Type_WorkOrderType/Attribute_TypeName.qbl | 8
_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditWorkOrderType/_ROOT_Component_DialogCreateEditWorkOrderType.def | 41
_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/_ROOT_Component_DialogCreateEditPanelPullPlanReport.def | 31
_Main/BL/Type_PanelMaterialTM17/Attribute_ProductID.qbl | 7
_Main/BL/Type_FillingCapacityOrder/Attribute_VerNo.qbl | 7
_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_ProductID0.qbl | 7
_Main/BL/Type_PanelMaterial/_ROOT_Type_PanelMaterial.qbl | 9
_Main/BL/Type_PanelMaterialIT/DefaultValue_IsEligibleForNetting.qbl | 7
_Main/BL/Type_PanelMaterialTM17/DefaultValue_SalesSegmentName.qbl | 6
_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_OrderID.qbl | 7
_Main/BL/Type_PanelMaterialTM17/DefaultValue_StockingPointID.qbl | 7
_Main/BL/Type_PanelMaterialTM17/Attribute_StockingPointID.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_DialogMaterialLabelingAndPlanningStrategy/Response_pnlActions_btnOk_OnClick.def | 9
_Main/BL/Type_FillingCapacityOrder/_ROOT_Type_FillingCapacityOrder.qbl | 9
_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_OrderID.qbl | 7
_Main/BL/Type_PanelMaterialVehicle/Attribute_IsFirmed.qbl | 7
_Main/BL/Type_PanelMaterialTM18/Attribute_CustomerID.qbl | 7
_Main/BL/Type_PanelMaterial/Attribute_StartDate.qbl | 8
_Main/BL/Type_PanelMaterialIT/DefaultValue_UnitOfMeasureName.qbl | 7
_Main/BL/Type_PanelMaterialTM18/DefaultValue_SalesSegmentName.qbl | 6
_Main/Sys/Integration/Structure/PanelMaterialResponseResult_from.xml | 0
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ContextMenuSalesFillingCapacity.def | 36
_Main/BL/Type_PanelMaterialTM17/DefaultValue_CustomerID.qbl | 6
_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditWorkOrderType/Method_NewWorkOrderType.def | 18
_Main/UI/MacroPlannerWebApp/Component_FormFillingScheme/Response_ListFillingScheme_MenuRelease_OnClick.def | 24
_Main/BL/Type_PanelMaterialTM17/DefaultValue_IsFirmed.qbl | 7
_Main/BL/Type_FillingCapacityOrder/Attribute_DemandDate.qbl | 7
_Main/BL/Type_PanelMaterialTM17/DefaultValue_OrderID.qbl | 6
_Main/BL/Type_HistoricalFillingCapacityOrder/DefaultValue_CustomerID.qbl | 6
_Main/BL/Type_PanelMaterialVehicle/Attribute_CustomerID.qbl | 7
_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_CurrencyID.qbl | 7
_Main/BL/Type_HistoricalSalesOrder/StaticMethod_GetCustomerString.qbl | 28
_Main/BL/Type_PanelMaterialIT/DefaultValue_SalesSegmentName.qbl | 6
_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder/Component_listContextMenuFillingCapacityOrder.def | 57
_Main/BL/Type_PanelMaterialIT/Attribute_PriorityName.qbl | 7
_Main/BL/Type_ProductInLane/StaticMethod_CreateOrUpdate.qbl | 8
_Main/UI/MacroPlannerWebApp/Component_FormHistoricalSalesOrders/Response_ListHistoricalSalesOrders_MenuDelete_OnClick.def | 19
_Main/BL/Type_PanelMaterialTianHua/DefaultValue_Customer.qbl | 6
_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_Customer.qbl | 6
_Main/BL/Type_PanelMaterialSportsHealth/_ROOT_Type_PanelMaterialSportsHealth.qbl | 10
_Main/BL/Type_FilllingCapacityOrderScheme/Attribute_SchemeName.qbl | 7
_Main/BL/Type_PanelMaterialTM17/Attribute_OrderLineID.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_DialogBusinessType/_ROOT_Component_DialogBusinessType.def | 41
_Main/BL/Type_HistoricalFillingCapacityOrder/DefaultValue_UnitOfMeasureName.qbl | 6
_Main/BL/Type_PanelMaterialTianHua/Attribute_ProductID.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder802/_ROOT_Component_FormFillingSchemeDetail#802.def | 41
_Main/BL/Type_PanelMaterialTM18/Attribute_UnitOfMeasureName.qbl | 7
_Main/UI/MacroPlannerWebApp/_ROOT_Project_MacroPlannerWebApp.qp | 2
_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_StockingPointID.qbl | 7
_Main/BL/Type_HistoricalFillingCapacityOrder/DefaultValue_VerNo.qbl | 6
_Main/BL/Type_HistoricalSalesOrder/Attribute_Customer.qbl | 8
_Main/BL/Type_PanelMaterialTianHua/Attribute_IsFirmed.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/Component_pnlActions.def | 40
_Main/BL/Type_PanelMaterialTM17/Attribute_PriorityName.qbl | 7
_Main/BL/Type_PanelMaterialTianHua/DefaultValue_IsEligibleForNetting.qbl | 7
_Main/BL/Type_PanelMaterialSportsHealth/Attribute_IsFirmed.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Component_pnlContent.def | 125
_Main/BL/Type_PanelMaterialTM18/DefaultValue_ProductID.qbl | 6
_Main/BL/Type_FillingCapacityOrder/Attribute_ForecastDemandDate.qbl | 7
_Main/BL/Type_FilllingCapacityOrderScheme/_ROOT_Type_FilllingCapacityOrderScheme.qbl | 9
_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_StockingPointID.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_FormWorkOrderType/Component_ListWorkOrderType.def | 59
_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Component_pnlActions.def | 40
_Main/BL/Type_BusinessType/_ROOT_Type_BusinessType.qbl | 10
_Main/BL/Type_PanelMaterialTianHua/Attribute_OrderDate.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_FormHistoricalFillingCapacityOrder/Component_ListHistoricalFillingCapacityOrder.def | 41
_Main/BL/Type_BusinessType/StaticMethod_CreateData.qbl | 25
_Main/BL/Type_GlobalDTOTable/Method_RefreshPanelMaterialData.qbl | 23
_Main/BL/Type_MacroPlan/Method_MappingUnitData.qbl | 7
_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_CurrencyID.qbl | 7
_Main/BL/Type_PanelMaterialSportsHealth/StaticMethod_ReceiveDataGeneration.qbl | 65
_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_IsExcludedFromFulfillmentKPIUser.qbl | 7
_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_CustomerID.qbl | 7
_Main/BL/Type_PanelMaterialIT/Attribute_OrderID.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/Component_pnlContent.def | 58
_Main/BL/Relations/Relation_BusinessType_GlobalOTDTable_GlobalOTDTable_BusinessType.qbl | 23
_Main/BL/Type_MacroPlan/Method_MappingProductInLaneData.qbl | 4
_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_IsFirmed.qbl | 7
_Main/BL/Relations/Relation_FilllingCapacityOrderScheme_MacroPlan_MacroPlan_FilllingCapacityOrd.qbl | 23
_Main/BL/Type_CustomerAndForecastOrder/_ROOT_Type_CustomerAndForecastOrder.qbl | 9
_Main/BL/Type_PanelMaterialVehicle/Attribute_SalesSegmentName.qbl | 7
_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_Quantity.qbl | 6
_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_CustomerID.qbl | 6
_Main/BL/Type_PanelMaterialTM17/DefaultValue_CurrencyID.qbl | 7
_Main/BL/Type_PanelMaterialVehicle/DefaultValue_Price.qbl | 7
_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_ID.qbl | 7
_Main/BL/Type_PanelMaterialTM17/Attribute_IsEligibleForNetting.qbl | 7
_Main/BL/Type_FillingCapacityOrder/Attribute_OrderDate.qbl | 7
_Main/BL/Type_FilllingCapacityOrderScheme/Attribute_BusinessType.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_FormMaterialLabelingAndPlanningStrategy/Response_PanelMaterialExportAndImport_136_ButtonPullData_OnClick.def | 16
_Main/UI/MacroPlannerWebApp/Component_DialogBusinessType/Method_New.def | 15
_Main/BL/Type_PanelMaterialTianHua/DefaultValue_CustomerID.qbl | 6
_Main/UI/MacroPlannerWebApp/Component_FormMaterialLabelingAndPlanningStrategy/_ROOT_Component_FormMaterialLabelingAndPlanningStrategy.def | 2
_Main/UI/MacroPlannerWebApp/Component_FormWorkOrderType/_ROOT_Component_FormWorkOrderType.def | 17
_Main/BL/Type_PanelMaterialTM17/Attribute_ID.qbl | 7
_Main/BL/Type_BusinessType/StaticMethod_GetBusinessNameStr.qbl | 28
_Main/BL/Type_PanelMaterialIT/Attribute_Price.qbl | 7
_Main/BL/Type_WorkOrderType/_ROOT_Type_WorkOrderType.qbl | 9
_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_CustomerID.qbl | 6
_Main/BL/Relations/Relation_FilllingCapacityOrderScheme_FillingCapacityOrder_FillingCapacityOrd.qbl | 23
_Main/BL/Type_FilllingCapacityOrderScheme/StaticMethod_GetFillingSchemeDetails.qbl | 16
_Main/BL/Type_PanelMaterialIT/Attribute_ID.qbl | 7
_Main/BL/Type_HistoricalSalesOrder/Attribute_OrderLineID.qbl | 8
_Main/BL/Type_MacroPlan/Method_MappingOperationCostData.qbl | 2
_Main/BL/Type_FillingCapacityOrder/Attribute_CustomerID.qbl | 7
_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_SalesSegmentName.qbl | 6
_Main/BL/Type_PanelMaterialTM18/DefaultValue_IsFirmed.qbl | 7
_Main/BL/Type_CustomerAndForecastOrder/Attribute_VerNo.qbl | 7
_Main/BL/Type_FillingCapacityOrder/Attribute_SalesAmount.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_TIANMA_JITUAN_ContextMenuSalesFillingCapacity_MenuSalesFillingSchem.def | 19
_Main/BL/Type_PanelMaterialVehicle/DefaultValue_IsFirmed.qbl | 7
_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_Quantity.qbl | 7
_Main/BL/Type_PanelMaterialIT/DefaultValue_OrderLineID.qbl | 6
_Main/BL/Type_PanelMaterialAll/Attribute_ScenarioName.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_DialogBusinessType/Method_Edit.def | 17
_Main/BL/Type_PanelMaterialAll/Attribute_BusinessType.qbl | 7
_Main/BL/Type_PanelMaterialTM18/Attribute_Quantity.qbl | 7
_Main/BL/Relations/Relation_FillingCapacityOrder_MacroPlan_MacroPlan_FillingCapacityOrder.qbl | 23
_Main/BL/Type_HistoricalSalesOrder/Attribute_OrderID.qbl | 8
_Main/BL/Type_PanelMaterialTianHua/Attribute_SalesSegmentName.qbl | 7
_Main/BL/Type_CustomerAndForecastOrder/DefaultValue_Customer.qbl | 6
_Main/BL/Type_PanelMaterialTM18/Attribute_StockingPointID.qbl | 7
_Main/Sys/Integration/Structure/PanelMaterialResponseResult_to.xml | 0
_Main/UI/MacroPlannerWebApp/Component_FormFillingScheme/Component_ListFillingScheme.def | 59
_Main/BL/Type_MatAttrSettingAndPlanStrategyDataTable/Method_CreateOrUpdateData.qbl | 89
_Main/BL/Type_PanelMaterialTM18/Attribute_ProductID.qbl | 7
_Main/BL/Type_CustomerAndForecastOrder/DefaultValue_BusinessType.qbl | 6
_Main/BL/Type_FillingCapacityOrder/Attribute_ProductID.qbl | 7
_Main/BL/Type_PanelMaterialTM18/DefaultValue_StockingPointID.qbl | 7
_Main/BL/Type_PanelMaterialTM18/Attribute_OrderLineID.qbl | 7
_Main/BL/Type_FillingCapacityOrder/DefaultValue_IsFilling.qbl | 7
_Main/BL/Type_PanelMaterialTianHua/Attribute_ID.qbl | 7
_Main/BL/Type_PanelMaterialTianHua/DefaultValue_OrderID.qbl | 6
_Main/BL/Relations/Relation_HistoricalSalesOrder_MacroPlan_MacroPlan_HistoricalSalesOrder.qbl | 23
_Main/BL/Type_PanelMaterialTM18/Attribute_OrderDate.qbl | 7
_Main/BL/Type_HistoricalSalesOrder/DefaultValue_OrderLineID.qbl | 6
_Main/UI/MacroPlannerWebApp/Component_FormWorkOrderType/Component_listActionBarPageWorkOrderType.def | 10
_Main/BL/Type_PanelMaterialIT/DefaultValue_Quantity.qbl | 6
_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Response_pnlActions_btnCancel_OnClick.def | 15
_Main/UI/MacroPlannerWebApp/Component_FormFillingScheme/Response_ListFillingScheme_OnClick.def | 32
_Main/BL/Type_FillingCapacityOrder/Attribute_PanelBigSheetQuantity.qbl | 7
_Main/BL/Type_FillingCapacityOrder/Attribute_SalesSegmentName.qbl | 7
_Main/BL/Type_PanelMaterialVehicle/Attribute_OrderLineID.qbl | 7
_Main/BL/Type_PanelMaterialTM18/DefaultValue_PriorityName.qbl | 7
_Main/BL/Type_HistoricalSalesOrder/DefaultValue_OrderType.qbl | 6
_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_PriorityName.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Component_listActionBarPageData.def | 10
_Main/BL/Type_HistoricalSalesOrder/StaticMethod_GetCustomerID.qbl | 19
_Main/BL/Type_PanelMaterialTM17/DefaultValue_ID.qbl | 6
_Main/BL/Type_MatAttrSettingAndPlanStrategyDataTable/Method_SynchronizeData.qbl | 2
_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_CurrencyID.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder802/Component_ListFillingSchemeDetail.def | 41
_Main/BL/Type_PanelMaterialIT/Attribute_UnitOfMeasureName.qbl | 7
_Main/BL/Type_PanelMaterialIT/DefaultValue_CurrencyID.qbl | 7
_Main/BL/Type_PanelMaterialVehicle/Attribute_CurrencyID.qbl | 7
_Main/BL/Type_CustomerAndForecastOrder/DefaultValue_UnitOfMeasureName.qbl | 6
_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Response_ListData_MenuSelectAll_OnClick.def | 17
_Main/BL/Type_PanelMaterialTM18/Attribute_CurrencyID.qbl | 7
_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_CustomerID.qbl | 6
_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_CurrencyID.qbl | 7
_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_IsEligibleForNetting.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_DialogHistoricalSalesOrders/_ROOT_Component_DialogHistoricalSalesOrders.def | 42
_var/_Main/ProjSettings/MacroPlannerWebApp/Views/填产方案列表.vw | 11
_Main/BL/Type_PanelMaterialTM17/_ROOT_Type_PanelMaterialTM17.qbl | 10
_Main/BL/Type_HistoricalSalesOrder/DefaultValue_StockPointID.qbl | 6
_Main/UI/MacroPlannerWebApp/Component_FormWorkOrderType/Response_ListWorkOrderType_MenuCreate_OnClick.def | 18
_Main/BL/Type_HistoricalSalesOrder/Method_GetProductIdString.qbl | 26
_Main/BL/Type_FilllingCapacityOrderScheme/DefaultValue_BusinessType.qbl | 6
_Main/BL/Type_HistoricalFillingCapacityOrder/DefaultValue_OrderType.qbl | 6
_Main/BL/Type_PanelMaterialTM18/DefaultValue_ID.qbl | 6
_Main/UI/MacroPlannerWebApp/Component_DialogHistoricalSalesOrders/Method_Edit.def | 16
_Main/BL/Type_HistoricalSalesOrder/DefaultValue_CustomerID.qbl | 6
_Main/BL/Type_HistoricalSalesOrder/Attribute_SalesAmount.qbl | 7
_Main/BL/Type_FillingCapacityOrder/Attribute_StockingPointID.qbl | 7
_Main/BL/Type_CustomerAndForecastOrder/DefaultValue_OrderID.qbl | 6
_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_BusinessType.qbl | 7
_Main/Sys/Integration/Brokers/PanelMaterialResponseResult.xml | 0
_Main/BL/IntegratorConfigs/IntegratorConfig_PanelMaterialRestServer/ContentMapperProcessor_ContentMapperRequest.qbl | 8
_Main/BL/Type_PanelMaterialVehicle/Attribute_OrderDate.qbl | 7
_Main/BL/Type_PanelMaterialSportsHealth/Attribute_CustomerID.qbl | 7
_Main/BL/Type_PanelMaterialIT/DefaultValue_Customer.qbl | 6
_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_StockingPointID.qbl | 7
_Main/BL/Type_PanelMaterialTM18/Attribute_OrderID.qbl | 7
_Main/BL/Type_HistoricalSalesOrder/_ROOT_Type_HistoricalSalesOrder.qbl | 9
_var/_Main/ModelSettings/Common/Development/_ROOT_Role_Development.properties | 46
_Main/UI/MacroPlannerWebApp/Component_FormMaterialLabelingAndPlanningStrategy/Response_PanelMaterialExportAndImport_136_ButtonSynchronizeInventoryTargets_.def | 14
_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder802/Component_listContextMenuFillingSchemeDetail.def | 10
_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_OrderType.qbl | 7
_Main/BL/Type_HistoricalSalesOrder/StaticMethod_GetSalesSegmentString.qbl | 28
_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_IsExcludedFromFulfillmentKPIUser.qbl | 7
_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_ID.qbl | 6
_Main/BL/Type_PanelMaterialTianHua/DefaultValue_UnitOfMeasureName.qbl | 7
_Main/UI/MacroPlanner/Component_FormProducts/_ROOT_Component_FormProducts.def | 10
_Main/BL/Type_BusinessType/Method_UpdateData.qbl | 13
_Main/BL/IntegratorConfigs/IntegratorConfig_PanelMaterialRestServer/_ROOT_IntegratorConfig_PanelMaterialRestServer.qbl | 6
_Main/BL/Type_HistoricalSalesOrder/Attribute_PriorityName.qbl | 8
_Main/BL/Type_HistoricalSalesOrder/DefaultValue_IsAvailable.qbl | 7
_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_SalesSegmentName.qbl | 6
_Main/BL/Type_PanelMaterialVehicle/DefaultValue_IsEligibleForNetting.qbl | 7
_Main/BL/Type_PanelMaterialVehicle/Attribute_ID.qbl | 7
_Main/BL/Type_GlobalDTOTable/Method_ReceivingPanelMaterials.qbl | 92
_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_Quantity.qbl | 6
_Main/BL/Type_PanelMaterialTM17/DefaultValue_UnitOfMeasureName.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_DialogFillingCustomerAndForecast/Method_ClickBtnOk.def | 28
_Main/UI/MacroPlannerWebApp/Component_DialogHistoricalSalesOrders/Response_pnlActions_btnOk_OnClick.def | 15
_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_Quantity.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_DialogMaterialLabelingAndPlanningStrategy/Response_pnlGeneral_ddslMaterialPlanningPolicyChanges_OnCreated.def | 26
_Main/BL/Type_PanelMaterialAutomotiveElectronics/StaticMethod_ReceiveDataGeneration.qbl | 65
_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_ID.qbl | 6
_Main/BL/Type_PanelMaterialVehicle/DefaultValue_StockingPointID.qbl | 7
_Main/BL/Type_PanelMaterialTM18/DefaultValue_CurrencyID.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_FormWorkOrderType/Response_ListWorkOrderType_MenuSelectAll_OnClick.def | 17
_Main/BL/Type_PanelMaterialVehicle/DefaultValue_PriorityName.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_DialogFillingOrderScheme/Response_pnlActions_btnOk_OnClick.def | 21
_Main/BL/Relations/Relation_CustomerAndForecastOrder_MacroPlan_MacroPlan_CustomerAndForecastOrd.qbl | 23
_Main/BL/Type_HistoricalSalesOrder/Attribute_Quantity.qbl | 8
_Main/BL/Type_PanelMaterialTM17/Attribute_CustomerID.qbl | 7
_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_StockingPointID.qbl | 7
_Main/BL/Type_FillingCapacityOrder/Attribute_SchemeName.qbl | 7
_var/_Main/ModelSettings/Common/Dev-21/_ROOT_Role_Dev-21.properties | 532 +++
_Main/UI/MacroPlannerWebApp/Component_DialogFillingOrderScheme/Response_pnlActions_btnCancel_OnClick.def | 15
_Main/BL/Type_PanelMaterialIT/DefaultValue_CustomerID.qbl | 6
_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_CustomerID.qbl | 7
_Main/BL/Type_PanelMaterialTM17/DefaultValue_Price.qbl | 7
_Main/BL/Type_HistoricalSalesOrder/StaticMethod_GetHistoricalSalesOrders.qbl | 64
_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_Price.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Component_ListData.def | 59
_Main/BL/Type_FillingCapacityOrder/Attribute_OrderType.qbl | 7
_Main/BL/Type_PanelMaterialTianHua/Attribute_IsExcludedFromFulfillmentKPIUser.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditWorkOrderType/Component_pnlContent.def | 36
_Main/BL/Type_PanelMaterialTianHua/DefaultValue_IsFirmed.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityScheme/Response_ListCustomerAndFillingCapacityOrder_MenuFilling_OnClick.def | 20
_Main/BL/Type_PanelMaterialTianHua/Attribute_UnitOfMeasureName.qbl | 7
_Main/BL/Type_PanelMaterialSpecializedDisplay/_ROOT_Type_PanelMaterialSpecializedDisplay.qbl | 10
_Main/BL/Type_PanelMaterialSportsHealth/Attribute_SalesSegmentName.qbl | 7
_Main/BL/Type_PanelMaterialTM17/DefaultValue_IsExcludedFromFulfillmentKPIUser.qbl | 7
_Main/BL/Type_HistoricalSalesOrder/Attribute_CurrencyID.qbl | 8
_Main/BL/Type_HistoricalFillingCapacityOrder/DefaultValue_Customer.qbl | 6
_Main/BL/Type_HistoricalSalesOrder/Attribute_BusinessType.qbl | 8
_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_OrderLineID.qbl | 6
_Main/BL/Type_MacroPlan/Method_MappingOperationData.qbl | 19
_Main/BL/Type_FilllingCapacityOrderScheme/Attribute_SchemeDate.qbl | 7
_Main/BL/Relations/Relation_PanelMaterialTianHua_PanelMaterialAll_PanelMaterialAll_PanelMateria.qbl | 23
_Main/BL/Type_PanelMaterialTM17/Attribute_Quantity.qbl | 7
_Main/BL/Type_HistoricalFillingCapacityOrder/DefaultValue_ProductID.qbl | 6
_Main/BL/Type_HistoricalSalesOrder/DefaultValue_CurrencyID.qbl | 6
_Main/BL/Type_PanelMaterialTM18/DefaultValue_OrderLineID.qbl | 6
_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_StockingPointID.qbl | 7
_Main/BL/Type_PanelMaterialTianHua/DefaultValue_SalesSegmentName.qbl | 6
_Main/UI/MacroPlanner/Component_FormProducts/Response_TIANMA_JITUAN_ListProduct_MenuConvertToPanelMaterial_OnClick.def | 14
_Main/BL/Type_PanelMaterialIT/Attribute_IsEligibleForNetting.qbl | 7
_Main/BL/Relations/Relation_PanelMaterialAutomotiveElectronics_PanelMaterialAll_PanelMaterialAl.qbl | 23
_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_ProductID.qbl | 7
_Main/BL/Type_PanelMaterialTM17/DefaultValue_OrderLineID.qbl | 6
_Main/BL/Type_PanelMaterialTM18/_ROOT_Type_PanelMaterialTM18.qbl | 10
_Main/BL/Type_HistoricalFillingCapacityOrder/_ROOT_Type_HistoricalFillingCapacityOrder.qbl | 9
_Main/BL/Type_PanelMaterialTM17/StaticMethod_ReceiveDataGeneration.qbl | 65
_Main/BL/Type_PanelMaterialTM17/Attribute_IsExcludedFromFulfillmentKPIUser.qbl | 7
_Main/BL/Type_PanelMaterialTM17/Attribute_OrderDate.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_FormHistoricalFillingCapacityOrder/_ROOT_Component_FormHistoricalFillingCapacityOrder.def | 12
_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_ProductID.qbl | 7
_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_OrderID.qbl | 6
_Main/BL/Type_PanelMaterialVehicle/Attribute_Price.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditWorkOrderType/Response_pnlActions_btnOk_OnClick.def | 48
_Main/BL/Type_PanelMaterialTM17/Attribute_Price.qbl | 7
_Main/BL/Type_PanelMaterial/Attribute_MaterialDescription.qbl | 8
_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_Price.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_DialogFillingOrderScheme/Method_OpenScheme.def | 10
_Main/BL/IntegratorConfigs/IntegratorConfig_PanelMaterialRestServer/MessageEnhancerProcessor_MessageHeaderEnhancerProcessor.qbl | 25
_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/Response_pnlContent_ddslPanelModel_OnCreated.def | 22
_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_Price.qbl | 7
_Main/BL/Type_PanelMaterialIT/Attribute_OrderDate.qbl | 7
_Main/BL/Type_PanelMaterialTM17/Attribute_IsFirmed.qbl | 7
_Main/BL/Type_PanelMaterialTianHua/DefaultValue_Price.qbl | 7
_Main/BL/Relations/Relation_PanelMaterialAll_GlobalOTDTable_GlobalOTDTable_PanelMaterialAll.qbl | 23
_Main/BL/Type_PanelMaterialIT/DefaultValue_OrderID.qbl | 6
_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_ProductID.qbl | 6
_Main/BL/Type_PanelMaterialSportsHealth/Attribute_CurrencyID.qbl | 7
_Main/BL/Type_PanelMaterialSportsHealth/Attribute_IsEligibleForNetting.qbl | 7
_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_Quantity.qbl | 7
_Main/BL/Type_HistoricalSalesOrder/Attribute_VerNo.qbl | 7
_Main/BL/Type_FilllingCapacityOrderScheme/DefaultValue_SchemeName.qbl | 6
_Main/BL/Type_HistoricalSalesOrder/Attribute_OrderType.qbl | 8
_Main/BL/Type_PanelMaterialTianHua/DefaultValue_Quantity.qbl | 6
_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_PriorityName.qbl | 7
_Main/BL/Type_PanelMaterialTianHua/DefaultValue_OrderLineID.qbl | 6
_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_IsFirmed.qbl | 7
_Main/BL/Type_MatAttrSettingAndPlanStrategyDataTable/Method_VerificationData.qbl | 25
_Main/Sys/Integration/Mapping/PanelMaterialResponseResult.xml | 0
_Main/BL/Type_PanelMaterialSportsHealth/Attribute_Quantity.qbl | 7
_Main/BL/Type_PanelMaterialTM18/DefaultValue_CustomerID.qbl | 6
_Main/UI/MacroPlannerWebApp/Component_DialogHistoricalSalesOrders/Method_New.def | 15
_Main/BL/Relations/Relation_PanelMaterialSportsHealth_PanelMaterialAll_PanelMaterialAll_PanelMa.qbl | 23
_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder/Response_ListFillingCapacityOrder_MenuEdit_OnClick.def | 20
_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_StockingPointID.qbl | 7
_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_UnitOfMeasureName.qbl | 7
_Main/BL/Type_CustomerAndForecastOrder/Attribute_CustomerID.qbl | 7
_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_ID.qbl | 6
_Main/BL/Type_PanelMaterialSpecializedDisplay/StaticMethod_ReceiveDataGeneration.qbl | 65
_Main/BL/Type_PanelMaterialTM18/DefaultValue_UnitOfMeasureName.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_FormWorkOrderType/Response_ListWorkOrderType_MenuDelete_OnClick.def | 18
_Main/BL/Type_BusinessType/Method_DeleteData.qbl | 11
_Main/BL/Type_MacroPlan/Method_InitialUnitAndStockingPoint.qbl | 2
_Main/BL/Type_PanelMaterialTM18/StaticMethod_ReceiveDataGeneration.qbl | 65
_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_Price.qbl | 7
_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_Customer.qbl | 6
_Main/UI/MacroPlannerWebApp/Component_FormHistoricalSalesOrders/Component_ListHistoricalSalesOrders.def | 59
_Main/UI/MacroPlannerWebApp/Component_FormHistoricalFillingCapacityOrder/Component_listContextMenuHistoricalFillingCapacityOrder.def | 10
_Main/BL/Type_HistoricalSalesOrder/Attribute_ProductID.qbl | 8
_Main/BL/Type_PanelMaterialIT/StaticMethod_ReceiveDataGeneration.qbl | 65
_Main/BL/Type_CustomerAndForecastOrder/DefaultValue_CustomerID.qbl | 6
_Main/BL/Type_HistoricalSalesOrder/StaticMethod_GetProductIdString.qbl | 27
_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_ProductID.qbl | 6
_Main/UI/MacroPlannerWebApp/Component_DialogHistoricalSalesOrders/Component_pnlActions.def | 40
_Main/BL/Type_FillingCapacityOrder/Attribute_BusinessType.qbl | 7
_Main/BL/IntegratorConfigs/IntegratorConfig_PanelMaterialRestServer/ContentMapperProcessor_ContentMapperReponse#1.qbl | 9
_Main/BL/Type_HistoricalSalesOrder/Attribute_IsAvailable.qbl | 8
_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_ID.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityScheme/Component_ListCustomerAndFillingCapacityOrder.def | 59
_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Component_PanelFunctionButtons.def | 60
_Main/BL/Type_HistoricalSalesOrder/Attribute_CustomerID.qbl | 7
_Main/BL/Type_PanelMaterialTM18/DefaultValue_Quantity.qbl | 6
_Main/BL/Type_PanelMaterialVehicle/DefaultValue_UnitOfMeasureName.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/Method_New.def | 14
_Main/BL/Type_PanelMaterialTM17/DefaultValue_PriorityName.qbl | 7
_Main/BL/Type_PanelMaterialTM17/Attribute_CurrencyID.qbl | 7
_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_ProductID.qbl | 7
_Main/BL/Type_PanelMaterialSportsHealth/Attribute_OrderDate.qbl | 7
_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_PriorityName.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_DialogBusinessType/Component_pnlContent.def | 25
_Main/BL/Type_FilllingCapacityOrderScheme/Attribute_Customer.qbl | 7
_Main/BL/Type_HistoricalSalesOrder/Attribute_SalesSegmentName.qbl | 8
_Main/BL/Type_PanelMaterial/StaticMethod_Send.qbl | 37
_Main/UI/MacroPlannerWebApp/Component_DialogHistoricalSalesOrders/Response_pnlActions_btnCancel_OnClick.def | 15
613 files changed, 8,958 insertions(+), 104 deletions(-)
diff --git a/_Main/BL/ConfigTemplates.properties b/_Main/BL/ConfigTemplates.properties
index aeac723..5ff9151 100644
--- a/_Main/BL/ConfigTemplates.properties
+++ b/_Main/BL/ConfigTemplates.properties
@@ -115,7 +115,11 @@
domainmodel.historicaltransactioncontrol=template:domainmodel.historicaltransactioncontrol
domainmodel.httphandlergroupdefinition.quantus=template:domainmodel.httphandlergroupdefinition
domainmodel.integratorconfig.dsendpoint.q3dspace_3dsendpoint=template:domainmodel.integratorconfig.dsendpoint
+domainmodel.integratorconfig.quintiqendpoint.jtmbrestserver_quintiqendpoint=template:domainmodel.integratorconfig.quintiqendpoint
+domainmodel.integratorconfig.quintiqendpoint.panelmaterialrestserver_quintiqendpoint=template:domainmodel.integratorconfig.quintiqendpoint
domainmodel.integratorconfig.quintiqendpoint.q3dspace_quintiqendpoint=template:domainmodel.integratorconfig.quintiqendpoint
+domainmodel.integratorconfig.restendpoint.jtmbrestserver_restserver=template:domainmodel.integratorconfig.restendpoint
+domainmodel.integratorconfig.restendpoint.panelmaterialrestserver_restendpointpanelmaterial=template:domainmodel.integratorconfig.restendpoint
domainmodel.mdsstoragedefinitionmanager=template:domainmodel.mdsstoragedefinitionmanager
domainmodel.soapclientinterfacedefinition.interface.libdef_soapclients=template:domainmodel.soapclientinterfacedefinition
domainmodel.soapclientinterfacedefinition.interface.sopdsscclientinterfaces=template:domainmodel.soapclientinterfacedefinition
diff --git a/_Main/BL/EDI/Broker_Broker_OTD_Product.qbl b/_Main/BL/EDI/Broker_Broker_OTD_Product.qbl
index 3da4e20..15ca8ab 100644
--- a/_Main/BL/EDI/Broker_Broker_OTD_Product.qbl
+++ b/_Main/BL/EDI/Broker_Broker_OTD_Product.qbl
@@ -38,6 +38,7 @@
OthersMayFlushTable: true
OthersMayInsertRow: true
Parameters: '/owner="TIANMA"'
+ PrimaryKeyColumns: BUSINESSTYPE
PrimaryKeyColumns: ID
RecordModificationHintStrategy: 'None'
EDIODBCLinkColumn BUSINESSTYPE
diff --git "a/_Main/BL/IntegratorConfigs/IntegratorConfig_PanelMaterialRestServer/ContentMapperProcessor_ContentMapperReponse\0431.qbl" "b/_Main/BL/IntegratorConfigs/IntegratorConfig_PanelMaterialRestServer/ContentMapperProcessor_ContentMapperReponse\0431.qbl"
new file mode 100644
index 0000000..3692157
--- /dev/null
+++ "b/_Main/BL/IntegratorConfigs/IntegratorConfig_PanelMaterialRestServer/ContentMapperProcessor_ContentMapperReponse\0431.qbl"
@@ -0,0 +1,9 @@
+Quintiq file version 2.0
+#parent: #root
+ContentMapperProcessor ContentMapperReponse
+{
+ DefaultMappingName: 'PanelMaterialResponseResult'
+ PosX: 330
+ PosY: 450
+ ReplyChannelOutputs: QuintiqEndpoint
+}
diff --git a/_Main/BL/IntegratorConfigs/IntegratorConfig_PanelMaterialRestServer/ContentMapperProcessor_ContentMapperRequest.qbl b/_Main/BL/IntegratorConfigs/IntegratorConfig_PanelMaterialRestServer/ContentMapperProcessor_ContentMapperRequest.qbl
new file mode 100644
index 0000000..959d606
--- /dev/null
+++ b/_Main/BL/IntegratorConfigs/IntegratorConfig_PanelMaterialRestServer/ContentMapperProcessor_ContentMapperRequest.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+ContentMapperProcessor ContentMapperRequest
+{
+ PosX: 430
+ PosY: 200
+ RequestChannelInputs: QuintiqEndpoint
+}
diff --git a/_Main/BL/IntegratorConfigs/IntegratorConfig_PanelMaterialRestServer/MessageEnhancerProcessor_MessageHeaderEnhancerProcessor.qbl b/_Main/BL/IntegratorConfigs/IntegratorConfig_PanelMaterialRestServer/MessageEnhancerProcessor_MessageHeaderEnhancerProcessor.qbl
new file mode 100644
index 0000000..28845d0
--- /dev/null
+++ b/_Main/BL/IntegratorConfigs/IntegratorConfig_PanelMaterialRestServer/MessageEnhancerProcessor_MessageHeaderEnhancerProcessor.qbl
@@ -0,0 +1,25 @@
+Quintiq file version 2.0
+#parent: #root
+MessageEnhancerProcessor MessageHeaderEnhancerProcessor
+{
+ PosX: 205
+ PosY: 200
+ RequestChannelInputs: ContentMapperRequest
+ MessageEnhancerSet
+ {
+ Property: '_QI.IsRequest'
+ Type: 'String'
+ }
+ MessageEnhancerSet
+ {
+ Property: '_QI.Method'
+ Type: 'String'
+ Value: 'ReceivingPanelMaterials'
+ }
+ MessageEnhancerSet
+ {
+ Property: '_QI.Type'
+ Type: 'String'
+ Value: 'GlobalOTDTable'
+ }
+}
diff --git a/_Main/BL/IntegratorConfigs/IntegratorConfig_PanelMaterialRestServer/QuintiqEndpoint_QuintiqEndpoint.qbl b/_Main/BL/IntegratorConfigs/IntegratorConfig_PanelMaterialRestServer/QuintiqEndpoint_QuintiqEndpoint.qbl
new file mode 100644
index 0000000..3c79c51
--- /dev/null
+++ b/_Main/BL/IntegratorConfigs/IntegratorConfig_PanelMaterialRestServer/QuintiqEndpoint_QuintiqEndpoint.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+QuintiqEndpoint QuintiqEndpoint
+{
+ PosX: 605
+ PosY: 325
+ SettingsEngineLink: 'domainmodel.integratorconfig.quintiqendpoint.panelmaterialrestserver_quintiqendpoint'
+}
diff --git a/_Main/BL/IntegratorConfigs/IntegratorConfig_PanelMaterialRestServer/RestEndpoint_RestEndpointPanelMaterial.qbl b/_Main/BL/IntegratorConfigs/IntegratorConfig_PanelMaterialRestServer/RestEndpoint_RestEndpointPanelMaterial.qbl
new file mode 100644
index 0000000..de114e4
--- /dev/null
+++ b/_Main/BL/IntegratorConfigs/IntegratorConfig_PanelMaterialRestServer/RestEndpoint_RestEndpointPanelMaterial.qbl
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+#parent: #root
+RestEndpoint RestEndpointPanelMaterial
+{
+ PosX: 30
+ PosY: 325
+ ReplyChannelOutputs: ContentMapperReponse
+ RequestChannelInputs: MessageHeaderEnhancerProcessor
+ SettingsEngineLink: 'domainmodel.integratorconfig.restendpoint.panelmaterialrestserver_restendpointpanelmaterial'
+}
diff --git a/_Main/BL/IntegratorConfigs/IntegratorConfig_PanelMaterialRestServer/_ROOT_IntegratorConfig_PanelMaterialRestServer.qbl b/_Main/BL/IntegratorConfigs/IntegratorConfig_PanelMaterialRestServer/_ROOT_IntegratorConfig_PanelMaterialRestServer.qbl
new file mode 100644
index 0000000..b91eb27
--- /dev/null
+++ b/_Main/BL/IntegratorConfigs/IntegratorConfig_PanelMaterialRestServer/_ROOT_IntegratorConfig_PanelMaterialRestServer.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#root
+#parent: #root
+IntegratorConfig PanelMaterialRestServer
+{
+}
diff --git a/_Main/BL/Relations/Relation_BusinessType_GlobalOTDTable_GlobalOTDTable_BusinessType.qbl b/_Main/BL/Relations/Relation_BusinessType_GlobalOTDTable_GlobalOTDTable_BusinessType.qbl
new file mode 100644
index 0000000..be40076
--- /dev/null
+++ b/_Main/BL/Relations/Relation_BusinessType_GlobalOTDTable_GlobalOTDTable_BusinessType.qbl
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+#parent: #root
+Relation BusinessType_GlobalOTDTable_GlobalOTDTable_BusinessType
+{
+ #keys: '1[414382.0.362030054]'
+ DefaultRelationStrategy
+ {
+ }
+ RelationSide.LeftSide GlobalOTDTable
+ {
+ #keys: '3[414382.0.362030056][414382.0.362030055][414382.0.362030057]'
+ Cardinality: '0to1'
+ ObjectDefinition: BusinessType
+ OwningSide: 'Reference'
+ }
+ RelationSide.RightSide BusinessType
+ {
+ #keys: '3[414382.0.362030059][414382.0.362030058][414382.0.362030060]'
+ Cardinality: '1toN'
+ ObjectDefinition: GlobalOTDTable
+ OwningSide: 'Owned'
+ }
+}
diff --git a/_Main/BL/Relations/Relation_CustomerAndForecastOrder_MacroPlan_MacroPlan_CustomerAndForecastOrd.qbl b/_Main/BL/Relations/Relation_CustomerAndForecastOrder_MacroPlan_MacroPlan_CustomerAndForecastOrd.qbl
new file mode 100644
index 0000000..dc73c2b
--- /dev/null
+++ b/_Main/BL/Relations/Relation_CustomerAndForecastOrder_MacroPlan_MacroPlan_CustomerAndForecastOrd.qbl
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+#parent: #root
+Relation CustomerAndForecastOrder_MacroPlan_MacroPlan_CustomerAndForecastOrder
+{
+ #keys: '1[414382.0.412354687]'
+ DefaultRelationStrategy
+ {
+ }
+ RelationSide.LeftSide MacroPlan
+ {
+ #keys: '3[414382.0.412354689][414382.0.412354688][414382.0.412354690]'
+ Cardinality: '0to1'
+ ObjectDefinition: CustomerAndForecastOrder
+ OwningSide: 'Reference'
+ }
+ RelationSide.RightSide CustomerAndForecastOrder
+ {
+ #keys: '3[414382.0.412354692][414382.0.412354691][414382.0.412354693]'
+ Cardinality: '1toN'
+ ObjectDefinition: MacroPlan
+ OwningSide: 'Owned'
+ }
+}
diff --git a/_Main/BL/Relations/Relation_FillingCapacityOrder_MacroPlan_MacroPlan_FillingCapacityOrder.qbl b/_Main/BL/Relations/Relation_FillingCapacityOrder_MacroPlan_MacroPlan_FillingCapacityOrder.qbl
new file mode 100644
index 0000000..2b0f0bc
--- /dev/null
+++ b/_Main/BL/Relations/Relation_FillingCapacityOrder_MacroPlan_MacroPlan_FillingCapacityOrder.qbl
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+#parent: #root
+Relation FillingCapacityOrder_MacroPlan_MacroPlan_FillingCapacityOrder
+{
+ #keys: '1[414382.0.394820063]'
+ DefaultRelationStrategy
+ {
+ }
+ RelationSide.LeftSide MacroPlan
+ {
+ #keys: '3[414382.0.394820065][414382.0.394820064][414382.0.394820066]'
+ Cardinality: '0to1'
+ ObjectDefinition: FillingCapacityOrder
+ OwningSide: 'Reference'
+ }
+ RelationSide.RightSide FillingCapacityOrder
+ {
+ #keys: '3[414382.0.394820068][414382.0.394820067][414382.0.394820069]'
+ Cardinality: '1toN'
+ ObjectDefinition: MacroPlan
+ OwningSide: 'Owned'
+ }
+}
diff --git a/_Main/BL/Relations/Relation_FilllingCapacityOrderScheme_FillingCapacityOrder_FillingCapacityOrd.qbl b/_Main/BL/Relations/Relation_FilllingCapacityOrderScheme_FillingCapacityOrder_FillingCapacityOrd.qbl
new file mode 100644
index 0000000..037c40a
--- /dev/null
+++ b/_Main/BL/Relations/Relation_FilllingCapacityOrderScheme_FillingCapacityOrder_FillingCapacityOrd.qbl
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+#parent: #root
+Relation FilllingCapacityOrderScheme_FillingCapacityOrder_FillingCapacityOrder_FilllingCapacityOrderScheme
+{
+ #keys: '1[414382.0.424779922]'
+ DefaultRelationStrategy
+ {
+ }
+ RelationSide.LeftSide FillingCapacityOrder
+ {
+ #keys: '3[414382.0.424779924][414382.0.424779923][414382.0.424779925]'
+ Cardinality: '1toN'
+ ObjectDefinition: FilllingCapacityOrderScheme
+ OwningSide: 'Reference'
+ }
+ RelationSide.RightSide FilllingCapacityOrderScheme
+ {
+ #keys: '3[414382.0.424779927][414382.0.424779926][414382.0.424779928]'
+ Cardinality: '0to1'
+ ObjectDefinition: FillingCapacityOrder
+ OwningSide: 'Reference'
+ }
+}
diff --git a/_Main/BL/Relations/Relation_FilllingCapacityOrderScheme_MacroPlan_MacroPlan_FilllingCapacityOrd.qbl b/_Main/BL/Relations/Relation_FilllingCapacityOrderScheme_MacroPlan_MacroPlan_FilllingCapacityOrd.qbl
new file mode 100644
index 0000000..ed28adb
--- /dev/null
+++ b/_Main/BL/Relations/Relation_FilllingCapacityOrderScheme_MacroPlan_MacroPlan_FilllingCapacityOrd.qbl
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+#parent: #root
+Relation FilllingCapacityOrderScheme_MacroPlan_MacroPlan_FilllingCapacityOrderScheme
+{
+ #keys: '1[414382.0.424779906]'
+ DefaultRelationStrategy
+ {
+ }
+ RelationSide.LeftSide MacroPlan
+ {
+ #keys: '3[414382.0.424779908][414382.0.424779907][414382.0.424779909]'
+ Cardinality: '0to1'
+ ObjectDefinition: FilllingCapacityOrderScheme
+ OwningSide: 'Reference'
+ }
+ RelationSide.RightSide FilllingCapacityOrderScheme
+ {
+ #keys: '3[414382.0.424779911][414382.0.424779910][414382.0.424779912]'
+ Cardinality: '1toN'
+ ObjectDefinition: MacroPlan
+ OwningSide: 'Owned'
+ }
+}
diff --git a/_Main/BL/Relations/Relation_HistoricalFillingCapacityOrder_MacroPlan_MacroPlan_HistoricalFillin.qbl b/_Main/BL/Relations/Relation_HistoricalFillingCapacityOrder_MacroPlan_MacroPlan_HistoricalFillin.qbl
new file mode 100644
index 0000000..c894832
--- /dev/null
+++ b/_Main/BL/Relations/Relation_HistoricalFillingCapacityOrder_MacroPlan_MacroPlan_HistoricalFillin.qbl
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+#parent: #root
+Relation HistoricalFillingCapacityOrder_MacroPlan_MacroPlan_HistoricalFillingCapacityOrder
+{
+ #keys: '1[414382.0.440654894]'
+ DefaultRelationStrategy
+ {
+ }
+ RelationSide.LeftSide MacroPlan
+ {
+ #keys: '3[414382.0.440654896][414382.0.440654895][414382.0.440654897]'
+ Cardinality: '0to1'
+ ObjectDefinition: HistoricalFillingCapacityOrder
+ OwningSide: 'Reference'
+ }
+ RelationSide.RightSide HistoricalFillingCapacityOrder
+ {
+ #keys: '3[414382.0.440654899][414382.0.440654898][414382.0.440654900]'
+ Cardinality: '1toN'
+ ObjectDefinition: MacroPlan
+ OwningSide: 'Owned'
+ }
+}
diff --git a/_Main/BL/Relations/Relation_HistoricalSalesOrder_MacroPlan_MacroPlan_HistoricalSalesOrder.qbl b/_Main/BL/Relations/Relation_HistoricalSalesOrder_MacroPlan_MacroPlan_HistoricalSalesOrder.qbl
new file mode 100644
index 0000000..3a7a8c1
--- /dev/null
+++ b/_Main/BL/Relations/Relation_HistoricalSalesOrder_MacroPlan_MacroPlan_HistoricalSalesOrder.qbl
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+#parent: #root
+Relation HistoricalSalesOrder_MacroPlan_MacroPlan_HistoricalSalesOrder
+{
+ #keys: '1[414382.0.385610086]'
+ DefaultRelationStrategy
+ {
+ }
+ RelationSide.LeftSide MacroPlan
+ {
+ #keys: '3[414382.0.385610088][414382.0.385610087][414382.0.385610089]'
+ Cardinality: '0to1'
+ ObjectDefinition: HistoricalSalesOrder
+ OwningSide: 'Reference'
+ }
+ RelationSide.RightSide HistoricalSalesOrder
+ {
+ #keys: '3[414382.0.385610091][414382.0.385610090][414382.0.385610092]'
+ Cardinality: '1toN'
+ ObjectDefinition: MacroPlan
+ OwningSide: 'Owned'
+ }
+}
diff --git a/_Main/BL/Relations/Relation_PanelMaterialAll_GlobalOTDTable_GlobalOTDTable_PanelMaterialAll.qbl b/_Main/BL/Relations/Relation_PanelMaterialAll_GlobalOTDTable_GlobalOTDTable_PanelMaterialAll.qbl
new file mode 100644
index 0000000..f2cc83e
--- /dev/null
+++ b/_Main/BL/Relations/Relation_PanelMaterialAll_GlobalOTDTable_GlobalOTDTable_PanelMaterialAll.qbl
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+#parent: #root
+Relation PanelMaterialAll_GlobalOTDTable_GlobalOTDTable_PanelMaterialAll
+{
+ #keys: '1[414702.0.196798981]'
+ DefaultRelationStrategy
+ {
+ }
+ RelationSide.LeftSide GlobalOTDTable
+ {
+ #keys: '3[414702.0.196798983][414702.0.196798982][414702.0.196798984]'
+ Cardinality: '0to1'
+ ObjectDefinition: PanelMaterialAll
+ OwningSide: 'Reference'
+ }
+ RelationSide.RightSide PanelMaterialAll
+ {
+ #keys: '3[414702.0.196798986][414702.0.196798985][414702.0.196798987]'
+ Cardinality: '1toN'
+ ObjectDefinition: GlobalOTDTable
+ OwningSide: 'Owned'
+ }
+}
diff --git a/_Main/BL/Relations/Relation_PanelMaterialAutomotiveElectronics_PanelMaterialAll_PanelMaterialAl.qbl b/_Main/BL/Relations/Relation_PanelMaterialAutomotiveElectronics_PanelMaterialAll_PanelMaterialAl.qbl
new file mode 100644
index 0000000..dfdd092
--- /dev/null
+++ b/_Main/BL/Relations/Relation_PanelMaterialAutomotiveElectronics_PanelMaterialAll_PanelMaterialAl.qbl
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+#parent: #root
+Relation PanelMaterialAutomotiveElectronics_PanelMaterialAll_PanelMaterialAll_PanelMaterialAutomotiveElectronics
+{
+ #keys: '1[414702.0.203680165]'
+ DefaultRelationStrategy
+ {
+ }
+ RelationSide.LeftSide PanelMaterialAll
+ {
+ #keys: '3[414702.0.203680167][414702.0.203680166][414702.0.203680168]'
+ Cardinality: '0to1'
+ ObjectDefinition: PanelMaterialAutomotiveElectronics
+ OwningSide: 'Reference'
+ }
+ RelationSide.RightSide PanelMaterialAutomotiveElectronics
+ {
+ #keys: '3[414702.0.203680170][414702.0.203680169][414702.0.203680171]'
+ Cardinality: '1toN'
+ ObjectDefinition: PanelMaterialAll
+ OwningSide: 'Owned'
+ }
+}
diff --git a/_Main/BL/Relations/Relation_PanelMaterialIT_PanelMaterialAll_PanelMaterialAll_PanelMaterialIT.qbl b/_Main/BL/Relations/Relation_PanelMaterialIT_PanelMaterialAll_PanelMaterialAll_PanelMaterialIT.qbl
new file mode 100644
index 0000000..40a8aba
--- /dev/null
+++ b/_Main/BL/Relations/Relation_PanelMaterialIT_PanelMaterialAll_PanelMaterialAll_PanelMaterialIT.qbl
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+#parent: #root
+Relation PanelMaterialIT_PanelMaterialAll_PanelMaterialAll_PanelMaterialIT
+{
+ #keys: '1[414702.0.203680281]'
+ DefaultRelationStrategy
+ {
+ }
+ RelationSide.LeftSide PanelMaterialAll
+ {
+ #keys: '3[414702.0.203680283][414702.0.203680282][414702.0.203680284]'
+ Cardinality: '0to1'
+ ObjectDefinition: PanelMaterialIT
+ OwningSide: 'Reference'
+ }
+ RelationSide.RightSide PanelMaterialIT
+ {
+ #keys: '3[414702.0.203680286][414702.0.203680285][414702.0.203680287]'
+ Cardinality: '1toN'
+ ObjectDefinition: PanelMaterialAll
+ OwningSide: 'Owned'
+ }
+}
diff --git a/_Main/BL/Relations/Relation_PanelMaterialSpecializedDisplay_PanelMaterialAll_PanelMaterialAll_P.qbl b/_Main/BL/Relations/Relation_PanelMaterialSpecializedDisplay_PanelMaterialAll_PanelMaterialAll_P.qbl
new file mode 100644
index 0000000..630692f
--- /dev/null
+++ b/_Main/BL/Relations/Relation_PanelMaterialSpecializedDisplay_PanelMaterialAll_PanelMaterialAll_P.qbl
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+#parent: #root
+Relation PanelMaterialSpecializedDisplay_PanelMaterialAll_PanelMaterialAll_PanelMaterialSpecializedDisplay
+{
+ #keys: '1[414702.0.203671496]'
+ DefaultRelationStrategy
+ {
+ }
+ RelationSide.LeftSide PanelMaterialAll
+ {
+ #keys: '3[414702.0.203671498][414702.0.203671497][414702.0.203671499]'
+ Cardinality: '0to1'
+ ObjectDefinition: PanelMaterialSpecializedDisplay
+ OwningSide: 'Reference'
+ }
+ RelationSide.RightSide PanelMaterialSpecializedDisplay
+ {
+ #keys: '3[414702.0.203671501][414702.0.203671500][414702.0.203671502]'
+ Cardinality: '1toN'
+ ObjectDefinition: PanelMaterialAll
+ OwningSide: 'Owned'
+ }
+}
diff --git a/_Main/BL/Relations/Relation_PanelMaterialSportsHealth_PanelMaterialAll_PanelMaterialAll_PanelMa.qbl b/_Main/BL/Relations/Relation_PanelMaterialSportsHealth_PanelMaterialAll_PanelMaterialAll_PanelMa.qbl
new file mode 100644
index 0000000..08521bd
--- /dev/null
+++ b/_Main/BL/Relations/Relation_PanelMaterialSportsHealth_PanelMaterialAll_PanelMaterialAll_PanelMa.qbl
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+#parent: #root
+Relation PanelMaterialSportsHealth_PanelMaterialAll_PanelMaterialAll_PanelMaterialSportsHealth
+{
+ #keys: '1[414702.0.203680203]'
+ DefaultRelationStrategy
+ {
+ }
+ RelationSide.LeftSide PanelMaterialAll
+ {
+ #keys: '3[414702.0.203680205][414702.0.203680204][414702.0.203680206]'
+ Cardinality: '0to1'
+ ObjectDefinition: PanelMaterialSportsHealth
+ OwningSide: 'Reference'
+ }
+ RelationSide.RightSide PanelMaterialSportsHealth
+ {
+ #keys: '3[414702.0.203680208][414702.0.203680207][414702.0.203680209]'
+ Cardinality: '1toN'
+ ObjectDefinition: PanelMaterialAll
+ OwningSide: 'Owned'
+ }
+}
diff --git a/_Main/BL/Relations/Relation_PanelMaterialTM17_PanelMaterialAll_PanelMaterialAll_PanelMaterialTM.qbl b/_Main/BL/Relations/Relation_PanelMaterialTM17_PanelMaterialAll_PanelMaterialAll_PanelMaterialTM.qbl
new file mode 100644
index 0000000..611fa89
--- /dev/null
+++ b/_Main/BL/Relations/Relation_PanelMaterialTM17_PanelMaterialAll_PanelMaterialAll_PanelMaterialTM.qbl
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+#parent: #root
+Relation PanelMaterialTM17_PanelMaterialAll_PanelMaterialAll_PanelMaterialTM17
+{
+ #keys: '1[414702.0.203671572]'
+ DefaultRelationStrategy
+ {
+ }
+ RelationSide.LeftSide PanelMaterialAll
+ {
+ #keys: '3[414702.0.203671574][414702.0.203671573][414702.0.203671575]'
+ Cardinality: '0to1'
+ ObjectDefinition: PanelMaterialTM17
+ OwningSide: 'Reference'
+ }
+ RelationSide.RightSide PanelMaterialTM17
+ {
+ #keys: '3[414702.0.203671577][414702.0.203671576][414702.0.203671578]'
+ Cardinality: '1toN'
+ ObjectDefinition: PanelMaterialAll
+ OwningSide: 'Owned'
+ }
+}
diff --git a/_Main/BL/Relations/Relation_PanelMaterialTM18_PanelMaterialAll_PanelMaterialAll_PanelMaterialTM.qbl b/_Main/BL/Relations/Relation_PanelMaterialTM18_PanelMaterialAll_PanelMaterialAll_PanelMaterialTM.qbl
new file mode 100644
index 0000000..88f9dbc
--- /dev/null
+++ b/_Main/BL/Relations/Relation_PanelMaterialTM18_PanelMaterialAll_PanelMaterialAll_PanelMaterialTM.qbl
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+#parent: #root
+Relation PanelMaterialTM18_PanelMaterialAll_PanelMaterialAll_PanelMaterialTM18
+{
+ #keys: '1[414702.0.203680361]'
+ DefaultRelationStrategy
+ {
+ }
+ RelationSide.LeftSide PanelMaterialAll
+ {
+ #keys: '3[414702.0.203680363][414702.0.203680362][414702.0.203680364]'
+ Cardinality: '0to1'
+ ObjectDefinition: PanelMaterialTM18
+ OwningSide: 'Reference'
+ }
+ RelationSide.RightSide PanelMaterialTM18
+ {
+ #keys: '3[414702.0.203680366][414702.0.203680365][414702.0.203680367]'
+ Cardinality: '1toN'
+ ObjectDefinition: PanelMaterialAll
+ OwningSide: 'Owned'
+ }
+}
diff --git a/_Main/BL/Relations/Relation_PanelMaterialTianHua_PanelMaterialAll_PanelMaterialAll_PanelMateria.qbl b/_Main/BL/Relations/Relation_PanelMaterialTianHua_PanelMaterialAll_PanelMaterialAll_PanelMateria.qbl
new file mode 100644
index 0000000..cb988d9
--- /dev/null
+++ b/_Main/BL/Relations/Relation_PanelMaterialTianHua_PanelMaterialAll_PanelMaterialAll_PanelMateria.qbl
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+#parent: #root
+Relation PanelMaterialTianHua_PanelMaterialAll_PanelMaterialAll_PanelMaterialTianHua
+{
+ #keys: '1[414702.0.203671469]'
+ DefaultRelationStrategy
+ {
+ }
+ RelationSide.LeftSide PanelMaterialAll
+ {
+ #keys: '3[414702.0.203671471][414702.0.203671470][414702.0.203671472]'
+ Cardinality: '0to1'
+ ObjectDefinition: PanelMaterialTianHua
+ OwningSide: 'Reference'
+ }
+ RelationSide.RightSide PanelMaterialTianHua
+ {
+ #keys: '3[414702.0.203671474][414702.0.203671473][414702.0.203671475]'
+ Cardinality: '1toN'
+ ObjectDefinition: PanelMaterialAll
+ OwningSide: 'Owned'
+ }
+}
diff --git a/_Main/BL/Relations/Relation_PanelMaterialVehicle_PanelMaterialAll_PanelMaterialAll_PanelMateria.qbl b/_Main/BL/Relations/Relation_PanelMaterialVehicle_PanelMaterialAll_PanelMaterialAll_PanelMateria.qbl
new file mode 100644
index 0000000..97ca6e2
--- /dev/null
+++ b/_Main/BL/Relations/Relation_PanelMaterialVehicle_PanelMaterialAll_PanelMaterialAll_PanelMateria.qbl
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+#parent: #root
+Relation PanelMaterialVehicle_PanelMaterialAll_PanelMaterialAll_PanelMaterialVehicle
+{
+ #keys: '1[414702.0.196801391]'
+ DefaultRelationStrategy
+ {
+ }
+ RelationSide.LeftSide PanelMaterialAll
+ {
+ #keys: '3[414702.0.196801393][414702.0.196801392][414702.0.196801394]'
+ Cardinality: '0to1'
+ ObjectDefinition: PanelMaterialVehicle
+ OwningSide: 'Reference'
+ }
+ RelationSide.RightSide PanelMaterialVehicle
+ {
+ #keys: '3[414702.0.196801396][414702.0.196801395][414702.0.196801397]'
+ Cardinality: '1toN'
+ ObjectDefinition: PanelMaterialAll
+ OwningSide: 'Owned'
+ }
+}
diff --git a/_Main/BL/Relations/Relation_PanelMaterial_MacroPlan_MacroPlan_PanelMaterial.qbl b/_Main/BL/Relations/Relation_PanelMaterial_MacroPlan_MacroPlan_PanelMaterial.qbl
new file mode 100644
index 0000000..fd1e173
--- /dev/null
+++ b/_Main/BL/Relations/Relation_PanelMaterial_MacroPlan_MacroPlan_PanelMaterial.qbl
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+#parent: #root
+Relation PanelMaterial_MacroPlan_MacroPlan_PanelMaterial
+{
+ #keys: '1[414702.0.162969760]'
+ DefaultRelationStrategy
+ {
+ }
+ RelationSide.LeftSide MacroPlan
+ {
+ #keys: '3[414702.0.162969762][414702.0.162969761][414702.0.162969763]'
+ Cardinality: '0to1'
+ ObjectDefinition: PanelMaterial
+ OwningSide: 'Reference'
+ }
+ RelationSide.RightSide PanelMaterial
+ {
+ #keys: '3[414702.0.162969765][414702.0.162969764][414702.0.162969766]'
+ Cardinality: '1toN'
+ ObjectDefinition: MacroPlan
+ OwningSide: 'Owned'
+ }
+}
diff --git a/_Main/BL/Relations/Relation_WorkOrderType_GlobalOTDTable_GlobalOTDTable_WorkOrderType.qbl b/_Main/BL/Relations/Relation_WorkOrderType_GlobalOTDTable_GlobalOTDTable_WorkOrderType.qbl
new file mode 100644
index 0000000..2a94ff2
--- /dev/null
+++ b/_Main/BL/Relations/Relation_WorkOrderType_GlobalOTDTable_GlobalOTDTable_WorkOrderType.qbl
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+#parent: #root
+Relation WorkOrderType_GlobalOTDTable_GlobalOTDTable_WorkOrderType
+{
+ #keys: '1[414702.0.144781477]'
+ DefaultRelationStrategy
+ {
+ }
+ RelationSide.LeftSide GlobalOTDTable
+ {
+ #keys: '3[414702.0.144781479][414702.0.144781478][414702.0.144781480]'
+ Cardinality: '0to1'
+ ObjectDefinition: WorkOrderType
+ OwningSide: 'Reference'
+ }
+ RelationSide.RightSide WorkOrderType
+ {
+ #keys: '3[414702.0.144781482][414702.0.144781481][414702.0.144781483]'
+ Cardinality: '1toN'
+ ObjectDefinition: GlobalOTDTable
+ OwningSide: 'Owned'
+ }
+}
diff --git a/_Main/BL/Type_ActualProductInStockingPointInPeriod/StaticMethod_CreateOrUpdate.qbl b/_Main/BL/Type_ActualProductInStockingPointInPeriod/StaticMethod_CreateOrUpdate.qbl
index 0c2492f..95d364e 100644
--- a/_Main/BL/Type_ActualProductInStockingPointInPeriod/StaticMethod_CreateOrUpdate.qbl
+++ b/_Main/BL/Type_ActualProductInStockingPointInPeriod/StaticMethod_CreateOrUpdate.qbl
@@ -12,7 +12,7 @@
TextBody:
[*
// Administrator Sep-6-2023 (created)
- date := Date :: Today();
+ date := owner.StartOfPlanning().Date()-1;
actualpispip := ActualProductInStockingPointInPeriod::FindActualProductInStockingPointInPeriodTypeIndex( productid, stockingpointid, date, manufactureddate );
if( isnull( actualpispip ) ){
@@ -25,7 +25,7 @@
manufactureddate,
true);
}else{
- actualpispip.Update( actualinventorylevelend, description, true );
+ actualpispip.Update( actualinventorylevelend+actualpispip.ActualInventoryLevelEnd(), description, true );
}
*]
}
diff --git a/_Main/BL/Type_BusinessType/Attribute_BusinessTypeName.qbl b/_Main/BL/Type_BusinessType/Attribute_BusinessTypeName.qbl
new file mode 100644
index 0000000..f2fb6a3
--- /dev/null
+++ b/_Main/BL/Type_BusinessType/Attribute_BusinessTypeName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute BusinessTypeName
+{
+ #keys: '3[414382.0.361554811][414382.0.361554810][414382.0.361554812]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_BusinessType/Method_DeleteData.qbl b/_Main/BL/Type_BusinessType/Method_DeleteData.qbl
new file mode 100644
index 0000000..3bc2d98
--- /dev/null
+++ b/_Main/BL/Type_BusinessType/Method_DeleteData.qbl
@@ -0,0 +1,11 @@
+Quintiq file version 2.0
+#parent: #root
+Method DeleteData
+{
+ TextBody:
+ [*
+ // NBoTk Sep-7-2023 (created)
+
+ this.Delete();
+ *]
+}
diff --git a/_Main/BL/Type_BusinessType/Method_UpdateData.qbl b/_Main/BL/Type_BusinessType/Method_UpdateData.qbl
new file mode 100644
index 0000000..6a63c02
--- /dev/null
+++ b/_Main/BL/Type_BusinessType/Method_UpdateData.qbl
@@ -0,0 +1,13 @@
+Quintiq file version 2.0
+#parent: #root
+Method UpdateData (
+ String businessTypeName
+)
+{
+ TextBody:
+ [*
+ // NBoTk Sep-7-2023 (created)
+
+ this.BusinessTypeName(businessTypeName);
+ *]
+}
diff --git a/_Main/BL/Type_BusinessType/StaticMethod_CreateData.qbl b/_Main/BL/Type_BusinessType/StaticMethod_CreateData.qbl
new file mode 100644
index 0000000..0606111
--- /dev/null
+++ b/_Main/BL/Type_BusinessType/StaticMethod_CreateData.qbl
@@ -0,0 +1,25 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod CreateData (
+ GlobalOTDTable owner,
+ String businessName
+)
+{
+ TextBody:
+ [*
+ // NBoTk Sep-7-2023 (created)
+ // 鍒涘缓businessType
+
+ // 鍒ゆ柇鍚嶇О鏄惁瀛樺湪
+
+ checkExist := exists( owner,BusinessType,b,
+ true,
+ b.BusinessTypeName() = businessName
+ );
+
+ // 濡傛灉涓嶅瓨鍦ㄥ垯娣诲姞
+ if( not checkExist ){
+ owner.BusinessType(relnew,BusinessTypeName := businessName);
+ }
+ *]
+}
diff --git a/_Main/BL/Type_BusinessType/StaticMethod_GetBusinessNameStr.qbl b/_Main/BL/Type_BusinessType/StaticMethod_GetBusinessNameStr.qbl
new file mode 100644
index 0000000..02ecd32
--- /dev/null
+++ b/_Main/BL/Type_BusinessType/StaticMethod_GetBusinessNameStr.qbl
@@ -0,0 +1,28 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod GetBusinessNameStr (
+ GlobalOTDTable owner
+) as String
+{
+ TextBody:
+ [*
+ // NBoTk Sep-7-2023 (created)
+
+ // 鑾峰彇businessType 闆嗗悎
+ result := "";
+ businessTypeList := construct( structured[String]);
+
+ traverse( owner,BusinessType,b)
+ {
+ businessTypeList.Add( b.BusinessTypeName());
+ }
+
+ // 濡傛灉瀛樺湪businessType鏁版嵁 鍒欒繑鍥� : a,b,c
+
+ if( not isnull( businessTypeList ) )
+ {
+ result := businessTypeList.Concatenate( ";" );
+ }
+ return result;
+ *]
+}
diff --git a/_Main/BL/Type_BusinessType/_ROOT_Type_BusinessType.qbl b/_Main/BL/Type_BusinessType/_ROOT_Type_BusinessType.qbl
new file mode 100644
index 0000000..3074c70
--- /dev/null
+++ b/_Main/BL/Type_BusinessType/_ROOT_Type_BusinessType.qbl
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+#root
+#parent: #DomainModel
+Type BusinessType
+{
+ #keys: '5[414382.0.361591349][414382.0.361591347][0.0.0][414382.0.361591348][414382.0.361591350]'
+ BaseType: Object
+ Description: 'business type'
+ StructuredName: 'BusinessTypes'
+}
diff --git a/_Main/BL/Type_CustomerAndForecastOrder/Attribute_BusinessType.qbl b/_Main/BL/Type_CustomerAndForecastOrder/Attribute_BusinessType.qbl
new file mode 100644
index 0000000..40608d9
--- /dev/null
+++ b/_Main/BL/Type_CustomerAndForecastOrder/Attribute_BusinessType.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute BusinessType
+{
+ #keys: '3[414382.0.412354709][414382.0.412354708][414382.0.412354710]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_CustomerAndForecastOrder/Attribute_Customer.qbl b/_Main/BL/Type_CustomerAndForecastOrder/Attribute_Customer.qbl
new file mode 100644
index 0000000..b2e8166
--- /dev/null
+++ b/_Main/BL/Type_CustomerAndForecastOrder/Attribute_Customer.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Customer
+{
+ #keys: '3[414382.0.412354716][414382.0.412354715][414382.0.412354717]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_CustomerAndForecastOrder/Attribute_CustomerID.qbl b/_Main/BL/Type_CustomerAndForecastOrder/Attribute_CustomerID.qbl
new file mode 100644
index 0000000..23b41c4
--- /dev/null
+++ b/_Main/BL/Type_CustomerAndForecastOrder/Attribute_CustomerID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute CustomerID
+{
+ #keys: '3[414382.0.412354719][414382.0.412354718][414382.0.412354720]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_CustomerAndForecastOrder/Attribute_DemandDate.qbl b/_Main/BL/Type_CustomerAndForecastOrder/Attribute_DemandDate.qbl
new file mode 100644
index 0000000..17582b0
--- /dev/null
+++ b/_Main/BL/Type_CustomerAndForecastOrder/Attribute_DemandDate.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute DemandDate
+{
+ #keys: '3[414382.0.412354743][414382.0.412354742][414382.0.412354744]'
+ ValueType: Date
+}
diff --git a/_Main/BL/Type_CustomerAndForecastOrder/Attribute_ForecastDemandDate.qbl b/_Main/BL/Type_CustomerAndForecastOrder/Attribute_ForecastDemandDate.qbl
new file mode 100644
index 0000000..eeecbc3
--- /dev/null
+++ b/_Main/BL/Type_CustomerAndForecastOrder/Attribute_ForecastDemandDate.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ForecastDemandDate
+{
+ #keys: '3[414382.0.412354746][414382.0.412354745][414382.0.412354747]'
+ ValueType: Date
+}
diff --git a/_Main/BL/Type_CustomerAndForecastOrder/Attribute_OrderID.qbl b/_Main/BL/Type_CustomerAndForecastOrder/Attribute_OrderID.qbl
new file mode 100644
index 0000000..4cc6f85
--- /dev/null
+++ b/_Main/BL/Type_CustomerAndForecastOrder/Attribute_OrderID.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute OrderID
+{
+ #keys: '3[414382.0.412354701][414382.0.412354700][414382.0.412354702]'
+ Description: '璁㈠崟鍙�'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_CustomerAndForecastOrder/Attribute_PanelBigSheetQuantity.qbl b/_Main/BL/Type_CustomerAndForecastOrder/Attribute_PanelBigSheetQuantity.qbl
new file mode 100644
index 0000000..a18cc58
--- /dev/null
+++ b/_Main/BL/Type_CustomerAndForecastOrder/Attribute_PanelBigSheetQuantity.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute PanelBigSheetQuantity
+{
+ #keys: '3[414382.0.412354739][414382.0.412354738][414382.0.412354740]'
+ ValueType: Real
+}
diff --git a/_Main/BL/Type_CustomerAndForecastOrder/Attribute_ProductID.qbl b/_Main/BL/Type_CustomerAndForecastOrder/Attribute_ProductID.qbl
new file mode 100644
index 0000000..28586d6
--- /dev/null
+++ b/_Main/BL/Type_CustomerAndForecastOrder/Attribute_ProductID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ProductID
+{
+ #keys: '3[414382.0.412354712][414382.0.412354711][414382.0.412354713]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_CustomerAndForecastOrder/Attribute_Quantity.qbl b/_Main/BL/Type_CustomerAndForecastOrder/Attribute_Quantity.qbl
new file mode 100644
index 0000000..d6f3095
--- /dev/null
+++ b/_Main/BL/Type_CustomerAndForecastOrder/Attribute_Quantity.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Quantity
+{
+ #keys: '3[414382.0.412354736][414382.0.412354735][414382.0.412354737]'
+ ValueType: Real
+}
diff --git a/_Main/BL/Type_CustomerAndForecastOrder/Attribute_SalesAmount.qbl b/_Main/BL/Type_CustomerAndForecastOrder/Attribute_SalesAmount.qbl
new file mode 100644
index 0000000..8fcddce
--- /dev/null
+++ b/_Main/BL/Type_CustomerAndForecastOrder/Attribute_SalesAmount.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute SalesAmount
+{
+ #keys: '3[414382.0.412354749][414382.0.412354748][414382.0.412354750]'
+ ValueType: Number
+}
diff --git a/_Main/BL/Type_CustomerAndForecastOrder/Attribute_ServiceType.qbl b/_Main/BL/Type_CustomerAndForecastOrder/Attribute_ServiceType.qbl
new file mode 100644
index 0000000..5aa25d1
--- /dev/null
+++ b/_Main/BL/Type_CustomerAndForecastOrder/Attribute_ServiceType.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ServiceType
+{
+ #keys: '3[414382.0.412354723][414382.0.412354722][414382.0.412354724]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_CustomerAndForecastOrder/Attribute_UnitOfMeasureName.qbl b/_Main/BL/Type_CustomerAndForecastOrder/Attribute_UnitOfMeasureName.qbl
new file mode 100644
index 0000000..c7034c3
--- /dev/null
+++ b/_Main/BL/Type_CustomerAndForecastOrder/Attribute_UnitOfMeasureName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute UnitOfMeasureName
+{
+ #keys: '3[414382.0.412354733][414382.0.412354732][414382.0.412354734]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_CustomerAndForecastOrder/Attribute_VerNo.qbl b/_Main/BL/Type_CustomerAndForecastOrder/Attribute_VerNo.qbl
new file mode 100644
index 0000000..7baf45d
--- /dev/null
+++ b/_Main/BL/Type_CustomerAndForecastOrder/Attribute_VerNo.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute VerNo
+{
+ #keys: '3[414382.0.412354705][414382.0.412354704][414382.0.412354706]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_CustomerAndForecastOrder/DefaultValue_BusinessType.qbl b/_Main/BL/Type_CustomerAndForecastOrder/DefaultValue_BusinessType.qbl
new file mode 100644
index 0000000..1672b03
--- /dev/null
+++ b/_Main/BL/Type_CustomerAndForecastOrder/DefaultValue_BusinessType.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: BusinessType
+}
diff --git a/_Main/BL/Type_CustomerAndForecastOrder/DefaultValue_Customer.qbl b/_Main/BL/Type_CustomerAndForecastOrder/DefaultValue_Customer.qbl
new file mode 100644
index 0000000..e02a336
--- /dev/null
+++ b/_Main/BL/Type_CustomerAndForecastOrder/DefaultValue_Customer.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: Customer
+}
diff --git a/_Main/BL/Type_CustomerAndForecastOrder/DefaultValue_CustomerID.qbl b/_Main/BL/Type_CustomerAndForecastOrder/DefaultValue_CustomerID.qbl
new file mode 100644
index 0000000..66ae438
--- /dev/null
+++ b/_Main/BL/Type_CustomerAndForecastOrder/DefaultValue_CustomerID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: CustomerID
+}
diff --git a/_Main/BL/Type_CustomerAndForecastOrder/DefaultValue_OrderID.qbl b/_Main/BL/Type_CustomerAndForecastOrder/DefaultValue_OrderID.qbl
new file mode 100644
index 0000000..05c5cf1
--- /dev/null
+++ b/_Main/BL/Type_CustomerAndForecastOrder/DefaultValue_OrderID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: OrderID
+}
diff --git a/_Main/BL/Type_CustomerAndForecastOrder/DefaultValue_ProductID.qbl b/_Main/BL/Type_CustomerAndForecastOrder/DefaultValue_ProductID.qbl
new file mode 100644
index 0000000..98649b2
--- /dev/null
+++ b/_Main/BL/Type_CustomerAndForecastOrder/DefaultValue_ProductID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: ProductID
+}
diff --git a/_Main/BL/Type_CustomerAndForecastOrder/DefaultValue_UnitOfMeasureName.qbl b/_Main/BL/Type_CustomerAndForecastOrder/DefaultValue_UnitOfMeasureName.qbl
new file mode 100644
index 0000000..b2012de
--- /dev/null
+++ b/_Main/BL/Type_CustomerAndForecastOrder/DefaultValue_UnitOfMeasureName.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: UnitOfMeasureName
+}
diff --git a/_Main/BL/Type_CustomerAndForecastOrder/DefaultValue_VerNo.qbl b/_Main/BL/Type_CustomerAndForecastOrder/DefaultValue_VerNo.qbl
new file mode 100644
index 0000000..0edfadc
--- /dev/null
+++ b/_Main/BL/Type_CustomerAndForecastOrder/DefaultValue_VerNo.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: VerNo
+}
diff --git a/_Main/BL/Type_CustomerAndForecastOrder/StaticMethod_CreateFillingCapacityOrder.qbl b/_Main/BL/Type_CustomerAndForecastOrder/StaticMethod_CreateFillingCapacityOrder.qbl
new file mode 100644
index 0000000..720a7bb
--- /dev/null
+++ b/_Main/BL/Type_CustomerAndForecastOrder/StaticMethod_CreateFillingCapacityOrder.qbl
@@ -0,0 +1,17 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod CreateFillingCapacityOrder (
+ MacroPlan owner,
+ CustomerAndForecastOrder data
+)
+{
+ TextBody:
+ [*
+ // NBoTk Sep-13-2023 (created)
+
+ owner.FillingCapacityOrder(relnew,ProductID := data.ProductID(),BusinessType := data.BusinessType(),Customer := data.Customer(),CustomerID := data.CustomerID(),
+ Quantity := data.Quantity(),UnitOfMeasureName := data.UnitOfMeasureName(),PanelBigSheetQuantity := data.PanelBigSheetQuantity(),SalesAmount := data.SalesAmount(),
+ ForecastDemandDate := data.ForecastDemandDate(),DemandDate := data.DemandDate(),VerNo := data.VerNo()
+ );
+ *]
+}
diff --git a/_Main/BL/Type_CustomerAndForecastOrder/StaticMethod_CreateTestData.qbl b/_Main/BL/Type_CustomerAndForecastOrder/StaticMethod_CreateTestData.qbl
new file mode 100644
index 0000000..94354eb
--- /dev/null
+++ b/_Main/BL/Type_CustomerAndForecastOrder/StaticMethod_CreateTestData.qbl
@@ -0,0 +1,21 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod CreateTestData (
+ MacroPlan owner
+)
+{
+ TextBody:
+ [*
+ // NBoTk Sep-13-2023 (created)
+
+ stringdate := '20230901';
+ cnv2 := StringToDate::StandardConverter();
+ cnv2.SetCustomConversion();
+ cnv2.CustomFormatString( 'yyyyMMdd' );
+ date := cnv2.Convert( stringdate );
+
+ owner.CustomerAndForecastOrder(relnew,OrderID := "001",ProductID := "001",BusinessType := "浜嬩笟涓�閮�",Customer := "瀹㈡埛",CustomerID := "001",
+ Quantity := 100,UnitOfMeasureName := "PCS",PanelBigSheetQuantity := 200,SalesAmount := 1000,ForecastDemandDate := date,DemandDate := date
+ );
+ *]
+}
diff --git a/_Main/BL/Type_CustomerAndForecastOrder/_ROOT_Type_CustomerAndForecastOrder.qbl b/_Main/BL/Type_CustomerAndForecastOrder/_ROOT_Type_CustomerAndForecastOrder.qbl
new file mode 100644
index 0000000..1239f5b
--- /dev/null
+++ b/_Main/BL/Type_CustomerAndForecastOrder/_ROOT_Type_CustomerAndForecastOrder.qbl
@@ -0,0 +1,9 @@
+Quintiq file version 2.0
+#root
+#parent: #DomainModel
+Type CustomerAndForecastOrder
+{
+ #keys: '5[414382.0.412354684][414382.0.412354682][0.0.0][414382.0.412354683][414382.0.412354685]'
+ BaseType: Object
+ StructuredName: 'CustomerAndForecastOrders'
+}
diff --git a/_Main/BL/Type_CustomerOrder/StaticMethod_CreateOrUpdate.qbl b/_Main/BL/Type_CustomerOrder/StaticMethod_CreateOrUpdate.qbl
index d1d98d9..e885859 100644
--- a/_Main/BL/Type_CustomerOrder/StaticMethod_CreateOrUpdate.qbl
+++ b/_Main/BL/Type_CustomerOrder/StaticMethod_CreateOrUpdate.qbl
@@ -27,7 +27,7 @@
product := Product_MP::FindById( macroPlan, productId );
salesSegment := SalesSegment_MP::FindByName( macroPlan, salesSegmentName );
stockingPoint := StockingPoint_MP::FindById( macroPlan, stockingPointId );
- currency := Currency_MP::FindById( macroPlan, currencyId );
+ //currency := Currency_MP::FindById( macroPlan, currencyId );
unitOfMeasure := null( UnitOfMeasure_MP )
priority := null( Priority );
if( unitOfMeasureName <> "" ) {
@@ -38,32 +38,32 @@
}
// 妫�鏌ヤ緷璧栭」
if( isnull( product) ) {
- error( "product not found" );
+ info( "product not found" );
}
if( isnull( salesSegment) ) {
- error( "sales segment not found" );
+ info( "sales segment not found" );
}
if( isnull( stockingPoint) ) {
- error( "stock point not found" );
+ info( "stock point not found" );
}
- if( isnull( currency) ) {
- error( "currency not found" );
- }
+ //if( isnull( currency) ) {
+ // error( "currency not found" );
+ //}
if( unitOfMeasureName <> "" and isnull( unitOfMeasure) ) {
- error( "unit of measure not found" );
+ info( "unit of measure not found" );
}
if( priorityName <> "" and isnull( stockingPoint) ) {
- error( "priority not found" );
+ info( "priority not found" );
}
// 鏂板/鏇存柊
result := CustomerOrder::FindById( macroPlan, id );
if( isnull( result ) ) {
CustomerOrder::Create( product, stockingPoint, id, orderDate, quantity, price,
- priorityName, salesSegmentName, currency.Name(), unitOfMeasureName,
+ priorityName, salesSegmentName, currencyId, unitOfMeasureName,
false, customerName, customerId, orderId, orderLineId, true, true, true );
} else {
result.Update( product, stockingPoint, orderDate, quantity, price,
- priorityName, salesSegmentName, currency.Name(), unitOfMeasureName,
+ priorityName, salesSegmentName, currencyId, unitOfMeasureName,
false, customerName, customerId, orderId, orderLineId, true, true, true );
}
return result;
diff --git a/_Main/BL/Type_FillingCapacityOrder/Attribute_BusinessType.qbl b/_Main/BL/Type_FillingCapacityOrder/Attribute_BusinessType.qbl
new file mode 100644
index 0000000..20f4d01
--- /dev/null
+++ b/_Main/BL/Type_FillingCapacityOrder/Attribute_BusinessType.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute BusinessType
+{
+ #keys: '3[414382.0.394820097][414382.0.394820096][414382.0.394820098]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_FillingCapacityOrder/Attribute_Customer.qbl b/_Main/BL/Type_FillingCapacityOrder/Attribute_Customer.qbl
new file mode 100644
index 0000000..75ac73a
--- /dev/null
+++ b/_Main/BL/Type_FillingCapacityOrder/Attribute_Customer.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Customer
+{
+ #keys: '3[414382.0.394820200][414382.0.394820199][414382.0.394820201]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_FillingCapacityOrder/Attribute_CustomerID.qbl b/_Main/BL/Type_FillingCapacityOrder/Attribute_CustomerID.qbl
new file mode 100644
index 0000000..1809787
--- /dev/null
+++ b/_Main/BL/Type_FillingCapacityOrder/Attribute_CustomerID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute CustomerID
+{
+ #keys: '3[414382.0.394820210][414382.0.394820209][414382.0.394820211]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_FillingCapacityOrder/Attribute_DemandDate.qbl b/_Main/BL/Type_FillingCapacityOrder/Attribute_DemandDate.qbl
new file mode 100644
index 0000000..b347899
--- /dev/null
+++ b/_Main/BL/Type_FillingCapacityOrder/Attribute_DemandDate.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute DemandDate
+{
+ #keys: '3[414382.0.394820180][414382.0.394820179][414382.0.394820181]'
+ ValueType: Date
+}
diff --git a/_Main/BL/Type_FillingCapacityOrder/Attribute_ForecastDemandDate.qbl b/_Main/BL/Type_FillingCapacityOrder/Attribute_ForecastDemandDate.qbl
new file mode 100644
index 0000000..8bfc0f9
--- /dev/null
+++ b/_Main/BL/Type_FillingCapacityOrder/Attribute_ForecastDemandDate.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ForecastDemandDate
+{
+ #keys: '3[414382.0.394820170][414382.0.394820169][414382.0.394820171]'
+ ValueType: Date
+}
diff --git a/_Main/BL/Type_FillingCapacityOrder/Attribute_IsFilling.qbl b/_Main/BL/Type_FillingCapacityOrder/Attribute_IsFilling.qbl
new file mode 100644
index 0000000..71fc4b0
--- /dev/null
+++ b/_Main/BL/Type_FillingCapacityOrder/Attribute_IsFilling.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute IsFilling
+{
+ #keys: '3[414382.0.419264586][414382.0.419264585][414382.0.419264587]'
+ ValueType: Boolean
+}
diff --git a/_Main/BL/Type_FillingCapacityOrder/Attribute_OrderDate.qbl b/_Main/BL/Type_FillingCapacityOrder/Attribute_OrderDate.qbl
new file mode 100644
index 0000000..6f4e9b4
--- /dev/null
+++ b/_Main/BL/Type_FillingCapacityOrder/Attribute_OrderDate.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute OrderDate
+{
+ #keys: '3[414382.0.394815955][414382.0.394815954][414382.0.394815956]'
+ ValueType: Date
+}
diff --git a/_Main/BL/Type_FillingCapacityOrder/Attribute_OrderType.qbl b/_Main/BL/Type_FillingCapacityOrder/Attribute_OrderType.qbl
new file mode 100644
index 0000000..da22dcc
--- /dev/null
+++ b/_Main/BL/Type_FillingCapacityOrder/Attribute_OrderType.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute OrderType
+{
+ #keys: '3[414382.0.394820190][414382.0.394820189][414382.0.394820191]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_FillingCapacityOrder/Attribute_PanelBigSheetQuantity.qbl b/_Main/BL/Type_FillingCapacityOrder/Attribute_PanelBigSheetQuantity.qbl
new file mode 100644
index 0000000..107f871
--- /dev/null
+++ b/_Main/BL/Type_FillingCapacityOrder/Attribute_PanelBigSheetQuantity.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute PanelBigSheetQuantity
+{
+ #keys: '3[414382.0.394820150][414382.0.394820149][414382.0.394820151]'
+ ValueType: Real
+}
diff --git a/_Main/BL/Type_FillingCapacityOrder/Attribute_ProductID.qbl b/_Main/BL/Type_FillingCapacityOrder/Attribute_ProductID.qbl
new file mode 100644
index 0000000..e1d2f3e
--- /dev/null
+++ b/_Main/BL/Type_FillingCapacityOrder/Attribute_ProductID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ProductID
+{
+ #keys: '3[414382.0.394820087][414382.0.394820086][414382.0.394820088]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_FillingCapacityOrder/Attribute_Quantity.qbl b/_Main/BL/Type_FillingCapacityOrder/Attribute_Quantity.qbl
new file mode 100644
index 0000000..335de16
--- /dev/null
+++ b/_Main/BL/Type_FillingCapacityOrder/Attribute_Quantity.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Quantity
+{
+ #keys: '3[414382.0.394820127][414382.0.394820126][414382.0.394820128]'
+ ValueType: Real
+}
diff --git a/_Main/BL/Type_FillingCapacityOrder/Attribute_SalesAmount.qbl b/_Main/BL/Type_FillingCapacityOrder/Attribute_SalesAmount.qbl
new file mode 100644
index 0000000..246ad4b
--- /dev/null
+++ b/_Main/BL/Type_FillingCapacityOrder/Attribute_SalesAmount.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute SalesAmount
+{
+ #keys: '3[414382.0.394820160][414382.0.394820159][414382.0.394820161]'
+ ValueType: Number
+}
diff --git a/_Main/BL/Type_FillingCapacityOrder/Attribute_SalesSegmentName.qbl b/_Main/BL/Type_FillingCapacityOrder/Attribute_SalesSegmentName.qbl
new file mode 100644
index 0000000..b51495f
--- /dev/null
+++ b/_Main/BL/Type_FillingCapacityOrder/Attribute_SalesSegmentName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute SalesSegmentName
+{
+ #keys: '3[414382.0.394820107][414382.0.394820106][414382.0.394820108]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_FillingCapacityOrder/Attribute_SchemeName.qbl b/_Main/BL/Type_FillingCapacityOrder/Attribute_SchemeName.qbl
new file mode 100644
index 0000000..ff6d517
--- /dev/null
+++ b/_Main/BL/Type_FillingCapacityOrder/Attribute_SchemeName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute SchemeName
+{
+ #keys: '3[414382.0.424779892][414382.0.424779891][414382.0.424779893]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_FillingCapacityOrder/Attribute_StockingPointID.qbl b/_Main/BL/Type_FillingCapacityOrder/Attribute_StockingPointID.qbl
new file mode 100644
index 0000000..2e85dae
--- /dev/null
+++ b/_Main/BL/Type_FillingCapacityOrder/Attribute_StockingPointID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute StockingPointID
+{
+ #keys: '3[414382.0.394820117][414382.0.394820116][414382.0.394820118]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_FillingCapacityOrder/Attribute_UnitOfMeasureName.qbl b/_Main/BL/Type_FillingCapacityOrder/Attribute_UnitOfMeasureName.qbl
new file mode 100644
index 0000000..fc5f64b
--- /dev/null
+++ b/_Main/BL/Type_FillingCapacityOrder/Attribute_UnitOfMeasureName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute UnitOfMeasureName
+{
+ #keys: '3[414382.0.394820137][414382.0.394820136][414382.0.394820138]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_FillingCapacityOrder/Attribute_VerNo.qbl b/_Main/BL/Type_FillingCapacityOrder/Attribute_VerNo.qbl
new file mode 100644
index 0000000..be3aead
--- /dev/null
+++ b/_Main/BL/Type_FillingCapacityOrder/Attribute_VerNo.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute VerNo
+{
+ #keys: '3[414382.0.394820077][414382.0.394820076][414382.0.394820078]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_FillingCapacityOrder/DefaultValue_IsFilling.qbl b/_Main/BL/Type_FillingCapacityOrder/DefaultValue_IsFilling.qbl
new file mode 100644
index 0000000..aa634ef
--- /dev/null
+++ b/_Main/BL/Type_FillingCapacityOrder/DefaultValue_IsFilling.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'false'
+ TargetAttribute: IsFilling
+}
diff --git a/_Main/BL/Type_FillingCapacityOrder/_ROOT_Type_FillingCapacityOrder.qbl b/_Main/BL/Type_FillingCapacityOrder/_ROOT_Type_FillingCapacityOrder.qbl
new file mode 100644
index 0000000..4158fc2
--- /dev/null
+++ b/_Main/BL/Type_FillingCapacityOrder/_ROOT_Type_FillingCapacityOrder.qbl
@@ -0,0 +1,9 @@
+Quintiq file version 2.0
+#root
+#parent: #DomainModel
+Type FillingCapacityOrder
+{
+ #keys: '5[414382.0.394820060][414382.0.394820058][0.0.0][414382.0.394820059][414382.0.394820061]'
+ BaseType: Object
+ StructuredName: 'FillingCapacityOrders'
+}
diff --git a/_Main/BL/Type_FilllingCapacityOrderScheme/Attribute_BusinessType.qbl b/_Main/BL/Type_FilllingCapacityOrderScheme/Attribute_BusinessType.qbl
new file mode 100644
index 0000000..f3ff6a3
--- /dev/null
+++ b/_Main/BL/Type_FilllingCapacityOrderScheme/Attribute_BusinessType.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute BusinessType
+{
+ #keys: '3[414382.0.424779940][414382.0.424779939][414382.0.424779941]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_FilllingCapacityOrderScheme/Attribute_Customer.qbl b/_Main/BL/Type_FilllingCapacityOrderScheme/Attribute_Customer.qbl
new file mode 100644
index 0000000..a8ac1aa
--- /dev/null
+++ b/_Main/BL/Type_FilllingCapacityOrderScheme/Attribute_Customer.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Customer
+{
+ #keys: '3[414382.0.424779948][414382.0.424779947][414382.0.424779949]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_FilllingCapacityOrderScheme/Attribute_CustomerID.qbl b/_Main/BL/Type_FilllingCapacityOrderScheme/Attribute_CustomerID.qbl
new file mode 100644
index 0000000..75c43a9
--- /dev/null
+++ b/_Main/BL/Type_FilllingCapacityOrderScheme/Attribute_CustomerID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute CustomerID
+{
+ #keys: '3[414382.0.424779952][414382.0.424779951][414382.0.424779953]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_FilllingCapacityOrderScheme/Attribute_IsRelease.qbl b/_Main/BL/Type_FilllingCapacityOrderScheme/Attribute_IsRelease.qbl
new file mode 100644
index 0000000..37a6c75
--- /dev/null
+++ b/_Main/BL/Type_FilllingCapacityOrderScheme/Attribute_IsRelease.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute IsRelease
+{
+ #keys: '3[414382.0.428376803][414382.0.428376802][414382.0.428376804]'
+ ValueType: Boolean
+}
diff --git a/_Main/BL/Type_FilllingCapacityOrderScheme/Attribute_SalesSegmentName.qbl b/_Main/BL/Type_FilllingCapacityOrderScheme/Attribute_SalesSegmentName.qbl
new file mode 100644
index 0000000..0beee5a
--- /dev/null
+++ b/_Main/BL/Type_FilllingCapacityOrderScheme/Attribute_SalesSegmentName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute SalesSegmentName
+{
+ #keys: '3[414382.0.424779944][414382.0.424779943][414382.0.424779945]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_FilllingCapacityOrderScheme/Attribute_SchemeDate.qbl b/_Main/BL/Type_FilllingCapacityOrderScheme/Attribute_SchemeDate.qbl
new file mode 100644
index 0000000..f6d81ba
--- /dev/null
+++ b/_Main/BL/Type_FilllingCapacityOrderScheme/Attribute_SchemeDate.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute SchemeDate
+{
+ #keys: '3[414382.0.424779957][414382.0.424779956][414382.0.424779958]'
+ ValueType: Date
+}
diff --git a/_Main/BL/Type_FilllingCapacityOrderScheme/Attribute_SchemeName.qbl b/_Main/BL/Type_FilllingCapacityOrderScheme/Attribute_SchemeName.qbl
new file mode 100644
index 0000000..eae286a
--- /dev/null
+++ b/_Main/BL/Type_FilllingCapacityOrderScheme/Attribute_SchemeName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute SchemeName
+{
+ #keys: '3[414382.0.424779936][414382.0.424779935][414382.0.424779937]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_FilllingCapacityOrderScheme/DefaultValue_BusinessType.qbl b/_Main/BL/Type_FilllingCapacityOrderScheme/DefaultValue_BusinessType.qbl
new file mode 100644
index 0000000..1672b03
--- /dev/null
+++ b/_Main/BL/Type_FilllingCapacityOrderScheme/DefaultValue_BusinessType.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: BusinessType
+}
diff --git a/_Main/BL/Type_FilllingCapacityOrderScheme/DefaultValue_Customer.qbl b/_Main/BL/Type_FilllingCapacityOrderScheme/DefaultValue_Customer.qbl
new file mode 100644
index 0000000..e02a336
--- /dev/null
+++ b/_Main/BL/Type_FilllingCapacityOrderScheme/DefaultValue_Customer.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: Customer
+}
diff --git a/_Main/BL/Type_FilllingCapacityOrderScheme/DefaultValue_CustomerID.qbl b/_Main/BL/Type_FilllingCapacityOrderScheme/DefaultValue_CustomerID.qbl
new file mode 100644
index 0000000..66ae438
--- /dev/null
+++ b/_Main/BL/Type_FilllingCapacityOrderScheme/DefaultValue_CustomerID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: CustomerID
+}
diff --git a/_Main/BL/Type_FilllingCapacityOrderScheme/DefaultValue_SalesSegmentName.qbl b/_Main/BL/Type_FilllingCapacityOrderScheme/DefaultValue_SalesSegmentName.qbl
new file mode 100644
index 0000000..521966d
--- /dev/null
+++ b/_Main/BL/Type_FilllingCapacityOrderScheme/DefaultValue_SalesSegmentName.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: SalesSegmentName
+}
diff --git a/_Main/BL/Type_FilllingCapacityOrderScheme/DefaultValue_SchemeName.qbl b/_Main/BL/Type_FilllingCapacityOrderScheme/DefaultValue_SchemeName.qbl
new file mode 100644
index 0000000..d8220c4
--- /dev/null
+++ b/_Main/BL/Type_FilllingCapacityOrderScheme/DefaultValue_SchemeName.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: SchemeName
+}
diff --git a/_Main/BL/Type_FilllingCapacityOrderScheme/StaticMethod_CreateFillingCapacityOrderScheme.qbl b/_Main/BL/Type_FilllingCapacityOrderScheme/StaticMethod_CreateFillingCapacityOrderScheme.qbl
new file mode 100644
index 0000000..48ac995
--- /dev/null
+++ b/_Main/BL/Type_FilllingCapacityOrderScheme/StaticMethod_CreateFillingCapacityOrderScheme.qbl
@@ -0,0 +1,48 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod CreateFillingCapacityOrderScheme (
+ MacroPlan owner,
+ String schemeName
+)
+{
+ TextBody:
+ [*
+ // NBoTk Sep-14-2023 (created)
+
+ fillingCapacityOrders := selectset( owner,FillingCapacityOrder,fillingOrder,
+ not fillingOrder.IsFilling()
+ );
+
+ // customer
+ customerList := selectvalues( fillingCapacityOrders,Elements,e,
+ e.Customer());
+ customer := customerList.Concatenate( ",")
+
+ // customerID
+ customerIDList := selectvalues( fillingCapacityOrders,Elements,e,
+ e.CustomerID());
+ customerID := customerIDList.Concatenate( ",")
+
+ // businessType
+ businessTypeList := selectvalues( fillingCapacityOrders,Elements,e,
+ e.BusinessType());
+ businessType := businessTypeList.Concatenate( ",")
+
+ // salesSegmentName
+ salesSegmentNameList := selectvalues( fillingCapacityOrders,Elements,e,
+ e.SalesSegmentName());
+ salesSegmentName := salesSegmentNameList.Concatenate( ",")
+
+ schemeDate := Date::Today();
+
+ filllingCapacityOrderScheme := owner.FilllingCapacityOrderScheme(relnew,SchemeName := schemeName,SchemeDate := schemeDate,BusinessType := businessType,Customer := customer,CustomerID := customerID,
+ SalesSegmentName := salesSegmentName);
+
+ traverse( fillingCapacityOrders,Elements,e)
+ {
+ e.SchemeName(schemeName);
+ e.IsFilling(true);
+ filllingCapacityOrderScheme.FillingCapacityOrder(relinsert, e);
+ }
+ *]
+}
diff --git a/_Main/BL/Type_FilllingCapacityOrderScheme/StaticMethod_GetFillingSchemeDetails.qbl b/_Main/BL/Type_FilllingCapacityOrderScheme/StaticMethod_GetFillingSchemeDetails.qbl
new file mode 100644
index 0000000..f5de5fb
--- /dev/null
+++ b/_Main/BL/Type_FilllingCapacityOrderScheme/StaticMethod_GetFillingSchemeDetails.qbl
@@ -0,0 +1,16 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod GetFillingSchemeDetails (
+ MacroPlan owner,
+ String schemeName
+) as owning FillingCapacityOrders
+{
+ TextBody:
+ [*
+ // NBoTk Sep-14-2023 (created)
+
+
+ return selectset( owner,FillingCapacityOrder,order,
+ order.SchemeName() = schemeName);
+ *]
+}
diff --git a/_Main/BL/Type_FilllingCapacityOrderScheme/StaticMethod_ReleaseFillingScheme.qbl b/_Main/BL/Type_FilllingCapacityOrderScheme/StaticMethod_ReleaseFillingScheme.qbl
new file mode 100644
index 0000000..1cb3797
--- /dev/null
+++ b/_Main/BL/Type_FilllingCapacityOrderScheme/StaticMethod_ReleaseFillingScheme.qbl
@@ -0,0 +1,22 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod ReleaseFillingScheme (
+ MacroPlan owner,
+ FilllingCapacityOrderScheme scheme
+)
+{
+ TextBody:
+ [*
+ // NBoTk Sep-14-2023 (created)
+
+ traverse( scheme,FillingCapacityOrder,order)
+ {
+ owner.HistoricalFillingCapacityOrder(relnew,BusinessType := order.BusinessType(),Customer := order.Customer(),CustomerID := order.CustomerID(),
+ OrderDate := order.OrderDate(),OrderID := "",OrderType := "",
+ ProductID := order.ProductID(),Quantity := order.Quantity(),SalesAmount := order.SalesAmount(),
+ StockingPointID := order.StockingPointID(),UnitOfMeasureName := order.UnitOfMeasureName(),
+ VerNo := order.VerNo()
+ );
+ }
+ *]
+}
diff --git a/_Main/BL/Type_FilllingCapacityOrderScheme/_ROOT_Type_FilllingCapacityOrderScheme.qbl b/_Main/BL/Type_FilllingCapacityOrderScheme/_ROOT_Type_FilllingCapacityOrderScheme.qbl
new file mode 100644
index 0000000..f6cd8ba
--- /dev/null
+++ b/_Main/BL/Type_FilllingCapacityOrderScheme/_ROOT_Type_FilllingCapacityOrderScheme.qbl
@@ -0,0 +1,9 @@
+Quintiq file version 2.0
+#root
+#parent: #DomainModel
+Type FilllingCapacityOrderScheme
+{
+ #keys: '5[414382.0.424779903][414382.0.424779901][0.0.0][414382.0.424779902][414382.0.424779904]'
+ BaseType: Object
+ StructuredName: 'FilllingCapacityOrderSchemes'
+}
diff --git a/_Main/BL/Type_Forecast/StaticMethod_CreateOrUpdate.qbl b/_Main/BL/Type_Forecast/StaticMethod_CreateOrUpdate.qbl
index 3c09ae6..a5c8eb8 100644
--- a/_Main/BL/Type_Forecast/StaticMethod_CreateOrUpdate.qbl
+++ b/_Main/BL/Type_Forecast/StaticMethod_CreateOrUpdate.qbl
@@ -55,7 +55,7 @@
if( isnull( result) ) {
result := Forecast::Create( product, stockingPoint, id,
startDate, endDate, quantity, price,
- priorityName, salesSegmentName, guard( currency.Name(), "" ), unitOfMeasureName,
+ priorityName, salesSegmentName, currencyId, unitOfMeasureName,
0.0, false, true );
} else {
result.Update( product, stockingPoint,
diff --git a/_Main/BL/Type_GlobalDTOTable/Method_ReceivingPanelMaterials.qbl b/_Main/BL/Type_GlobalDTOTable/Method_ReceivingPanelMaterials.qbl
new file mode 100644
index 0000000..7a92a12
--- /dev/null
+++ b/_Main/BL/Type_GlobalDTOTable/Method_ReceivingPanelMaterials.qbl
@@ -0,0 +1,92 @@
+Quintiq file version 2.0
+#parent: #root
+Method ReceivingPanelMaterials (
+ NamedValueTree requestnvt
+) as stream[NamedValueTree]
+{
+ TextBody:
+ [*
+ logfile( "--------------------------------------1------------------------------------------------" );
+ nameValue := requestnvt.Root();
+
+ bodyHandle := requestnvt.GetHandle( "Body" );
+ restHandle := requestnvt.GetHandle( "Rest" );
+ restPayloadHandle := requestnvt.GetHandle( "RestPayload" );
+
+ bodyNameValue := nameValue.Child( bodyHandle );
+ restNameValue := bodyNameValue.Child( restHandle );
+ restPayloadNameValue := restNameValue.Child( restPayloadHandle );
+
+ businessTypeHandle := requestnvt.GetHandle( "businessType" );
+ businessTypeNameValue := restPayloadNameValue.Child( businessTypeHandle );
+
+ businessType := businessTypeNameValue.GetValueAsString();
+
+ if ( businessType = "杞﹁浇" ) {
+ PanelMaterialVehicle::ReceiveDataGeneration( this, requestnvt );
+ } else if ( businessType = "姹借溅鐢靛瓙" ) {
+ PanelMaterialAutomotiveElectronics::ReceiveDataGeneration( this, requestnvt );
+ } else if ( businessType = "澶╁崕" ) {
+ PanelMaterialTianHua::ReceiveDataGeneration( this, requestnvt );
+ } else if ( businessType = "杩愬姩鍋ュ悍" ) {
+ PanelMaterialSportsHealth::ReceiveDataGeneration( this, requestnvt );
+ } else if ( businessType = "涓撴樉" ) {
+ PanelMaterialSpecializedDisplay::ReceiveDataGeneration( this, requestnvt );
+ } else if ( businessType = "IT" ) {
+ PanelMaterialIT::ReceiveDataGeneration( this, requestnvt );
+ } else if ( businessType = "TM17" ) {
+ PanelMaterialTM17::ReceiveDataGeneration( this, requestnvt );
+ } else if ( businessType = "TM18" ) {
+ PanelMaterialTM18::ReceiveDataGeneration( this, requestnvt );
+ }
+
+
+ info( "---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------" );
+
+
+ replynvt := LibInt_MessageAccessor::CreateEmptyMessage();
+ LibInt_MessageAccessor::SetHeaderProperty( replynvt, "Content-Type", "application/json" );
+
+ rootNamedValue := replynvt.Root();
+ bodyHandle := replynvt.GetHandle( "Body" );
+ petHandle := replynvt.GetHandle( "Pet" );
+ bodyNamedValue := rootNamedValue.Child( bodyHandle );
+ petNamedValue := bodyNamedValue.AddChild( petHandle );
+ categoryHandle := replynvt.GetHandle( "Category" );
+ categoryNamedValue := petNamedValue.AddChild( categoryHandle );
+ categoryIDHandle := replynvt.GetHandle( "Id" );
+ categoryIDNamedValue := categoryNamedValue.AddChild( categoryIDHandle );
+ categoryIDNamedValue.SetValue( 3 );
+ categoryNameHandle := replynvt.GetHandle( "Name" );
+ categoryNameNamedValue := categoryNamedValue.AddChild( categoryNameHandle );
+ categoryNameNamedValue.SetValue( "Cat" );
+ petNameHandle := replynvt.GetHandle( "Name" );
+ petNameValue := petNamedValue.AddChild( petNameHandle );
+ petNameValue.SetValue( "Pet1" );
+ petIdHandle := replynvt.GetHandle( "PetId" );
+ petIdNameValue := petNamedValue.AddChild( petIdHandle );
+ petIdNameValue.SetValue( 1 );
+
+ photoUrlHandle := replynvt.GetHandle( "PhotoUrl" );
+ photoUrlNameValue := petNamedValue.AddChild( photoUrlHandle );
+ urlHandle := replynvt.GetHandle( "Url" );
+ photoUrlNameValue.AddChild( urlHandle, "url1" );
+
+ statusHandle := replynvt.GetHandle( "Status" );
+ statusNameValue := petNamedValue.AddChild( statusHandle );
+ statusNameValue.SetValue( "available" );
+
+ tagHandle := replynvt.GetHandle( "Tag" );
+ tagNameValue := petNamedValue.AddChild( tagHandle );
+ tagIdHandle := replynvt.GetHandle( "Id" );
+ tagNameValue.AddChild( tagIdHandle, 123 );
+ tagNameHandle := replynvt.GetHandle( "Name" );
+ tagNameValue.AddChild( tagNameHandle, "tag1" );
+
+
+ info( replynvt.ToString() );
+
+
+ return emit( replynvt );
+ *]
+}
diff --git a/_Main/BL/Type_GlobalDTOTable/Method_RefreshPanelMaterialData.qbl b/_Main/BL/Type_GlobalDTOTable/Method_RefreshPanelMaterialData.qbl
new file mode 100644
index 0000000..6c98026
--- /dev/null
+++ b/_Main/BL/Type_GlobalDTOTable/Method_RefreshPanelMaterialData.qbl
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+#parent: #root
+Method RefreshPanelMaterialData (
+ MacroPlan macroPlan
+)
+{
+ TextBody:
+ [*
+ traverse ( macroPlan, Unit.Operation.PeriodTaskOperation, pto, true ) {
+ traverse ( pto, DependentDemand, dd, true ) {
+ product_MP := dd.ProductInStockingPointInPeriodPlanningLeaf().ProductInStockingPoint_MP().Product_MP();
+ if ( product_MP.IsPanelMaterial() ) {
+ macroPlan.PanelMaterial( relnew,
+ PanelModel := product_MP.ID(),
+ MaterialDescription := product_MP.ID(),
+ StartDate := dd.Start().Date(),
+ DemandQuantity := dd.Quantity()
+ );
+ }
+ }
+ }
+ *]
+}
diff --git a/_Main/BL/Type_GlobalDTOTable/StaticMethod_ReceivingPanelMaterials.qbl b/_Main/BL/Type_GlobalDTOTable/StaticMethod_ReceivingPanelMaterials.qbl
new file mode 100644
index 0000000..ad3eacc
--- /dev/null
+++ b/_Main/BL/Type_GlobalDTOTable/StaticMethod_ReceivingPanelMaterials.qbl
@@ -0,0 +1,13 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod ReceivingPanelMaterials (
+ NamedValueTree requestnvt
+) as stream[NamedValueTree]
+{
+ TextBody:
+ [*
+ MDSGlobalOTDTable::Find( DatasetFindOptions::Construct("GlobalOTDTable")) -> ( c ) {
+ return c.ReceivingPanelMaterials( requestnvt );
+ }
+ *]
+}
diff --git a/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_BusinessType.qbl b/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_BusinessType.qbl
new file mode 100644
index 0000000..b115460
--- /dev/null
+++ b/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_BusinessType.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute BusinessType
+{
+ #keys: '3[414382.0.440654932][414382.0.440654931][414382.0.440654933]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_Customer.qbl b/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_Customer.qbl
new file mode 100644
index 0000000..93c7c88
--- /dev/null
+++ b/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_Customer.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Customer
+{
+ #keys: '3[414382.0.440654949][414382.0.440654948][414382.0.440654950]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_CustomerID.qbl b/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_CustomerID.qbl
new file mode 100644
index 0000000..d19bfe9
--- /dev/null
+++ b/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_CustomerID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute CustomerID
+{
+ #keys: '3[414382.0.440654952][414382.0.440654951][414382.0.440654953]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_FillingType.qbl b/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_FillingType.qbl
new file mode 100644
index 0000000..ed1f80b
--- /dev/null
+++ b/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_FillingType.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute FillingType
+{
+ #keys: '3[414382.0.440654936][414382.0.440654935][414382.0.440654937]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_ForecastDemandDate.qbl b/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_ForecastDemandDate.qbl
new file mode 100644
index 0000000..af79bdf
--- /dev/null
+++ b/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_ForecastDemandDate.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ForecastDemandDate
+{
+ #keys: '3[414382.0.440654980][414382.0.440654979][414382.0.440654981]'
+ ValueType: Date
+}
diff --git a/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_OrderDate.qbl b/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_OrderDate.qbl
new file mode 100644
index 0000000..f308319
--- /dev/null
+++ b/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_OrderDate.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute OrderDate
+{
+ #keys: '3[414382.0.440654925][414382.0.440654924][414382.0.440654926]'
+ ValueType: Date
+}
diff --git a/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_OrderID.qbl b/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_OrderID.qbl
new file mode 100644
index 0000000..d60f646
--- /dev/null
+++ b/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_OrderID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute OrderID
+{
+ #keys: '3[414382.0.440654912][414382.0.440654911][414382.0.440654913]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_OrderType.qbl b/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_OrderType.qbl
new file mode 100644
index 0000000..96c9741
--- /dev/null
+++ b/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_OrderType.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute OrderType
+{
+ #keys: '3[414382.0.440654922][414382.0.440654921][414382.0.440654923]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_ProductID.qbl b/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_ProductID.qbl
new file mode 100644
index 0000000..924a48b
--- /dev/null
+++ b/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_ProductID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ProductID
+{
+ #keys: '3[414382.0.440654928][414382.0.440654927][414382.0.440654929]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_ProductID0.qbl b/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_ProductID0.qbl
new file mode 100644
index 0000000..a2af94e
--- /dev/null
+++ b/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_ProductID0.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ProductID0
+{
+ #keys: '3[414382.0.440654946][414382.0.440654945][414382.0.440654947]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_ProfitabilityLevel.qbl b/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_ProfitabilityLevel.qbl
new file mode 100644
index 0000000..ce076d7
--- /dev/null
+++ b/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_ProfitabilityLevel.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ProfitabilityLevel
+{
+ #keys: '3[414382.0.440654985][414382.0.440654984][414382.0.440654986]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_Quantity.qbl b/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_Quantity.qbl
new file mode 100644
index 0000000..bcb4ab9
--- /dev/null
+++ b/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_Quantity.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Quantity
+{
+ #keys: '3[414382.0.440654966][414382.0.440654965][414382.0.440654967]'
+ ValueType: Real
+}
diff --git a/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_RewindsQuantityToReduced.qbl b/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_RewindsQuantityToReduced.qbl
new file mode 100644
index 0000000..80f06ab
--- /dev/null
+++ b/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_RewindsQuantityToReduced.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute RewindsQuantityToReduced
+{
+ #keys: '3[414382.0.440654956][414382.0.440654955][414382.0.440654957]'
+ ValueType: Real
+}
diff --git a/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_SalesAmount.qbl b/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_SalesAmount.qbl
new file mode 100644
index 0000000..1b25f3d
--- /dev/null
+++ b/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_SalesAmount.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute SalesAmount
+{
+ #keys: '3[414382.0.440654976][414382.0.440654975][414382.0.440654977]'
+ ValueType: Number
+}
diff --git a/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_StockingPointID.qbl b/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_StockingPointID.qbl
new file mode 100644
index 0000000..b5cbcb8
--- /dev/null
+++ b/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_StockingPointID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute StockingPointID
+{
+ #keys: '3[414382.0.440730114][414382.0.440730113][414382.0.440730115]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_UnitOfMeasureName.qbl b/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_UnitOfMeasureName.qbl
new file mode 100644
index 0000000..568e244
--- /dev/null
+++ b/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_UnitOfMeasureName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute UnitOfMeasureName
+{
+ #keys: '3[414382.0.440654973][414382.0.440654972][414382.0.440654974]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_VerNo.qbl b/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_VerNo.qbl
new file mode 100644
index 0000000..a951c14
--- /dev/null
+++ b/_Main/BL/Type_HistoricalFillingCapacityOrder/Attribute_VerNo.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute VerNo
+{
+ #keys: '3[414382.0.440654908][414382.0.440654907][414382.0.440654909]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_HistoricalFillingCapacityOrder/DefaultValue_BusinessType.qbl b/_Main/BL/Type_HistoricalFillingCapacityOrder/DefaultValue_BusinessType.qbl
new file mode 100644
index 0000000..1672b03
--- /dev/null
+++ b/_Main/BL/Type_HistoricalFillingCapacityOrder/DefaultValue_BusinessType.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: BusinessType
+}
diff --git a/_Main/BL/Type_HistoricalFillingCapacityOrder/DefaultValue_Customer.qbl b/_Main/BL/Type_HistoricalFillingCapacityOrder/DefaultValue_Customer.qbl
new file mode 100644
index 0000000..e02a336
--- /dev/null
+++ b/_Main/BL/Type_HistoricalFillingCapacityOrder/DefaultValue_Customer.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: Customer
+}
diff --git a/_Main/BL/Type_HistoricalFillingCapacityOrder/DefaultValue_CustomerID.qbl b/_Main/BL/Type_HistoricalFillingCapacityOrder/DefaultValue_CustomerID.qbl
new file mode 100644
index 0000000..66ae438
--- /dev/null
+++ b/_Main/BL/Type_HistoricalFillingCapacityOrder/DefaultValue_CustomerID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: CustomerID
+}
diff --git a/_Main/BL/Type_HistoricalFillingCapacityOrder/DefaultValue_OrderType.qbl b/_Main/BL/Type_HistoricalFillingCapacityOrder/DefaultValue_OrderType.qbl
new file mode 100644
index 0000000..36871b8
--- /dev/null
+++ b/_Main/BL/Type_HistoricalFillingCapacityOrder/DefaultValue_OrderType.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: OrderType
+}
diff --git a/_Main/BL/Type_HistoricalFillingCapacityOrder/DefaultValue_ProductID.qbl b/_Main/BL/Type_HistoricalFillingCapacityOrder/DefaultValue_ProductID.qbl
new file mode 100644
index 0000000..98649b2
--- /dev/null
+++ b/_Main/BL/Type_HistoricalFillingCapacityOrder/DefaultValue_ProductID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: ProductID
+}
diff --git a/_Main/BL/Type_HistoricalFillingCapacityOrder/DefaultValue_ProductID0.qbl b/_Main/BL/Type_HistoricalFillingCapacityOrder/DefaultValue_ProductID0.qbl
new file mode 100644
index 0000000..fcdd0b0
--- /dev/null
+++ b/_Main/BL/Type_HistoricalFillingCapacityOrder/DefaultValue_ProductID0.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: ProductID0
+}
diff --git a/_Main/BL/Type_HistoricalFillingCapacityOrder/DefaultValue_StockingPointID.qbl b/_Main/BL/Type_HistoricalFillingCapacityOrder/DefaultValue_StockingPointID.qbl
new file mode 100644
index 0000000..fbb83fc
--- /dev/null
+++ b/_Main/BL/Type_HistoricalFillingCapacityOrder/DefaultValue_StockingPointID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: StockingPointID
+}
diff --git a/_Main/BL/Type_HistoricalFillingCapacityOrder/DefaultValue_UnitOfMeasureName.qbl b/_Main/BL/Type_HistoricalFillingCapacityOrder/DefaultValue_UnitOfMeasureName.qbl
new file mode 100644
index 0000000..b2012de
--- /dev/null
+++ b/_Main/BL/Type_HistoricalFillingCapacityOrder/DefaultValue_UnitOfMeasureName.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: UnitOfMeasureName
+}
diff --git a/_Main/BL/Type_HistoricalFillingCapacityOrder/DefaultValue_VerNo.qbl b/_Main/BL/Type_HistoricalFillingCapacityOrder/DefaultValue_VerNo.qbl
new file mode 100644
index 0000000..0edfadc
--- /dev/null
+++ b/_Main/BL/Type_HistoricalFillingCapacityOrder/DefaultValue_VerNo.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: VerNo
+}
diff --git a/_Main/BL/Type_HistoricalFillingCapacityOrder/_ROOT_Type_HistoricalFillingCapacityOrder.qbl b/_Main/BL/Type_HistoricalFillingCapacityOrder/_ROOT_Type_HistoricalFillingCapacityOrder.qbl
new file mode 100644
index 0000000..23855ad
--- /dev/null
+++ b/_Main/BL/Type_HistoricalFillingCapacityOrder/_ROOT_Type_HistoricalFillingCapacityOrder.qbl
@@ -0,0 +1,9 @@
+Quintiq file version 2.0
+#root
+#parent: #DomainModel
+Type HistoricalFillingCapacityOrder
+{
+ #keys: '5[414382.0.440654891][414382.0.440654889][0.0.0][414382.0.440654890][414382.0.440654892]'
+ BaseType: Object
+ StructuredName: 'HistoricalFillingCapacityOrders'
+}
diff --git a/_Main/BL/Type_HistoricalSalesOrder/Attribute_BusinessType.qbl b/_Main/BL/Type_HistoricalSalesOrder/Attribute_BusinessType.qbl
new file mode 100644
index 0000000..c91ccf2
--- /dev/null
+++ b/_Main/BL/Type_HistoricalSalesOrder/Attribute_BusinessType.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute BusinessType
+{
+ #keys: '3[414382.0.385610070][414382.0.385610069][414382.0.385610071]'
+ Description: '浜嬩笟閮�'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_HistoricalSalesOrder/Attribute_CurrencyID.qbl b/_Main/BL/Type_HistoricalSalesOrder/Attribute_CurrencyID.qbl
new file mode 100644
index 0000000..6e3ea82
--- /dev/null
+++ b/_Main/BL/Type_HistoricalSalesOrder/Attribute_CurrencyID.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute CurrencyID
+{
+ #keys: '3[414382.0.385610058][414382.0.385610057][414382.0.385610059]'
+ Description: '璐у竵'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_HistoricalSalesOrder/Attribute_Customer.qbl b/_Main/BL/Type_HistoricalSalesOrder/Attribute_Customer.qbl
new file mode 100644
index 0000000..de33204
--- /dev/null
+++ b/_Main/BL/Type_HistoricalSalesOrder/Attribute_Customer.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Customer
+{
+ #keys: '3[414382.0.385610043][414382.0.385610042][414382.0.385610044]'
+ Description: '瀹㈡埛鍚嶇О'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_HistoricalSalesOrder/Attribute_CustomerID.qbl b/_Main/BL/Type_HistoricalSalesOrder/Attribute_CustomerID.qbl
new file mode 100644
index 0000000..5236115
--- /dev/null
+++ b/_Main/BL/Type_HistoricalSalesOrder/Attribute_CustomerID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute CustomerID
+{
+ #keys: '3[414382.0.385610052][414382.0.385610051][414382.0.385610053]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_HistoricalSalesOrder/Attribute_ID.qbl b/_Main/BL/Type_HistoricalSalesOrder/Attribute_ID.qbl
new file mode 100644
index 0000000..ab18ec7
--- /dev/null
+++ b/_Main/BL/Type_HistoricalSalesOrder/Attribute_ID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ID
+{
+ #keys: '3[414382.0.385610061][414382.0.385610060][414382.0.385610062]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_HistoricalSalesOrder/Attribute_IsAvailable.qbl b/_Main/BL/Type_HistoricalSalesOrder/Attribute_IsAvailable.qbl
new file mode 100644
index 0000000..7b79b6c
--- /dev/null
+++ b/_Main/BL/Type_HistoricalSalesOrder/Attribute_IsAvailable.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute IsAvailable
+{
+ #keys: '3[414382.0.385610046][414382.0.385610045][414382.0.385610047]'
+ Description: '璁㈠崟鏄惁鍙備笌璁″垝'
+ ValueType: Boolean
+}
diff --git a/_Main/BL/Type_HistoricalSalesOrder/Attribute_OrderDate.qbl b/_Main/BL/Type_HistoricalSalesOrder/Attribute_OrderDate.qbl
new file mode 100644
index 0000000..c8eca1a
--- /dev/null
+++ b/_Main/BL/Type_HistoricalSalesOrder/Attribute_OrderDate.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute OrderDate
+{
+ #keys: '3[414382.0.385610082][414382.0.385610081][414382.0.385610083]'
+ ValueType: Date
+}
diff --git a/_Main/BL/Type_HistoricalSalesOrder/Attribute_OrderID.qbl b/_Main/BL/Type_HistoricalSalesOrder/Attribute_OrderID.qbl
new file mode 100644
index 0000000..993c964
--- /dev/null
+++ b/_Main/BL/Type_HistoricalSalesOrder/Attribute_OrderID.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute OrderID
+{
+ #keys: '3[414382.0.385610049][414382.0.385610048][414382.0.385610050]'
+ Description: '璁㈠崟鍙�'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_HistoricalSalesOrder/Attribute_OrderLineID.qbl b/_Main/BL/Type_HistoricalSalesOrder/Attribute_OrderLineID.qbl
new file mode 100644
index 0000000..33b2a30
--- /dev/null
+++ b/_Main/BL/Type_HistoricalSalesOrder/Attribute_OrderLineID.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute OrderLineID
+{
+ #keys: '3[414382.0.385610040][414382.0.385610039][414382.0.385610041]'
+ Description: '璁㈠崟琛屽彿'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_HistoricalSalesOrder/Attribute_OrderType.qbl b/_Main/BL/Type_HistoricalSalesOrder/Attribute_OrderType.qbl
new file mode 100644
index 0000000..f539ba0
--- /dev/null
+++ b/_Main/BL/Type_HistoricalSalesOrder/Attribute_OrderType.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute OrderType
+{
+ #keys: '3[414382.0.385610034][414382.0.385610033][414382.0.385610035]'
+ Description: '璁㈠崟绫诲瀷'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_HistoricalSalesOrder/Attribute_Price.qbl b/_Main/BL/Type_HistoricalSalesOrder/Attribute_Price.qbl
new file mode 100644
index 0000000..50d7084
--- /dev/null
+++ b/_Main/BL/Type_HistoricalSalesOrder/Attribute_Price.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Price
+{
+ #keys: '3[414382.0.385610055][414382.0.385610054][414382.0.385610056]'
+ Description: '鍗曚环'
+ ValueType: Real
+}
diff --git a/_Main/BL/Type_HistoricalSalesOrder/Attribute_PriorityName.qbl b/_Main/BL/Type_HistoricalSalesOrder/Attribute_PriorityName.qbl
new file mode 100644
index 0000000..38db16d
--- /dev/null
+++ b/_Main/BL/Type_HistoricalSalesOrder/Attribute_PriorityName.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute PriorityName
+{
+ #keys: '3[414382.0.385610079][414382.0.385610078][414382.0.385610080]'
+ Description: '浼樺厛绾�'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_HistoricalSalesOrder/Attribute_ProductID.qbl b/_Main/BL/Type_HistoricalSalesOrder/Attribute_ProductID.qbl
new file mode 100644
index 0000000..018fc15
--- /dev/null
+++ b/_Main/BL/Type_HistoricalSalesOrder/Attribute_ProductID.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ProductID
+{
+ #keys: '3[414382.0.385610067][414382.0.385610066][414382.0.385610068]'
+ Description: '浜у搧缂栫爜'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_HistoricalSalesOrder/Attribute_Quantity.qbl b/_Main/BL/Type_HistoricalSalesOrder/Attribute_Quantity.qbl
new file mode 100644
index 0000000..06b7d7d
--- /dev/null
+++ b/_Main/BL/Type_HistoricalSalesOrder/Attribute_Quantity.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Quantity
+{
+ #keys: '3[414382.0.385610076][414382.0.385610075][414382.0.385610077]'
+ Description: '鏁伴噺'
+ ValueType: Real
+}
diff --git a/_Main/BL/Type_HistoricalSalesOrder/Attribute_SalesAmount.qbl b/_Main/BL/Type_HistoricalSalesOrder/Attribute_SalesAmount.qbl
new file mode 100644
index 0000000..b5fe9ed
--- /dev/null
+++ b/_Main/BL/Type_HistoricalSalesOrder/Attribute_SalesAmount.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute SalesAmount
+{
+ #keys: '3[414382.0.394810026][414382.0.394810025][414382.0.394810027]'
+ ValueType: Number
+}
diff --git a/_Main/BL/Type_HistoricalSalesOrder/Attribute_SalesSegmentName.qbl b/_Main/BL/Type_HistoricalSalesOrder/Attribute_SalesSegmentName.qbl
new file mode 100644
index 0000000..5c59143
--- /dev/null
+++ b/_Main/BL/Type_HistoricalSalesOrder/Attribute_SalesSegmentName.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute SalesSegmentName
+{
+ #keys: '3[414382.0.385610064][414382.0.385610063][414382.0.385610065]'
+ Description: '閿�鍞儴闂ㄥ悕绉�'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_HistoricalSalesOrder/Attribute_StockPointID.qbl b/_Main/BL/Type_HistoricalSalesOrder/Attribute_StockPointID.qbl
new file mode 100644
index 0000000..ae7cbb1
--- /dev/null
+++ b/_Main/BL/Type_HistoricalSalesOrder/Attribute_StockPointID.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute StockPointID
+{
+ #keys: '3[414382.0.385610073][414382.0.385610072][414382.0.385610074]'
+ Description: '搴撳瓨鐐瑰敮涓�鏍囪瘑'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_HistoricalSalesOrder/Attribute_UnitOfMeasureName.qbl b/_Main/BL/Type_HistoricalSalesOrder/Attribute_UnitOfMeasureName.qbl
new file mode 100644
index 0000000..d6b4ecf
--- /dev/null
+++ b/_Main/BL/Type_HistoricalSalesOrder/Attribute_UnitOfMeasureName.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute UnitOfMeasureName
+{
+ #keys: '3[414382.0.385610037][414382.0.385610036][414382.0.385610038]'
+ Description: '鍗曚綅'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_HistoricalSalesOrder/Attribute_VerNo.qbl b/_Main/BL/Type_HistoricalSalesOrder/Attribute_VerNo.qbl
new file mode 100644
index 0000000..fdb397d
--- /dev/null
+++ b/_Main/BL/Type_HistoricalSalesOrder/Attribute_VerNo.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute VerNo
+{
+ #keys: '3[414382.0.385610106][414382.0.385610105][414382.0.385610107]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_HistoricalSalesOrder/DefaultValue_BusinessType.qbl b/_Main/BL/Type_HistoricalSalesOrder/DefaultValue_BusinessType.qbl
new file mode 100644
index 0000000..1672b03
--- /dev/null
+++ b/_Main/BL/Type_HistoricalSalesOrder/DefaultValue_BusinessType.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: BusinessType
+}
diff --git a/_Main/BL/Type_HistoricalSalesOrder/DefaultValue_CurrencyID.qbl b/_Main/BL/Type_HistoricalSalesOrder/DefaultValue_CurrencyID.qbl
new file mode 100644
index 0000000..cae9679
--- /dev/null
+++ b/_Main/BL/Type_HistoricalSalesOrder/DefaultValue_CurrencyID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: CurrencyID
+}
diff --git a/_Main/BL/Type_HistoricalSalesOrder/DefaultValue_Customer.qbl b/_Main/BL/Type_HistoricalSalesOrder/DefaultValue_Customer.qbl
new file mode 100644
index 0000000..e02a336
--- /dev/null
+++ b/_Main/BL/Type_HistoricalSalesOrder/DefaultValue_Customer.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: Customer
+}
diff --git a/_Main/BL/Type_HistoricalSalesOrder/DefaultValue_CustomerID.qbl b/_Main/BL/Type_HistoricalSalesOrder/DefaultValue_CustomerID.qbl
new file mode 100644
index 0000000..66ae438
--- /dev/null
+++ b/_Main/BL/Type_HistoricalSalesOrder/DefaultValue_CustomerID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: CustomerID
+}
diff --git a/_Main/BL/Type_HistoricalSalesOrder/DefaultValue_IsAvailable.qbl b/_Main/BL/Type_HistoricalSalesOrder/DefaultValue_IsAvailable.qbl
new file mode 100644
index 0000000..efaa00d
--- /dev/null
+++ b/_Main/BL/Type_HistoricalSalesOrder/DefaultValue_IsAvailable.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'true'
+ TargetAttribute: IsAvailable
+}
diff --git a/_Main/BL/Type_HistoricalSalesOrder/DefaultValue_OrderID.qbl b/_Main/BL/Type_HistoricalSalesOrder/DefaultValue_OrderID.qbl
new file mode 100644
index 0000000..05c5cf1
--- /dev/null
+++ b/_Main/BL/Type_HistoricalSalesOrder/DefaultValue_OrderID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: OrderID
+}
diff --git a/_Main/BL/Type_HistoricalSalesOrder/DefaultValue_OrderLineID.qbl b/_Main/BL/Type_HistoricalSalesOrder/DefaultValue_OrderLineID.qbl
new file mode 100644
index 0000000..01ff2bf
--- /dev/null
+++ b/_Main/BL/Type_HistoricalSalesOrder/DefaultValue_OrderLineID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: OrderLineID
+}
diff --git a/_Main/BL/Type_HistoricalSalesOrder/DefaultValue_OrderType.qbl b/_Main/BL/Type_HistoricalSalesOrder/DefaultValue_OrderType.qbl
new file mode 100644
index 0000000..36871b8
--- /dev/null
+++ b/_Main/BL/Type_HistoricalSalesOrder/DefaultValue_OrderType.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: OrderType
+}
diff --git a/_Main/BL/Type_HistoricalSalesOrder/DefaultValue_PriorityName.qbl b/_Main/BL/Type_HistoricalSalesOrder/DefaultValue_PriorityName.qbl
new file mode 100644
index 0000000..59ad087
--- /dev/null
+++ b/_Main/BL/Type_HistoricalSalesOrder/DefaultValue_PriorityName.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: PriorityName
+}
diff --git a/_Main/BL/Type_HistoricalSalesOrder/DefaultValue_ProductID.qbl b/_Main/BL/Type_HistoricalSalesOrder/DefaultValue_ProductID.qbl
new file mode 100644
index 0000000..98649b2
--- /dev/null
+++ b/_Main/BL/Type_HistoricalSalesOrder/DefaultValue_ProductID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: ProductID
+}
diff --git a/_Main/BL/Type_HistoricalSalesOrder/DefaultValue_SalesSegmentName.qbl b/_Main/BL/Type_HistoricalSalesOrder/DefaultValue_SalesSegmentName.qbl
new file mode 100644
index 0000000..521966d
--- /dev/null
+++ b/_Main/BL/Type_HistoricalSalesOrder/DefaultValue_SalesSegmentName.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: SalesSegmentName
+}
diff --git a/_Main/BL/Type_HistoricalSalesOrder/DefaultValue_StockPointID.qbl b/_Main/BL/Type_HistoricalSalesOrder/DefaultValue_StockPointID.qbl
new file mode 100644
index 0000000..7c0c612
--- /dev/null
+++ b/_Main/BL/Type_HistoricalSalesOrder/DefaultValue_StockPointID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: StockPointID
+}
diff --git a/_Main/BL/Type_HistoricalSalesOrder/Method_GetProductIdString.qbl b/_Main/BL/Type_HistoricalSalesOrder/Method_GetProductIdString.qbl
new file mode 100644
index 0000000..25fd342
--- /dev/null
+++ b/_Main/BL/Type_HistoricalSalesOrder/Method_GetProductIdString.qbl
@@ -0,0 +1,26 @@
+Quintiq file version 2.0
+#parent: #root
+Method GetProductIdString (
+ MacroPlan owner,
+ String businessType
+) as String
+{
+ TextBody:
+ [*
+ // NBoTk Sep-13-2023 (created)
+
+ productIDs := selectuniquevalues( owner,MappingProduct,product,
+ product.BusinessType() = businessType,
+ product.ID()
+ );
+
+ value := "TC067FYMM05-00;B26700040";
+
+ if( not isnull( productIDs) )
+ {
+ value := productIDs.Concatenate( ";");
+ }
+
+ return value;
+ *]
+}
diff --git a/_Main/BL/Type_HistoricalSalesOrder/StaticMethod_GetCustomerID.qbl b/_Main/BL/Type_HistoricalSalesOrder/StaticMethod_GetCustomerID.qbl
new file mode 100644
index 0000000..d7d5927
--- /dev/null
+++ b/_Main/BL/Type_HistoricalSalesOrder/StaticMethod_GetCustomerID.qbl
@@ -0,0 +1,19 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod GetCustomerID (
+ MacroPlan owner,
+ String customer
+) as String
+{
+ TextBody:
+ [*
+ // NBoTk Sep-13-2023 (created)
+
+
+ cunstomer := select( owner,MappingCustomerOrder,order,
+ order.Customer() = customer
+ );
+
+ return cunstomer.CustomerID();
+ *]
+}
diff --git a/_Main/BL/Type_HistoricalSalesOrder/StaticMethod_GetCustomerString.qbl b/_Main/BL/Type_HistoricalSalesOrder/StaticMethod_GetCustomerString.qbl
new file mode 100644
index 0000000..c039119
--- /dev/null
+++ b/_Main/BL/Type_HistoricalSalesOrder/StaticMethod_GetCustomerString.qbl
@@ -0,0 +1,28 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod GetCustomerString (
+ MacroPlan owner,
+ String businessType
+) as String
+{
+ TextBody:
+ [*
+ // NBoTk Sep-13-2023 (created)
+
+ customers := selectuniquevalues( owner,MappingCustomerOrder,order,
+ order.BusinessType() = businessType,
+ order.Customer()
+ );
+
+
+
+ value := customers.Concatenate( ";");
+
+ if( value = "" )
+ {
+ value := "灏忕背閫氳鎶�鏈湁闄愬叕鍙�";
+ }
+
+ return value;
+ *]
+}
diff --git a/_Main/BL/Type_HistoricalSalesOrder/StaticMethod_GetHistoricalSalesOrders.qbl b/_Main/BL/Type_HistoricalSalesOrder/StaticMethod_GetHistoricalSalesOrders.qbl
new file mode 100644
index 0000000..2a8fe90
--- /dev/null
+++ b/_Main/BL/Type_HistoricalSalesOrder/StaticMethod_GetHistoricalSalesOrders.qbl
@@ -0,0 +1,64 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod GetHistoricalSalesOrders (
+ String businessType,
+ String customer,
+ String sheetProfitability,
+ String productID,
+ Date end,
+ MacroPlan owner,
+ Date start
+) as owning HistoricalSalesOrders
+{
+ Description: 'Get historical sales orders of deleiveryCells'
+ TextBody:
+ [*
+ // NBoTk Sep-11-2023 (created)
+
+ // filter businessType start end
+ // start default 3 years, end is today
+ value := selectset( owner,HistoricalSalesOrder,order,
+ true,
+ order.BusinessType() = businessType
+ and order.OrderDate() >= start
+ and order.OrderDate() <= end
+ );
+
+ // filter customer
+ if(customer <> '' )
+ {
+ value := selectset( value,Elements,orer,
+ true,
+ orer.Customer() = customer
+ );
+ }
+
+ // filter sheetProfitability
+ //if(sheetProfitability <> '' )
+ //{
+ // value := selectset( value,Elements,orer,
+ // true,
+ // orer.S() = sheetProfitability
+ // );
+ //}
+
+ // filter productID
+ if(productID <> '' )
+ {
+ value := selectset( value,Elements,orer,
+ true,
+ orer.ProductID() = productID
+ );
+ }
+
+ // order by 鐩堝埄姘村钩 闇�姹傛椂闂�
+
+ value := selectsortedset( value,Elements,order,
+ true,
+ //order.SheetProfitability(),
+ order.OrderDate()
+ );
+
+ return &value;
+ *]
+}
diff --git a/_Main/BL/Type_HistoricalSalesOrder/StaticMethod_GetProductIdString.qbl b/_Main/BL/Type_HistoricalSalesOrder/StaticMethod_GetProductIdString.qbl
new file mode 100644
index 0000000..faa36c9
--- /dev/null
+++ b/_Main/BL/Type_HistoricalSalesOrder/StaticMethod_GetProductIdString.qbl
@@ -0,0 +1,27 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod GetProductIdString (
+ MacroPlan owner,
+ String businessType
+) as String
+{
+ TextBody:
+ [*
+ // NBoTk Sep-13-2023 (created)
+
+ productIDs := selectuniquevalues( owner,MappingProduct,product,
+ product.BusinessType() = businessType,
+ product.ID()
+ );
+
+ value := productIDs.Concatenate( ";");
+
+
+ if( value = "" )
+ {
+ value := "TC067FYMM05-00;B26700040";
+ }
+
+ return value;
+ *]
+}
diff --git a/_Main/BL/Type_HistoricalSalesOrder/StaticMethod_GetSalesSegmentString.qbl b/_Main/BL/Type_HistoricalSalesOrder/StaticMethod_GetSalesSegmentString.qbl
new file mode 100644
index 0000000..e76aaec
--- /dev/null
+++ b/_Main/BL/Type_HistoricalSalesOrder/StaticMethod_GetSalesSegmentString.qbl
@@ -0,0 +1,28 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod GetSalesSegmentString (
+ MacroPlan owner,
+ String businessType
+) as String
+{
+ TextBody:
+ [*
+ // NBoTk Sep-13-2023 (created)
+
+ salesSegments := selectuniquevalues( owner,MappingSalesSegment,salesSegment,
+ salesSegment.BusinessType() = businessType,
+ salesSegment.ParentName()
+ );
+
+
+
+ value := salesSegments.Concatenate( ";");
+
+
+ if( value = "" )
+ {
+ value := "娑堣垂鍝佽惀閿�涓績;閿�鍞竴绉�";
+ }
+ return value;
+ *]
+}
diff --git a/_Main/BL/Type_HistoricalSalesOrder/StaticMethod_GetStockingPointString.qbl b/_Main/BL/Type_HistoricalSalesOrder/StaticMethod_GetStockingPointString.qbl
new file mode 100644
index 0000000..d7ce897
--- /dev/null
+++ b/_Main/BL/Type_HistoricalSalesOrder/StaticMethod_GetStockingPointString.qbl
@@ -0,0 +1,25 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod GetStockingPointString (
+ MacroPlan owner,
+ String businessType
+) as String
+{
+ TextBody:
+ [*
+ // NBoTk Sep-13-2023 (created)
+
+ stockingPointIDs := selectuniquevalues( owner,StockingPoint_MP,stock,
+ stock.ID()
+ );
+
+ value := stockingPointIDs.Concatenate( ";");
+
+ if( value = "" )
+ {
+ value := "I13_P;I13_SA";
+ }
+
+ return value;
+ *]
+}
diff --git a/_Main/BL/Type_HistoricalSalesOrder/StaticMethod_GetUnitOfMeasuresString.qbl b/_Main/BL/Type_HistoricalSalesOrder/StaticMethod_GetUnitOfMeasuresString.qbl
new file mode 100644
index 0000000..58570ab
--- /dev/null
+++ b/_Main/BL/Type_HistoricalSalesOrder/StaticMethod_GetUnitOfMeasuresString.qbl
@@ -0,0 +1,26 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod GetUnitOfMeasuresString (
+ MacroPlan owner,
+ String businessType
+) as String
+{
+ TextBody:
+ [*
+ // NBoTk Sep-13-2023 (created)
+
+ units := selectuniquevalues( owner,MappingUnitOfMeasure,unit,
+ unit.Name()
+ );
+
+
+ value := units.Concatenate( ";");
+
+ if( value = "" )
+ {
+ value := "PCS;MPC";
+ }
+
+ return value;
+ *]
+}
diff --git a/_Main/BL/Type_HistoricalSalesOrder/_ROOT_Type_HistoricalSalesOrder.qbl b/_Main/BL/Type_HistoricalSalesOrder/_ROOT_Type_HistoricalSalesOrder.qbl
new file mode 100644
index 0000000..3e9f0af
--- /dev/null
+++ b/_Main/BL/Type_HistoricalSalesOrder/_ROOT_Type_HistoricalSalesOrder.qbl
@@ -0,0 +1,9 @@
+Quintiq file version 2.0
+#root
+#parent: #DomainModel
+Type HistoricalSalesOrder
+{
+ #keys: '5[414382.0.385610030][414382.0.385610028][0.0.0][414382.0.385610029][414382.0.385610031]'
+ BaseType: Object
+ StructuredName: 'HistoricalSalesOrders'
+}
diff --git a/_Main/BL/Type_InventoryValueAndCost/StaticMethod_CreateOrUpdate.qbl b/_Main/BL/Type_InventoryValueAndCost/StaticMethod_CreateOrUpdate.qbl
index 4c0470e..4116cce 100644
--- a/_Main/BL/Type_InventoryValueAndCost/StaticMethod_CreateOrUpdate.qbl
+++ b/_Main/BL/Type_InventoryValueAndCost/StaticMethod_CreateOrUpdate.qbl
@@ -23,23 +23,27 @@
product := Product_MP::FindById( macroPlan, productId );
stockingPoint := StockingPoint_MP::FindById( macroPlan, stockingPointId );
account := Account_MP::FindByName( macroPlan, accountName );
- if( isnull( product ) ) {
- error( "product not found" );
- }
- if( isnull( stockingPoint ) ) {
- error( "stocking point not found" );
- }
- if( isnull( account ) ) {
- error( "account not found" );
- }
- result := InventoryValueAndCost::FindById( macroPlan, id );
- if( isnull( result ) ) {
+ //if( isnull( product ) ) {
+ // error( "product not found" );
+ //}
+ //if( isnull( stockingPoint ) ) {
+ // error( "stocking point not found" );
+ //}
+ //if( isnull( account ) ) {
+ // error( "account not found" );
+ //}
+ result := InventoryValueAndCost::FindById( macroPlan, stockingPointId,productId,start,id );
+ if( not isnull( product) and not isnull( stockingPoint) and not isnull( account)){
+ if( isnull( result ) ) {
result := InventoryValueAndCost::Create( id, product, stockingPoint, account, costDriver, start, cost, true ).astype( InventoryValueAndCost );
- } else if( result.ProductID() <> productId ) {
- error( "cannot change product of inventory value and cost" )
- } else {
- result.Update( account, costDriver, start, account.DefaultTimeUnit(), account.DefaultLengthOfTime(), cost, true );
+ } else if( result.ProductID() <> productId ) {
+ info( "cannot change product of inventory value and cost" )
+ }
+ // else {
+ // result.Update( account, costDriver, start, account.DefaultTimeUnit(), account.DefaultLengthOfTime(), cost, true );
+ // }
}
+
return result;
*]
}
diff --git a/_Main/BL/Type_InventoryValueAndCost/StaticMethod_FindById.qbl b/_Main/BL/Type_InventoryValueAndCost/StaticMethod_FindById.qbl
index b0dc53e..133145d 100644
--- a/_Main/BL/Type_InventoryValueAndCost/StaticMethod_FindById.qbl
+++ b/_Main/BL/Type_InventoryValueAndCost/StaticMethod_FindById.qbl
@@ -2,13 +2,16 @@
#parent: #root
StaticMethod FindById (
MacroPlan macroPlan,
+ String productId,
+ String stockPointId,
+ Date start,
String id
) as InventoryValueAndCost
{
TextBody:
[*
// yypsybs Aug-16-2023 (created)
- value := select( macroPlan, Product_MP.InventoryValueAndCost, item, true, item.ID() = id );
+ value := select( macroPlan, Product_MP.InventoryValueAndCost, item, true, item.ProductID()=productId and item.StockingPointID() = stockPointId and item.Start() = start );
return value;
*]
}
diff --git a/_Main/BL/Type_Lane/StaticMethod_CreateLane.qbl b/_Main/BL/Type_Lane/StaticMethod_CreateLane.qbl
index d78931a..64c72eb 100644
--- a/_Main/BL/Type_Lane/StaticMethod_CreateLane.qbl
+++ b/_Main/BL/Type_Lane/StaticMethod_CreateLane.qbl
@@ -12,7 +12,7 @@
[*
// Administrator Jul-12-2023 (created)
//Set default value
- isenabled := false;
+ isenabled := true;
datestart := Date::Construct(1900, 1, 1) ;
dateend := Date::Construct(9999, 12, 31);
standardleadtime := Duration::Zero();
diff --git a/_Main/BL/Type_MacroPlan/Method_InitialUnitAndStockingPoint.qbl b/_Main/BL/Type_MacroPlan/Method_InitialUnitAndStockingPoint.qbl
index b8b0705..d030255 100644
--- a/_Main/BL/Type_MacroPlan/Method_InitialUnitAndStockingPoint.qbl
+++ b/_Main/BL/Type_MacroPlan/Method_InitialUnitAndStockingPoint.qbl
@@ -11,7 +11,7 @@
currencyid := "CNY";
startdate := Date::Date( 1900, 1, 1 );
enddate := Date::Date( 9999, 12, 31 );
- capacitytype := "Infinite";
+ capacitytype := "Transport quantity";
if( isnull( Unit::FindById( this, "绌鸿繍" ) ) ){
this.Unit( relnew,
diff --git a/_Main/BL/Type_MacroPlan/Method_MappingActualPISPIPData.qbl b/_Main/BL/Type_MacroPlan/Method_MappingActualPISPIPData.qbl
index 87cbdf3..f9cd042 100644
--- a/_Main/BL/Type_MacroPlan/Method_MappingActualPISPIPData.qbl
+++ b/_Main/BL/Type_MacroPlan/Method_MappingActualPISPIPData.qbl
@@ -9,7 +9,7 @@
[*
// renhao Aug-14-2023 (created)
date := Date :: Today();
- listtodeal := selectset( this,MappingActualPISPIP,actual,not isnull( Product_MP::FindById( this, actual.ProductID() ) ) );
+ listtodeal := selectset( this,MappingActualPISPIP,actual,true );
totalcount := listtodeal.Size();
info( "ActualPISPIP has " + totalcount.AsQUILL() + " rows in total" );
diff --git a/_Main/BL/Type_MacroPlan/Method_MappingExternalSupplyData.qbl b/_Main/BL/Type_MacroPlan/Method_MappingExternalSupplyData.qbl
index 7295bad..ea2ad61 100644
--- a/_Main/BL/Type_MacroPlan/Method_MappingExternalSupplyData.qbl
+++ b/_Main/BL/Type_MacroPlan/Method_MappingExternalSupplyData.qbl
@@ -9,15 +9,14 @@
[*
// renhao Aug-14-2023 (created)
- listtodeal := selectset( this,MappingExternalSupply,externalSupply,
- not isnull( StockingPoint_MP::FindById( this, externalSupply.StockingPointID() ) ) and not isnull( Product_MP::FindById( this, externalSupply.ProductID() ) ) );
+ listtodeal := selectset( this,MappingExternalSupply,externalSupply, true );
totalcount := listtodeal.Size();
info( "ExternalSupply has " + totalcount.AsQUILL() + " rows in total" );
count := 0;
traverse( listtodeal,Elements,externalSupply){
count := count + 1;
- if( count - [Number](count/100) * 100 = 0 or count = totalcount ){
+ if( count - [Number](count/1000) * 1000 = 0 or count = totalcount ){
info( "Now is dealing with the " + count.AsQUILL() + "ExternalSupply " + "( " + count.AsQUILL() + "/" + totalcount.AsQUILL() + " ) " + (count/totalcount*100).Round( 1 ).AsQUILL() + "%" );
}
product := select( this,MappingProduct,product,product.ID() = externalSupply.ProductID() and product.KeyProduct() = nuclear,true);
diff --git a/_Main/BL/Type_MacroPlan/Method_MappingInventoryValueAndCostData.qbl b/_Main/BL/Type_MacroPlan/Method_MappingInventoryValueAndCostData.qbl
index 2138aae..0789263 100644
--- a/_Main/BL/Type_MacroPlan/Method_MappingInventoryValueAndCostData.qbl
+++ b/_Main/BL/Type_MacroPlan/Method_MappingInventoryValueAndCostData.qbl
@@ -5,23 +5,26 @@
TextBody:
[*
// yypsybs Aug-15-2023 (created)
- listtodeal := selectset( this,MappingInventoryValueAndCost,item,not isnull( Product_MP::FindById( this, item.ProductID() ) ), not isnull( StockingPoint_MP::FindById( this, item.StockingPointID() ) ) );
+ listtodeal := selectset( this,MappingInventoryValueAndCost,item,true );
totalcount := listtodeal.Size();
+
info( "InventoryCost has " + totalcount.AsQUILL() + " rows in total" );
count := 0;
traverse( listtodeal, Elements, item ) {
- count := count + 1;
- if( count - [Number](count/100) * 100 = 0 or count = totalcount ){
- info( "Now is dealing with the " + count.AsQUILL() + "InventoryCost " + "( " + count.AsQUILL() + "/" + totalcount.AsQUILL() + " ) " + (count/totalcount*100).Round( 1 ).AsQUILL() + "%" );
+ count := count + 1;
+ if( count - [Number](count/1000) * 1000 = 0 or count = totalcount ){
+ info( "Now is dealing with the " + count.AsQUILL() + "InventoryCost " + "( " + count.AsQUILL() + "/" + totalcount.AsQUILL() + " ) " + (count/totalcount*100).Round( 1 ).AsQUILL() + "%" );
}
- if( not isnull( Product_MP::FindById( this, item.ProductID() ) ) ){
- InventoryValueAndCost::CreateOrUpdate( this, item.ID(), item.ProductID(),
+
+ InventoryValueAndCost::CreateOrUpdate( this, item.ID(), item.ProductID(),
item.StockingPointID(),
- item.AccountName(), item.CostDriver(), item.Start(), item.Cost() );
- }else{
- info( "invaild product: " + item.ProductID().AsQUILL() );
- }
+ item.AccountName(), item.CostDriver(), item.Start(), item.Cost());
+ // if( not isnull( Product_MP::FindProductTypeIndex( item.ProductID() ) ) and not isnull( StockingPoint_MP :: FindStockingPointTypeIndex( item.StockingPointID()))){
+ //
+ // }else{
+ // info( "invaild product: " + item.ProductID().AsQUILL() );
+ // }
}
*]
}
diff --git a/_Main/BL/Type_MacroPlan/Method_MappingOperationBOMData.qbl b/_Main/BL/Type_MacroPlan/Method_MappingOperationBOMData.qbl
index 93b5707..892f5ef 100644
--- a/_Main/BL/Type_MacroPlan/Method_MappingOperationBOMData.qbl
+++ b/_Main/BL/Type_MacroPlan/Method_MappingOperationBOMData.qbl
@@ -17,7 +17,8 @@
bomList := selectsortedset( this, MappingBOM, item,
ifexpr( isnull( businessTypes ) or businessTypes.Size() = 0,
true,
- businessTypes.Difference( businessTypes.Difference( item.BusinessType().Tokenize( ", " ) ) ).Size() > 0 )
+ // businessTypes.Difference( businessTypes.Difference( item.BusinessType().Tokenize( ", " ) ) ).Size() > 0 )
+ businessTypes.Find( item.BusinessType() ) >= 0 )
and ifexpr( isKeyProduct,
keyProductList.Size() > 0 and keyProductList.Find( item.ComponentCode() ) >= 0,
true ),
@@ -28,19 +29,19 @@
routingRows := selectset( bomList, Elements, item, true, routingId = item.OrganCode() + "_" + item.ProductCode() );
if( routingRows.Size() > 0 ) {
firstRow := routingRows.Element( 0 );
- stockingPointId := firstRow.OrganCode() + "_" + firstRow.ProductType() + "_STOCK";
- inputStockingPointId := firstRow.OrganCode() + "_" + firstRow.ComponentType() + "_STOCK";
+ stockingPointId := firstRow.OrganCode() + "_" + firstRow.ProductType() + "_Stock";
+ inputStockingPointId := firstRow.OrganCode() + "_" + firstRow.ComponentType() + "_Stock";
// ========妫�鏌�========
- product := Product_MP::FindById( this, firstRow.ProductCode() );
+ product := Product_MP::FindProductTypeIndex( firstRow.ProductCode() );
if( not isnull( product ) ) {
// error( "product : " + firstRow.ProductCode() + " not found" );
- stockingPoint := StockingPoint_MP::FindById( this, stockingPointId );
- inputStockingPoint := StockingPoint_MP::FindById( this, inputStockingPointId );
+ stockingPoint := StockingPoint_MP::FindStockingPointTypeIndex( stockingPointId );
+ inputStockingPoint := StockingPoint_MP::FindStockingPointTypeIndex( inputStockingPointId );
// info( stockingPointId.AsQUILL() );
// if( isnull( stockingPoint ) ) {
// error( "stockingPoint : " + stockingPointId + " not found" );
// }
- routing := Routing::FindById( this, routingId );
+ routing := Routing::FindRoutingTypeIndex( routingId );
if( not isnull( routing ) ) {
// error( "routing : " + routingId + " not found" );
// ========澶勭悊杈撳嚭========
diff --git "a/_Main/BL/Type_MacroPlan/Method_MappingOperationBOMDataRouting\043576.qbl" "b/_Main/BL/Type_MacroPlan/Method_MappingOperationBOMDataRouting\043576.qbl"
index 03a3858..059c6c9 100644
--- "a/_Main/BL/Type_MacroPlan/Method_MappingOperationBOMDataRouting\043576.qbl"
+++ "b/_Main/BL/Type_MacroPlan/Method_MappingOperationBOMDataRouting\043576.qbl"
@@ -67,7 +67,7 @@
alterProd := Product_MP::FindById( this, alterRow.AlternativeMaterialCode() );
if( not isnull( alterProd ) ) {
// error( "alterProd : " + alterRow.AlternativeMaterialCode() + " not found" );
- stockingPointIdAlter := alterRow.OrganCode() + "_" + alterRow.ProductType() + "_STOCK";
+ stockingPointIdAlter := alterRow.OrganCode() + "_" + alterRow.ProductType() + "_Stock";
stockingPointAlter := StockingPoint_MP::FindById( this, stockingPointIdAlter );
if( isnull( stockingPointAlter ) ) {
error( "stockingPoint : " + stockingPointIdAlter + " not found" );
diff --git a/_Main/BL/Type_MacroPlan/Method_MappingOperationBOMDataSupplyPurchase.qbl b/_Main/BL/Type_MacroPlan/Method_MappingOperationBOMDataSupplyPurchase.qbl
index ab499a8..6a24698 100644
--- a/_Main/BL/Type_MacroPlan/Method_MappingOperationBOMDataSupplyPurchase.qbl
+++ b/_Main/BL/Type_MacroPlan/Method_MappingOperationBOMDataSupplyPurchase.qbl
@@ -18,28 +18,35 @@
routingStep := RoutingStep::Create( routing, routingStepName, "", true );
product := Product_MP::FindById( this, productId );
if( isnull( product ) ) {
- error( "product : " + productId + " not found" );
+ info( "product : " + productId + " not found" );
}
stockingPointId := orgCode + "_" + productType + "_Stock";
stockingPoint := StockingPoint_MP::FindById( this, stockingPointId );
if( isnull( stockingPoint ) ) {
- error( "stockingPoint : " + stockingPointId + " not found" );
+ info( "stockingPoint : " + stockingPointId + " not found" );
}
- unit := Unit::FindById( this, unitId );
- if( isnull( unit ) ) {
+
+ if( not isnull( product) and not isnull( stockingPoint)){
+ unit := Unit::FindById( this, unitId );
+ if( isnull( unit ) ) {
unit := this.Unit( relnew,
ID := unitId, Name := unitId, CapacityType := "Infinite",
DefaultGridX := 0, DefaultGridY := 0,
IsManuallyConfigured := false,
Currency_MP := this.BaseCurrency(), UnitOfMeasure_MP := this.DefaultUnitOfMeasure() );
- }
+ }
// Operation
- operation := Operation::Create( operationId, unit, operationId, routingStep,
+ operation := Operation::FindOperationTypeIndex( operationId);
+ if( isnull( operation)){
+ operation := Operation::Create( operationId, unit, operationId, routingStep,
Duration::Zero(), Duration::Zero(), 1.0, false,
Real::MinReal(), false, Real::MaxReal(),
0.0, 0.0, false, true );
// OperaionBom
- operation.CreateOperationBOM( product, stockingPoint, false, true );
- operation.GetOperationBOM( product.ID(), stockingPoint.ID(), false ).Quantity( 1 );
+ operation.CreateOperationBOM( product, stockingPoint, false, true );
+ operation.GetOperationBOM( product.ID(), stockingPoint.ID(), false ).Quantity( 1 );
+ }
+
+ }
*]
}
diff --git a/_Main/BL/Type_MacroPlan/Method_MappingOperationCostData.qbl b/_Main/BL/Type_MacroPlan/Method_MappingOperationCostData.qbl
index 3a315d0..98be129 100644
--- a/_Main/BL/Type_MacroPlan/Method_MappingOperationCostData.qbl
+++ b/_Main/BL/Type_MacroPlan/Method_MappingOperationCostData.qbl
@@ -38,7 +38,7 @@
// Get the operation cost data
traverse( listtodealwithmaxsn, Elements, item ){
count := count + 1;
- if( count - [Number](count/100) * 100 = 0 or count = totalcount ){
+ if( count - [Number](count/1000) * 1000 = 0 or count = totalcount ){
info( "Now is dealing with the " + count.AsQUILL() + "OperationCost " + "( " + count.AsQUILL() + "/" + totalcount.AsQUILL() + " ) " + (count/totalcount*100).Round( 1 ).AsQUILL() + "%" );
}
id := item.OrganCode() + "_" + item.ProductID() + "_" + item.ProcessSection() + "_" + item.Line();
diff --git a/_Main/BL/Type_MacroPlan/Method_MappingOperationData.qbl b/_Main/BL/Type_MacroPlan/Method_MappingOperationData.qbl
index a3a19ed..07e9838 100644
--- a/_Main/BL/Type_MacroPlan/Method_MappingOperationData.qbl
+++ b/_Main/BL/Type_MacroPlan/Method_MappingOperationData.qbl
@@ -11,8 +11,8 @@
toDealList := construct( MappingOperations );
if( not isnull( businessTypes ) and businessTypes.Size() > 0 ) {
toDealList := selectsortedset( this, MappingOperation, item,
- // businessTypes.Find( item.BusinessType() ) >= 0,
- businessTypes.Difference( businessTypes.Difference( item.BusinessType().Tokenize( ", " ) ) ).Size() > 0,
+ businessTypes.Find( item.BusinessType() ) >= 0,
+ // businessTypes.Difference( businessTypes.Difference( item.BusinessType().Tokenize( ", " ) ) ).Size() > 0,
item.SequenceNumber() );
} else {
toDealList := selectsortedset( this, MappingOperation, item,
@@ -26,7 +26,7 @@
routingId := item.OrganCode() + "_" + item.ProductID();
unitId := item.OrganCode() + "_" + item.PlantName() + "_" + item.ProcessSection();
routingStepName := item.ProcessSection() + "_" + [String]item.SequenceNumber();
- operationId := item.OrganCode() + "_" + item.ProductID() + "_" + item.ProcessSection();
+ operationId := item.OrganCode() + "_" + item.ProductID() + "_" + item.ProcessSection()+"_" + [String]item.SequenceNumber();
// info( "========" )
// info( "routingId:" + routingId );
// info( "unitId:" + unitId );
@@ -51,15 +51,16 @@
if( isnull( routingStep ) ) {
routingStep := RoutingStep::Create( routing, routingStepName, "", true );
}
- // UnitOfMeasure
- unitOfMeasure := UnitOfMeasure_MP::FindByName( this, item.UnitOfMeasureName() );
- if( isnull( unitOfMeasure ) ) {
- error( "unit of measure [" + item.UnitOfMeasureName() + "] not found for routing [" + routingId + "]" );
- }
+
// Unit
unit := Unit::FindById( this, unitId );
if( isnull( unit ) ) {
- unit := this.Unit( relnew,
+ // UnitOfMeasure
+ unitOfMeasure := UnitOfMeasure_MP::FindByName( this, item.UnitOfMeasureName() );
+ if( isnull( unitOfMeasure ) ) {
+ info( "unit of measure [" + item.UnitOfMeasureName() + "] not found for routing [" + routingId + "]" );
+ }
+ unit := this.Unit( relnew,
ID := unitId, Name := unitId, CapacityType := "Infinite",
DefaultGridX := 0, DefaultGridY := 0,
IsManuallyConfigured := false,
diff --git a/_Main/BL/Type_MacroPlan/Method_MappingProductData.qbl b/_Main/BL/Type_MacroPlan/Method_MappingProductData.qbl
index cb6a99d..fa5aa3b 100644
--- a/_Main/BL/Type_MacroPlan/Method_MappingProductData.qbl
+++ b/_Main/BL/Type_MacroPlan/Method_MappingProductData.qbl
@@ -22,10 +22,10 @@
}
} else {
if( iskeyproduct = true ){
- listToDeal := selectset( this, MappingProduct, item, item.KeyProduct() = true, businesstypes.Difference( businesstypes.Difference( item.BusinessType().Tokenize( ", " ) ) ).Size() > 0 );
+ listToDeal := selectset( this, MappingProduct, item, item.KeyProduct() = true, businesstypes.Find( item.BusinessType()) > 0 );
}
else{
- listToDeal := selectset( this, MappingProduct, item, businesstypes.Difference( businesstypes.Difference( item.BusinessType().Tokenize( ", " ) ) ).Size() > 0 );
+ listToDeal := selectset( this, MappingProduct, item, businesstypes.Find( item.BusinessType()) > 0 );
}
}
totalcount := listToDeal.Size();
diff --git a/_Main/BL/Type_MacroPlan/Method_MappingProductInLaneData.qbl b/_Main/BL/Type_MacroPlan/Method_MappingProductInLaneData.qbl
index 2bd20a4..2d63310 100644
--- a/_Main/BL/Type_MacroPlan/Method_MappingProductInLaneData.qbl
+++ b/_Main/BL/Type_MacroPlan/Method_MappingProductInLaneData.qbl
@@ -7,7 +7,7 @@
[*
// Administrator Aug-17-2023 (created)
// list to deal
- listtodeal := selectset( this, MappingProductInLane, item, not isnull( Product_MP::FindById( this, item.ProductID() ) ), not isnull( Lane::FindLaneTypeIndex( item.LineID() ) ) );
+ listtodeal := selectset( this, MappingProductInLane, item ,true );
totalcount := listtodeal.Size();
info( "ProductInLane has " + totalcount.AsQUILL() + " rows in total" );
@@ -15,7 +15,7 @@
// Create ProductInLane
traverse( listtodeal, Elements, item ){
count := count + 1;
- if( count - [Number](count/100) * 100 = 0 or count = totalcount ){
+ if( count - [Number](count/1000) * 1000 = 0 or count = totalcount ){
info( "Now is dealing with the " + count.AsQUILL() + "ProductInLane " + "( " + count.AsQUILL() + "/" + totalcount.AsQUILL() + " ) " + (count/totalcount*100).Round( 1 ).AsQUILL() + "%" );
}
ProductInLane::CreateOrUpdate( this, item.ProductID(), item.LineID() );
diff --git a/_Main/BL/Type_MacroPlan/Method_MappingUnitData.qbl b/_Main/BL/Type_MacroPlan/Method_MappingUnitData.qbl
index fa613b6..b5618c6 100644
--- a/_Main/BL/Type_MacroPlan/Method_MappingUnitData.qbl
+++ b/_Main/BL/Type_MacroPlan/Method_MappingUnitData.qbl
@@ -15,13 +15,14 @@
listtodeal := selectset( this, MappingOperation, item, true );
} else {
listtodeal := selectset( this, MappingOperation, item,
- businesstypes.Difference( businesstypes.Difference( item.BusinessType().Tokenize( ", " ) ) ).Size() > 0
- );
+ // businesstypes.Difference( businesstypes.Difference( item.BusinessType().Tokenize( ", " ) ) ).Size() > 0
+ businesstypes.Find( item.BusinessType() ) >= 0
+ );
}
//Set the Default values
unitofmeasurename := "PCS";
- capacitytype := "Infinite";
+ capacitytype := "Transport quantity";
// Get the root data
Unit::CreateOrUpdate( this,
diff --git a/_Main/BL/Type_MacroPlan/StaticMethod_DoSync0.qbl b/_Main/BL/Type_MacroPlan/StaticMethod_DoSync0.qbl
index dc5d8d6..fe4e7a1 100644
--- a/_Main/BL/Type_MacroPlan/StaticMethod_DoSync0.qbl
+++ b/_Main/BL/Type_MacroPlan/StaticMethod_DoSync0.qbl
@@ -67,7 +67,7 @@
macroPlan.Broker_OTD_Product().Execute();
info( "Product Data Broker Finished, Start Product Mapping" );
//testproduct := construct( Strings );
- macroPlan.MappingProductData( businessTypes, false );
+ macroPlan.MappingProductData( businessTypes, isKeyProduct );
//鍗曚綅杞崲-7
BaseConversionFactor::DoSync( macroPlan );
@@ -107,31 +107,31 @@
data := macroPlan.ApiResponesCheck( address, url, port, postrequestbody );
macroPlan.ApiLaneLegsData( data );
- //// 渚涘簲缃戠粶锛堣溅閬擄級-12
- //info( "Get Lanelegs From Api Finished, Start ProductInLane Data Broker" );
- //macroPlan.Broker_OTD_ProductInLane().Execute();
- //info( "ProductInLane Data Broker Finished, Start ProductInLane Mapping" );
- //macroPlan.MappingProductInLaneData();
+ // 渚涘簲缃戠粶锛堣溅閬擄級-12
+ info( "Get Lanelegs From Api Finished, Start ProductInLane Data Broker" );
+ macroPlan.Broker_OTD_ProductInLane().Execute();
+ info( "ProductInLane Data Broker Finished, Start ProductInLane Mapping" );
+ macroPlan.MappingProductInLaneData();
// 鍦ㄥ簱搴撳瓨鏁版嵁-13
info( "ProductInLane Finished, Start ActualPISPIP Data Broker" );
macroPlan.Broker_OTD_ActualPISPIP().Execute();
info( "ActualPISPIP Data Broker Finished, Start ActualPISPIP Mapping" );
//macroPlan.MappingActualPISPIPData( businessTypes, true );
- macroPlan.MappingActualPISPIPData( businessTypes, false );
+ macroPlan.MappingActualPISPIPData( businessTypes, isKeyProduct );
// 鍦ㄩ�斿簱瀛�-14
info( "ActualPISPIP Finished, Start ExternalSupply Data Broker" );
macroPlan.Broker_OTD_ExternalSupply().Execute();
//macroPlan.MappingExternalSupplyData( businessTypes, true );
info( "ExternalSupply Data Broker Finished, Start ExternalSupply Mapping" );
- macroPlan.MappingExternalSupplyData( businessTypes, false );
+ macroPlan.MappingExternalSupplyData( businessTypes, isKeyProduct );
// 搴撳瓨鎴愭湰-15
InventoryValueAndCost::DoSync( macroPlan );
- //// todo 鍒堕�犳垚鏈�-16
- //info( "InventoryCost Finished, Start OperationCost Mapping" );
+ // todo 鍒堕�犳垚鏈�-16
+ info( "InventoryCost Finished, Start OperationCost Mapping" );
//macroPlan.MappingOperationCostData( businessTypes );
// 璁㈠崟棰勬祴-17
diff --git a/_Main/BL/Type_MatAttrSettingAndPlanStrategyDataTable/Method_CreateOrUpdateData.qbl b/_Main/BL/Type_MatAttrSettingAndPlanStrategyDataTable/Method_CreateOrUpdateData.qbl
index 6d76f0a..15d22df 100644
--- a/_Main/BL/Type_MatAttrSettingAndPlanStrategyDataTable/Method_CreateOrUpdateData.qbl
+++ b/_Main/BL/Type_MatAttrSettingAndPlanStrategyDataTable/Method_CreateOrUpdateData.qbl
@@ -30,10 +30,97 @@
// finishedProductDeliveryMinLTDays := select( masapsdr, MatAttrSettingAndPlanStrategyDataCell, tempMASAPSDC, tempMASAPSDC.MatAttrSettingAndPlanStrategyDataColumn().name() = "鎴愬搧浜や粯Min-LT锛堝ぉ锛�" ).value();
longAndShortCycleLabels := select( masapsdr, MatAttrSettingAndPlanStrategyDataCell, tempMASAPSDC, tempMASAPSDC.MatAttrSettingAndPlanStrategyDataColumn().name() = "闀跨煭鍛ㄦ湡鏍囩" ).value();
genericSpecialLabels := select( masapsdr, MatAttrSettingAndPlanStrategyDataCell, tempMASAPSDC, tempMASAPSDC.MatAttrSettingAndPlanStrategyDataColumn().name() = "閫氱敤涓撶敤鏍囩" ).value();
- // automaticMaterialPlanningPolicies := select( masapsdr, MatAttrSettingAndPlanStrategyDataCell, tempMASAPSDC, tempMASAPSDC.MatAttrSettingAndPlanStrategyDataColumn().name() = "鑷姩鐗╂枡璁″垝绛栫暐" ).value();
+ automaticMaterialPlanningPolicies := select( masapsdr, MatAttrSettingAndPlanStrategyDataCell, tempMASAPSDC, tempMASAPSDC.MatAttrSettingAndPlanStrategyDataColumn().name() = "鑷姩鐗╂枡璁″垝绛栫暐" ).value();
usersManuallySchedulePolicies := select( masapsdr, MatAttrSettingAndPlanStrategyDataCell, tempMASAPSDC, tempMASAPSDC.MatAttrSettingAndPlanStrategyDataColumn().name() = "鐢ㄦ埛鎵嬪姩璁″垝绛栫暐" ).value();
minimumNumberOfDaysInStock := select( masapsdr, MatAttrSettingAndPlanStrategyDataCell, tempMASAPSDC, tempMASAPSDC.MatAttrSettingAndPlanStrategyDataColumn().name() = "搴撳瓨鏈�灏忓ぉ鏁�" ).value();
maximumNumberOfDaysInInventory := select( masapsdr, MatAttrSettingAndPlanStrategyDataCell, tempMASAPSDC, tempMASAPSDC.MatAttrSettingAndPlanStrategyDataColumn().name() = "搴撳瓨鏈�澶уぉ鏁�" ).value();
+ if ( businessType = "闆嗗洟闈㈡澘" ) {
+ if ( createItemCode.StartsWith( "103" ) ) {
+ if( longAndShortCycleLabels = "闀垮懆鏈�" ) {
+ if ( genericSpecialLabels = "涓撶敤" ) {
+ if ( automaticMaterialPlanningPolicies <> "JIT" ) {
+ error( "瀵煎叆鐨勮嚜鍔ㄨ鍒掔瓥鐣ュ�煎嚭閿欙細", createItemCode );
+ }
+ } else if ( genericSpecialLabels = "閫氱敤" ) {
+ if ( automaticMaterialPlanningPolicies <> "瀹夊叏搴撳瓨" ) {
+ error( "瀵煎叆鐨勮嚜鍔ㄨ鍒掔瓥鐣ュ�煎嚭閿欙細", createItemCode );
+ }
+ } else {
+ error( "涓撻�氱敤鏍囩鐨勫�煎嚭閿欙細", createItemCode );
+ }
+ } else if ( longAndShortCycleLabels = "鐭懆鏈�" ) {
+ if ( genericSpecialLabels = "涓撶敤" ) {
+ if ( automaticMaterialPlanningPolicies <> "JIT" ) {
+ error( "瀵煎叆鐨勮嚜鍔ㄨ鍒掔瓥鐣ュ�煎嚭閿欙細", createItemCode );
+ }
+ } else if ( genericSpecialLabels = "閫氱敤" ) {
+ if ( automaticMaterialPlanningPolicies <> "瀹夊叏搴撳瓨" ) {
+ error( "瀵煎叆鐨勮嚜鍔ㄨ鍒掔瓥鐣ュ�煎嚭閿欙細", createItemCode );
+ }
+ } else {
+ error( "涓撻�氱敤鏍囩鐨勫�煎嚭閿欙細", createItemCode );
+ }
+ } else {
+ error( "闀跨煭鍛ㄦ湡鐨勫�煎嚭閿欙細", createItemCode );
+ }
+ } else {
+ if( longAndShortCycleLabels = "闀垮懆鏈�" ) {
+ if ( genericSpecialLabels = "涓撶敤" ) {
+ if ( automaticMaterialPlanningPolicies <> "JIT" ) {
+ error( "瀵煎叆鐨勮嚜鍔ㄨ鍒掔瓥鐣ュ�煎嚭閿欙細", createItemCode );
+ }
+ } else if ( genericSpecialLabels = "閫氱敤" ) {
+ if ( automaticMaterialPlanningPolicies <> "JIT" ) {
+ error( "瀵煎叆鐨勮嚜鍔ㄨ鍒掔瓥鐣ュ�煎嚭閿欙細", createItemCode );
+ }
+ } else {
+ error( "涓撻�氱敤鏍囩鐨勫�煎嚭閿欙細", createItemCode );
+ }
+ } else if ( longAndShortCycleLabels = "鐭懆鏈�" ) {
+ if ( genericSpecialLabels = "涓撶敤" ) {
+ if ( automaticMaterialPlanningPolicies <> "JIT" ) {
+ error( "瀵煎叆鐨勮嚜鍔ㄨ鍒掔瓥鐣ュ�煎嚭閿欙細", createItemCode );
+ }
+ } else if ( genericSpecialLabels = "閫氱敤" ) {
+ if ( automaticMaterialPlanningPolicies <> "JIT" ) {
+ error( "瀵煎叆鐨勮嚜鍔ㄨ鍒掔瓥鐣ュ�煎嚭閿欙細", createItemCode );
+ }
+ } else {
+ error( "涓撻�氱敤鏍囩鐨勫�煎嚭閿欙細", createItemCode );
+ }
+ } else {
+ error( "闀跨煭鍛ㄦ湡鐨勫�煎嚭閿欙細", createItemCode );
+ }
+ }
+ } else {
+ if( longAndShortCycleLabels = "闀垮懆鏈�" ) {
+ if ( genericSpecialLabels = "涓撶敤" ) {
+ if ( automaticMaterialPlanningPolicies <> "JIT" ) {
+ error( "瀵煎叆鐨勮嚜鍔ㄨ鍒掔瓥鐣ュ�煎嚭閿欙細", createItemCode );
+ }
+ } else if ( genericSpecialLabels = "閫氱敤" ) {
+ if ( automaticMaterialPlanningPolicies <> "瀹夊叏搴撳瓨" ) {
+ error( "瀵煎叆鐨勮嚜鍔ㄨ鍒掔瓥鐣ュ�煎嚭閿欙細", createItemCode );
+ }
+ } else {
+ error( "涓撻�氱敤鏍囩鐨勫�煎嚭閿欙細", createItemCode );
+ }
+ } else if ( longAndShortCycleLabels = "鐭懆鏈�" ) {
+ if ( genericSpecialLabels = "涓撶敤" ) {
+ if ( automaticMaterialPlanningPolicies <> "JIT" ) {
+ error( "瀵煎叆鐨勮嚜鍔ㄨ鍒掔瓥鐣ュ�煎嚭閿欙細", createItemCode );
+ }
+ } else if ( genericSpecialLabels = "閫氱敤" ) {
+ if ( automaticMaterialPlanningPolicies <> "VMI" ) {
+ error( "瀵煎叆鐨勮嚜鍔ㄨ鍒掔瓥鐣ュ�煎嚭閿欙細", createItemCode );
+ }
+ } else {
+ error( "涓撻�氱敤鏍囩鐨勫�煎嚭閿欙細", createItemCode );
+ }
+ } else {
+ error( "闀跨煭鍛ㄦ湡鐨勫�煎嚭閿欙細", createItemCode );
+ }
+ }
try {
matAttrSettingAndPlanStrategy := globalOTDTable.MatAttrSettingAndPlanStrategy( relnew,
BusinessType := businessType,
diff --git a/_Main/BL/Type_MatAttrSettingAndPlanStrategyDataTable/Method_SynchronizeData.qbl b/_Main/BL/Type_MatAttrSettingAndPlanStrategyDataTable/Method_SynchronizeData.qbl
index c88a29b..624f54f 100644
--- a/_Main/BL/Type_MatAttrSettingAndPlanStrategyDataTable/Method_SynchronizeData.qbl
+++ b/_Main/BL/Type_MatAttrSettingAndPlanStrategyDataTable/Method_SynchronizeData.qbl
@@ -11,5 +11,7 @@
this.CheckThePrecedingColumn( globalOTDTable );
this.CreateOrUpdateData( globalOTDTable );
+
+ this.VerificationData( globalOTDTable );
*]
}
diff --git a/_Main/BL/Type_MatAttrSettingAndPlanStrategyDataTable/Method_VerificationData.qbl b/_Main/BL/Type_MatAttrSettingAndPlanStrategyDataTable/Method_VerificationData.qbl
new file mode 100644
index 0000000..d09c337
--- /dev/null
+++ b/_Main/BL/Type_MatAttrSettingAndPlanStrategyDataTable/Method_VerificationData.qbl
@@ -0,0 +1,25 @@
+Quintiq file version 2.0
+#parent: #root
+Method VerificationData (
+ GlobalOTDTable globalOTDTable
+)
+{
+ TextBody:
+ [*
+ info( "绛栫暐涓暟锛�", globalOTDTable.MatAttrSettingAndPlanStrategy( relsize ) );
+ traverse ( globalOTDTable, MatAttrSettingAndPlanStrategy, masaps ) {
+ if ( masaps.PlanningStrategyCustom() <> "瀹夊叏搴撳瓨" and masaps.PlanningStrategyCustom() <> "JIT" and masaps.PlanningStrategyCustom() <> "M/A" and
+ masaps.PlanningStrategyCustom() <> "PO鎷夋枡" and masaps.PlanningStrategyCustom() <> "VMI" ) {
+ error( "鎵嬪姩璁剧疆绛栫暐閿欒锛�", masaps.MatCode() );
+ }
+
+ if ( ( masaps.PlanningStrategyAuto() <> "" and masaps.PlanningStrategyAuto() = "JIT" ) or
+ ( masaps.PlanningStrategyCustom() <> "" and masaps.PlanningStrategyCustom() = "JIT" )
+ ) {
+ if ( masaps.MinimumNumberOfDaysInStock() > 0 or masaps.MaximumNumberOfDaysInInventory() > 0 ) {
+ error( "JIT绛栫暐瀛樺湪鏈�灏忓拰鏈�澶у簱瀛樺ぉ鏁帮細", masaps.MatCode() );
+ }
+ }
+ }
+ *]
+}
diff --git a/_Main/BL/Type_MatAttrSettingAndPlanningStrategy/StaticMethod_SynchronizeInventoryTargets.qbl b/_Main/BL/Type_MatAttrSettingAndPlanningStrategy/StaticMethod_SynchronizeInventoryTargets.qbl
new file mode 100644
index 0000000..17e144a
--- /dev/null
+++ b/_Main/BL/Type_MatAttrSettingAndPlanningStrategy/StaticMethod_SynchronizeInventoryTargets.qbl
@@ -0,0 +1,41 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod SynchronizeInventoryTargets (
+ GlobalOTDTable globalOTDTable,
+ MacroPlan macroPlan
+)
+{
+ TextBody:
+ [*
+ traverse ( globalOTDTable, MatAttrSettingAndPlanStrategy, masaps ) {
+ hasMaxLevel := masaps.MaximumNumberOfDaysInInventory() <> 0;
+ product_MP := select( macroPlan, Product_MP, tempPMP, tempPMP.ID() = masaps.MatCode() );
+ if ( not isnull( product_MP ) ) {
+ traverse ( product_MP, ProductInStockingPoint_MP, pispmp ) {
+ targetInventorySpecification := select( product_MP, InventorySpecification, tempIS, tempIS.ProductID() = product_MP.ID() and
+ tempIS.StockingPointID() = pispmp.StockingPointID() and
+ tempIS.Start() = macroPlan.StartOfPlanning().Date() );
+ if ( not isnull( targetInventorySpecification ) ) {
+ targetInventorySpecification.Delete();
+ }
+ InventorySpecification::Create( product_MP,
+ pispmp.StockingPoint_MP(),
+ macroPlan.StartOfPlanning().Date(),
+ false,
+ 0.0,
+ 0.0,
+ true,
+ [Real]masaps.MinimumNumberOfDaysInStock(),
+ 0.0,
+ hasMaxLevel,
+ true,
+ [Real]masaps.MaximumNumberOfDaysInInventory(),
+ 0.0,
+ false,
+ false
+ );
+ }
+ }
+ }
+ *]
+}
diff --git a/_Main/BL/Type_PanelMaterial/Attribute_DemandQuantity.qbl b/_Main/BL/Type_PanelMaterial/Attribute_DemandQuantity.qbl
new file mode 100644
index 0000000..50633e7
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterial/Attribute_DemandQuantity.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute DemandQuantity
+{
+ #keys: '3[414702.0.155922013][414702.0.155922012][414702.0.155922014]'
+ Description: '闇�姹傛暟閲�'
+ ValueType: Real
+}
diff --git a/_Main/BL/Type_PanelMaterial/Attribute_MaterialDescription.qbl b/_Main/BL/Type_PanelMaterial/Attribute_MaterialDescription.qbl
new file mode 100644
index 0000000..1acc53a
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterial/Attribute_MaterialDescription.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute MaterialDescription
+{
+ #keys: '3[414702.0.155921990][414702.0.155921989][414702.0.155921991]'
+ Description: '鐗╂枡鎻忚堪'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterial/Attribute_PanelModel.qbl b/_Main/BL/Type_PanelMaterial/Attribute_PanelModel.qbl
new file mode 100644
index 0000000..68fdbb0
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterial/Attribute_PanelModel.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute PanelModel
+{
+ #keys: '3[414702.0.155921977][414702.0.155921976][414702.0.155921978]'
+ Description: '闈㈡澘鍨嬪彿'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterial/Attribute_StartDate.qbl b/_Main/BL/Type_PanelMaterial/Attribute_StartDate.qbl
new file mode 100644
index 0000000..faaa2a9
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterial/Attribute_StartDate.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute StartDate
+{
+ #keys: '3[414702.0.155922000][414702.0.155921999][414702.0.155922001]'
+ Description: '寮�濮嬫椂闂�'
+ ValueType: Date
+}
diff --git a/_Main/BL/Type_PanelMaterial/StaticMethod_Send.qbl b/_Main/BL/Type_PanelMaterial/StaticMethod_Send.qbl
new file mode 100644
index 0000000..d1dcf3b
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterial/StaticMethod_Send.qbl
@@ -0,0 +1,37 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod Send (
+ MacroPlan macroPlan,
+ Scenario scenario,
+ String businessType,
+ String address
+)
+{
+ TextBody:
+ [*
+ info( "鐗堟湰鍙凤細", scenario.Name(), " 浜嬩笟閮細", businessType );
+
+ jsonBuilder := JSON::Object();
+
+ jsonBuilder.Add( "releaseDate", Date::ActualDate().Format( "Y-M2-D2" ) );
+ jsonBuilder.Add( "businessType", businessType );
+ jsonBuilder.Add( "scenarioName", scenario.Name() );
+
+ jsonBuilderPanelMaterials := JSON::Array();
+ traverse ( macroPlan, PanelMaterial, pm, true ) {
+ jsonBuilderPanelMaterial := JSON::Object();
+
+ jsonBuilderPanelMaterial.Add( "productID", pm.PanelModel() );
+ jsonBuilderPanelMaterial.Add( "productDescription", pm.MaterialDescription() );
+ jsonBuilderPanelMaterial.Add( "startDate", pm.StartDate().Format( "Y-M2-D2" ) );
+ jsonBuilderPanelMaterial.Add( "quantity", pm.DemandQuantity() );
+
+ jsonBuilderPanelMaterials.Add( jsonBuilderPanelMaterial );
+ }
+ jsonBuilder.Add( "panelMaterials", jsonBuilderPanelMaterials );
+
+ json := jsonBuilder.Build();
+
+ info( json.AsPrettyString() );
+ *]
+}
diff --git a/_Main/BL/Type_PanelMaterial/_ROOT_Type_PanelMaterial.qbl b/_Main/BL/Type_PanelMaterial/_ROOT_Type_PanelMaterial.qbl
new file mode 100644
index 0000000..8fdb774
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterial/_ROOT_Type_PanelMaterial.qbl
@@ -0,0 +1,9 @@
+Quintiq file version 2.0
+#root
+#parent: #DomainModel
+Type PanelMaterial
+{
+ #keys: '5[414702.0.155354979][414702.0.155354977][0.0.0][414702.0.155354978][414702.0.155354980]'
+ BaseType: Object
+ StructuredName: 'PanelMaterials'
+}
diff --git a/_Main/BL/Type_PanelMaterialAll/Attribute_BusinessType.qbl b/_Main/BL/Type_PanelMaterialAll/Attribute_BusinessType.qbl
new file mode 100644
index 0000000..f22c4f3
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialAll/Attribute_BusinessType.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute BusinessType
+{
+ #keys: '3[414702.0.196801424][414702.0.196801423][414702.0.196801425]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialAll/Attribute_ScenarioName.qbl b/_Main/BL/Type_PanelMaterialAll/Attribute_ScenarioName.qbl
new file mode 100644
index 0000000..e737a6c
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialAll/Attribute_ScenarioName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ScenarioName
+{
+ #keys: '3[414702.0.196801434][414702.0.196801433][414702.0.196801435]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialAll/Attribute_releaseDate.qbl b/_Main/BL/Type_PanelMaterialAll/Attribute_releaseDate.qbl
new file mode 100644
index 0000000..2e6a274
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialAll/Attribute_releaseDate.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ReleaseDate
+{
+ #keys: '3[414702.0.196801411][414702.0.196801410][414702.0.196801412]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialAll/_ROOT_Type_PanelMaterialAll.qbl b/_Main/BL/Type_PanelMaterialAll/_ROOT_Type_PanelMaterialAll.qbl
new file mode 100644
index 0000000..b1b5b06
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialAll/_ROOT_Type_PanelMaterialAll.qbl
@@ -0,0 +1,9 @@
+Quintiq file version 2.0
+#root
+#parent: #DomainModel
+Type PanelMaterialAll
+{
+ #keys: '5[414702.0.196801373][414702.0.196801371][0.0.0][414702.0.196801372][414702.0.196801374]'
+ BaseType: Object
+ StructuredName: 'PanelMaterialAlls'
+}
diff --git a/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_CurrencyID.qbl b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_CurrencyID.qbl
new file mode 100644
index 0000000..fc74b78
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_CurrencyID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute CurrencyID
+{
+ #keys: '3[414702.0.203680160][414702.0.203680159][414702.0.203680161]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_Customer.qbl b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_Customer.qbl
new file mode 100644
index 0000000..d9269fa
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_Customer.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Customer
+{
+ #keys: '3[414702.0.203680121][414702.0.203680120][414702.0.203680122]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_CustomerID.qbl b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_CustomerID.qbl
new file mode 100644
index 0000000..13c1686
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_CustomerID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute CustomerID
+{
+ #keys: '3[414702.0.203680130][414702.0.203680129][414702.0.203680131]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_ID.qbl b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_ID.qbl
new file mode 100644
index 0000000..58841e2
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_ID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ID
+{
+ #keys: '3[414702.0.203680118][414702.0.203680117][414702.0.203680119]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_IsEligibleForNetting.qbl b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_IsEligibleForNetting.qbl
new file mode 100644
index 0000000..5f38c00
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_IsEligibleForNetting.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute IsEligibleForNetting
+{
+ #keys: '3[414702.0.203680148][414702.0.203680147][414702.0.203680149]'
+ ValueType: Boolean
+}
diff --git a/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_IsExcludedFromFulfillmentKPIUser.qbl b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_IsExcludedFromFulfillmentKPIUser.qbl
new file mode 100644
index 0000000..a2238f1
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_IsExcludedFromFulfillmentKPIUser.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute IsExcludedFromFulfillmentKPIUser
+{
+ #keys: '3[414702.0.203680157][414702.0.203680156][414702.0.203680158]'
+ ValueType: Boolean
+}
diff --git a/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_IsFirmed.qbl b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_IsFirmed.qbl
new file mode 100644
index 0000000..26ca570
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_IsFirmed.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute IsFirmed
+{
+ #keys: '3[414702.0.203680127][414702.0.203680126][414702.0.203680128]'
+ ValueType: Boolean
+}
diff --git a/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_OrderDate.qbl b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_OrderDate.qbl
new file mode 100644
index 0000000..85de69d
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_OrderDate.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute OrderDate
+{
+ #keys: '3[414702.0.203680136][414702.0.203680135][414702.0.203680137]'
+ ValueType: Date
+}
diff --git a/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_OrderID.qbl b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_OrderID.qbl
new file mode 100644
index 0000000..a0e0c47
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_OrderID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute OrderID
+{
+ #keys: '3[414702.0.203680142][414702.0.203680141][414702.0.203680143]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_OrderLineID.qbl b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_OrderLineID.qbl
new file mode 100644
index 0000000..8d3d87b
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_OrderLineID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute OrderLineID
+{
+ #keys: '3[414702.0.203680151][414702.0.203680150][414702.0.203680152]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_Price.qbl b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_Price.qbl
new file mode 100644
index 0000000..7bf7192
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_Price.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Price
+{
+ #keys: '3[414702.0.203680133][414702.0.203680132][414702.0.203680134]'
+ ValueType: Real
+}
diff --git a/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_PriorityName.qbl b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_PriorityName.qbl
new file mode 100644
index 0000000..daed52a
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_PriorityName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute PriorityName
+{
+ #keys: '3[414702.0.203680154][414702.0.203680153][414702.0.203680155]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_ProductID.qbl b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_ProductID.qbl
new file mode 100644
index 0000000..ce2771f
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_ProductID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ProductID
+{
+ #keys: '3[414702.0.203680112][414702.0.203680111][414702.0.203680113]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_Quantity.qbl b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_Quantity.qbl
new file mode 100644
index 0000000..6496814
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_Quantity.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Quantity
+{
+ #keys: '3[414702.0.203680115][414702.0.203680114][414702.0.203680116]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_SalesSegmentName.qbl b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_SalesSegmentName.qbl
new file mode 100644
index 0000000..561bb1c
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_SalesSegmentName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute SalesSegmentName
+{
+ #keys: '3[414702.0.203680145][414702.0.203680144][414702.0.203680146]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_StockingPointID.qbl b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_StockingPointID.qbl
new file mode 100644
index 0000000..e980d9b
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_StockingPointID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute StockingPointID
+{
+ #keys: '3[414702.0.203680139][414702.0.203680138][414702.0.203680140]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_UnitOfMeasureName.qbl b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_UnitOfMeasureName.qbl
new file mode 100644
index 0000000..313af13
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/Attribute_UnitOfMeasureName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute UnitOfMeasureName
+{
+ #keys: '3[414702.0.203680124][414702.0.203680123][414702.0.203680125]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_CurrencyID.qbl b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_CurrencyID.qbl
new file mode 100644
index 0000000..9a0e812
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_CurrencyID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'CNY'
+ TargetAttribute: CurrencyID
+}
diff --git a/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_Customer.qbl b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_Customer.qbl
new file mode 100644
index 0000000..e02a336
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_Customer.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: Customer
+}
diff --git a/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_CustomerID.qbl b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_CustomerID.qbl
new file mode 100644
index 0000000..66ae438
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_CustomerID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: CustomerID
+}
diff --git a/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_ID.qbl b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_ID.qbl
new file mode 100644
index 0000000..049abc0
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_ID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: ID
+}
diff --git a/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_IsEligibleForNetting.qbl b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_IsEligibleForNetting.qbl
new file mode 100644
index 0000000..8b36496
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_IsEligibleForNetting.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'true'
+ TargetAttribute: IsEligibleForNetting
+}
diff --git a/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_IsExcludedFromFulfillmentKPIUser.qbl b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_IsExcludedFromFulfillmentKPIUser.qbl
new file mode 100644
index 0000000..d0e348d
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_IsExcludedFromFulfillmentKPIUser.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'false'
+ TargetAttribute: IsExcludedFromFulfillmentKPIUser
+}
diff --git a/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_IsFirmed.qbl b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_IsFirmed.qbl
new file mode 100644
index 0000000..0f7ae4c
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_IsFirmed.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'true'
+ TargetAttribute: IsFirmed
+}
diff --git a/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_OrderID.qbl b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_OrderID.qbl
new file mode 100644
index 0000000..05c5cf1
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_OrderID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: OrderID
+}
diff --git a/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_OrderLineID.qbl b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_OrderLineID.qbl
new file mode 100644
index 0000000..01ff2bf
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_OrderLineID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: OrderLineID
+}
diff --git a/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_Price.qbl b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_Price.qbl
new file mode 100644
index 0000000..577db4c
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_Price.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: '0'
+ TargetAttribute: Price
+}
diff --git a/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_PriorityName.qbl b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_PriorityName.qbl
new file mode 100644
index 0000000..7c6efaa
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_PriorityName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'Normal'
+ TargetAttribute: PriorityName
+}
diff --git a/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_ProductID.qbl b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_ProductID.qbl
new file mode 100644
index 0000000..98649b2
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_ProductID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: ProductID
+}
diff --git a/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_Quantity.qbl b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_Quantity.qbl
new file mode 100644
index 0000000..9e759b3
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_Quantity.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: Quantity
+}
diff --git a/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_SalesSegmentName.qbl b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_SalesSegmentName.qbl
new file mode 100644
index 0000000..521966d
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_SalesSegmentName.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: SalesSegmentName
+}
diff --git a/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_StockingPointID.qbl b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_StockingPointID.qbl
new file mode 100644
index 0000000..6110bce
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_StockingPointID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: '鎴愬搧浠�'
+ TargetAttribute: StockingPointID
+}
diff --git a/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_UnitOfMeasureName.qbl b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_UnitOfMeasureName.qbl
new file mode 100644
index 0000000..7f9ab5e
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/DefaultValue_UnitOfMeasureName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'SHT'
+ TargetAttribute: UnitOfMeasureName
+}
diff --git a/_Main/BL/Type_PanelMaterialAutomotiveElectronics/StaticMethod_ReceiveDataGeneration.qbl b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/StaticMethod_ReceiveDataGeneration.qbl
new file mode 100644
index 0000000..2d21864
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/StaticMethod_ReceiveDataGeneration.qbl
@@ -0,0 +1,65 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod ReceiveDataGeneration (
+ GlobalOTDTable globalOTDTable,
+ NamedValueTree requestnvt
+)
+{
+ TextBody:
+ [*
+ nameValue := requestnvt.Root();
+
+ bodyHandle := requestnvt.GetHandle( "Body" );
+ restHandle := requestnvt.GetHandle( "Rest" );
+ restPayloadHandle := requestnvt.GetHandle( "RestPayload" );
+
+ bodyNameValue := nameValue.Child( bodyHandle );
+ restNameValue := bodyNameValue.Child( restHandle );
+ restPayloadNameValue := restNameValue.Child( restPayloadHandle );
+
+ releaseDateHandle := requestnvt.GetHandle( "releaseDate" );
+ businessTypeHandle := requestnvt.GetHandle( "businessType" );
+ scenarioNameHandle := requestnvt.GetHandle( "scenarioName" );
+
+ releaseDateNameValue := restPayloadNameValue.Child( releaseDateHandle );
+ businessTypeNameValue := restPayloadNameValue.Child( businessTypeHandle );
+ scenarioNameNameValue := restPayloadNameValue.Child( scenarioNameHandle );
+
+ panelMaterialAll := select( globalOTDTable, PanelMaterialAll, tempPMA, tempPMA.ScenarioName() = scenarioNameNameValue.GetValueAsString() );
+ if ( not isnull( panelMaterialAll ) ) {
+ panelMaterialAll.Delete();
+ }
+ panelMaterialAll := globalOTDTable.PanelMaterialAll( relnew,
+ ReleaseDate := releaseDateNameValue.GetValueAsString(),
+ BusinessType := businessTypeNameValue.GetValueAsString(),
+ ScenarioName := scenarioNameNameValue.GetValueAsString()
+ );
+
+ panelMaterialsHandle := requestnvt.GetHandle( "panelMaterials" );
+ panelMaterialsNameValue := restPayloadNameValue.Child( panelMaterialsHandle );
+ childPanelMaterialsNameValue := panelMaterialsNameValue.Children();
+ productIDHandle := requestnvt.GetHandle( "productID" );
+ productDescriptionHandle := requestnvt.GetHandle( "productDescription" );
+ startDateHandle := requestnvt.GetHandle( "startDate" );
+ quantityHandle := requestnvt.GetHandle( "quantity" );
+
+ cnv2 := StringToDate::StandardConverter();
+ cnv2.SetCustomConversion();
+ cnv2.CustomFormatString( 'yyyy-MM-dd' );
+
+ traverse ( childPanelMaterialsNameValue, Elements, cpmnv ) {
+ info( "浜у搧锛�", cpmnv.Child( productIDHandle ).GetValueAsString() );
+ info( "浜у搧鎻忚堪锛�", cpmnv.Child( productDescriptionHandle ).GetValueAsString() );
+ info( "寮�濮嬫椂闂达細", cpmnv.Child( startDateHandle ).GetValueAsString() );
+ info( "鏁伴噺锛�", cpmnv.Child( quantityHandle ).GetValueAsString() );
+ panelMaterialAll.PanelMaterialAutomotiveElectronics( relnew,
+ Customer := businessTypeNameValue.GetValueAsString(),
+ ID := OS::GenerateGUIDAsString(),
+ OrderDate := cnv2.Convert( cpmnv.Child( startDateHandle ).GetValueAsString() ),
+ ProductID := cpmnv.Child( productIDHandle ).GetValueAsString(),
+ Quantity := cpmnv.Child( quantityHandle ).GetValueAsString(),
+ SalesSegmentName := businessTypeNameValue.GetValueAsString()
+ );
+ }
+ *]
+}
diff --git a/_Main/BL/Type_PanelMaterialAutomotiveElectronics/_ROOT_Type_PanelMaterialAutomotiveElectronics.qbl b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/_ROOT_Type_PanelMaterialAutomotiveElectronics.qbl
new file mode 100644
index 0000000..c63be50
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialAutomotiveElectronics/_ROOT_Type_PanelMaterialAutomotiveElectronics.qbl
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+#root
+#parent: #DomainModel
+Type PanelMaterialAutomotiveElectronics
+{
+ #keys: '5[414702.0.203680106][414702.0.203680104][0.0.0][414702.0.203680105][414702.0.203680107]'
+ BaseType: Object
+ Description: '姹借溅鐢靛瓙'
+ StructuredName: 'PanelMaterialAutomotiveElectronicss'
+}
diff --git a/_Main/BL/Type_PanelMaterialIT/Attribute_CurrencyID.qbl b/_Main/BL/Type_PanelMaterialIT/Attribute_CurrencyID.qbl
new file mode 100644
index 0000000..e3c8994
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialIT/Attribute_CurrencyID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute CurrencyID
+{
+ #keys: '3[414702.0.203680339][414702.0.203680338][414702.0.203680340]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialIT/Attribute_Customer.qbl b/_Main/BL/Type_PanelMaterialIT/Attribute_Customer.qbl
new file mode 100644
index 0000000..555bae6
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialIT/Attribute_Customer.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Customer
+{
+ #keys: '3[414702.0.203680306][414702.0.203680305][414702.0.203680307]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialIT/Attribute_CustomerID.qbl b/_Main/BL/Type_PanelMaterialIT/Attribute_CustomerID.qbl
new file mode 100644
index 0000000..3ba73d5
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialIT/Attribute_CustomerID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute CustomerID
+{
+ #keys: '3[414702.0.203680330][414702.0.203680329][414702.0.203680331]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialIT/Attribute_ID.qbl b/_Main/BL/Type_PanelMaterialIT/Attribute_ID.qbl
new file mode 100644
index 0000000..5653f06
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialIT/Attribute_ID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ID
+{
+ #keys: '3[414702.0.203680318][414702.0.203680317][414702.0.203680319]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialIT/Attribute_IsEligibleForNetting.qbl b/_Main/BL/Type_PanelMaterialIT/Attribute_IsEligibleForNetting.qbl
new file mode 100644
index 0000000..816b1ac
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialIT/Attribute_IsEligibleForNetting.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute IsEligibleForNetting
+{
+ #keys: '3[414702.0.203680309][414702.0.203680308][414702.0.203680310]'
+ ValueType: Boolean
+}
diff --git a/_Main/BL/Type_PanelMaterialIT/Attribute_IsExcludedFromFulfillmentKPIUser.qbl b/_Main/BL/Type_PanelMaterialIT/Attribute_IsExcludedFromFulfillmentKPIUser.qbl
new file mode 100644
index 0000000..149a11e
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialIT/Attribute_IsExcludedFromFulfillmentKPIUser.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute IsExcludedFromFulfillmentKPIUser
+{
+ #keys: '3[414702.0.203680342][414702.0.203680341][414702.0.203680343]'
+ ValueType: Boolean
+}
diff --git a/_Main/BL/Type_PanelMaterialIT/Attribute_IsFirmed.qbl b/_Main/BL/Type_PanelMaterialIT/Attribute_IsFirmed.qbl
new file mode 100644
index 0000000..03c684f
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialIT/Attribute_IsFirmed.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute IsFirmed
+{
+ #keys: '3[414702.0.203680333][414702.0.203680332][414702.0.203680334]'
+ ValueType: Boolean
+}
diff --git a/_Main/BL/Type_PanelMaterialIT/Attribute_OrderDate.qbl b/_Main/BL/Type_PanelMaterialIT/Attribute_OrderDate.qbl
new file mode 100644
index 0000000..4ffafb0
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialIT/Attribute_OrderDate.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute OrderDate
+{
+ #keys: '3[414702.0.203680297][414702.0.203680296][414702.0.203680298]'
+ ValueType: Date
+}
diff --git a/_Main/BL/Type_PanelMaterialIT/Attribute_OrderID.qbl b/_Main/BL/Type_PanelMaterialIT/Attribute_OrderID.qbl
new file mode 100644
index 0000000..2bf9636
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialIT/Attribute_OrderID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute OrderID
+{
+ #keys: '3[414702.0.203680303][414702.0.203680302][414702.0.203680304]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialIT/Attribute_OrderLineID.qbl b/_Main/BL/Type_PanelMaterialIT/Attribute_OrderLineID.qbl
new file mode 100644
index 0000000..138cf52
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialIT/Attribute_OrderLineID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute OrderLineID
+{
+ #keys: '3[414702.0.203680327][414702.0.203680326][414702.0.203680328]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialIT/Attribute_Price.qbl b/_Main/BL/Type_PanelMaterialIT/Attribute_Price.qbl
new file mode 100644
index 0000000..3a5f704
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialIT/Attribute_Price.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Price
+{
+ #keys: '3[414702.0.203680300][414702.0.203680299][414702.0.203680301]'
+ ValueType: Real
+}
diff --git a/_Main/BL/Type_PanelMaterialIT/Attribute_PriorityName.qbl b/_Main/BL/Type_PanelMaterialIT/Attribute_PriorityName.qbl
new file mode 100644
index 0000000..4779ec2
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialIT/Attribute_PriorityName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute PriorityName
+{
+ #keys: '3[414702.0.203680345][414702.0.203680344][414702.0.203680346]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialIT/Attribute_ProductID.qbl b/_Main/BL/Type_PanelMaterialIT/Attribute_ProductID.qbl
new file mode 100644
index 0000000..2699c22
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialIT/Attribute_ProductID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ProductID
+{
+ #keys: '3[414702.0.203680312][414702.0.203680311][414702.0.203680313]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialIT/Attribute_Quantity.qbl b/_Main/BL/Type_PanelMaterialIT/Attribute_Quantity.qbl
new file mode 100644
index 0000000..497c494
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialIT/Attribute_Quantity.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Quantity
+{
+ #keys: '3[414702.0.203680321][414702.0.203680320][414702.0.203680322]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialIT/Attribute_SalesSegmentName.qbl b/_Main/BL/Type_PanelMaterialIT/Attribute_SalesSegmentName.qbl
new file mode 100644
index 0000000..5fce212
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialIT/Attribute_SalesSegmentName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute SalesSegmentName
+{
+ #keys: '3[414702.0.203680324][414702.0.203680323][414702.0.203680325]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialIT/Attribute_StockingPointID.qbl b/_Main/BL/Type_PanelMaterialIT/Attribute_StockingPointID.qbl
new file mode 100644
index 0000000..dacd3b8
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialIT/Attribute_StockingPointID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute StockingPointID
+{
+ #keys: '3[414702.0.203680336][414702.0.203680335][414702.0.203680337]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialIT/Attribute_UnitOfMeasureName.qbl b/_Main/BL/Type_PanelMaterialIT/Attribute_UnitOfMeasureName.qbl
new file mode 100644
index 0000000..036c2b3
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialIT/Attribute_UnitOfMeasureName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute UnitOfMeasureName
+{
+ #keys: '3[414702.0.203680315][414702.0.203680314][414702.0.203680316]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialIT/DefaultValue_CurrencyID.qbl b/_Main/BL/Type_PanelMaterialIT/DefaultValue_CurrencyID.qbl
new file mode 100644
index 0000000..9a0e812
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialIT/DefaultValue_CurrencyID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'CNY'
+ TargetAttribute: CurrencyID
+}
diff --git a/_Main/BL/Type_PanelMaterialIT/DefaultValue_Customer.qbl b/_Main/BL/Type_PanelMaterialIT/DefaultValue_Customer.qbl
new file mode 100644
index 0000000..e02a336
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialIT/DefaultValue_Customer.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: Customer
+}
diff --git a/_Main/BL/Type_PanelMaterialIT/DefaultValue_CustomerID.qbl b/_Main/BL/Type_PanelMaterialIT/DefaultValue_CustomerID.qbl
new file mode 100644
index 0000000..66ae438
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialIT/DefaultValue_CustomerID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: CustomerID
+}
diff --git a/_Main/BL/Type_PanelMaterialIT/DefaultValue_ID.qbl b/_Main/BL/Type_PanelMaterialIT/DefaultValue_ID.qbl
new file mode 100644
index 0000000..049abc0
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialIT/DefaultValue_ID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: ID
+}
diff --git a/_Main/BL/Type_PanelMaterialIT/DefaultValue_IsEligibleForNetting.qbl b/_Main/BL/Type_PanelMaterialIT/DefaultValue_IsEligibleForNetting.qbl
new file mode 100644
index 0000000..8b36496
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialIT/DefaultValue_IsEligibleForNetting.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'true'
+ TargetAttribute: IsEligibleForNetting
+}
diff --git a/_Main/BL/Type_PanelMaterialIT/DefaultValue_IsExcludedFromFulfillmentKPIUser.qbl b/_Main/BL/Type_PanelMaterialIT/DefaultValue_IsExcludedFromFulfillmentKPIUser.qbl
new file mode 100644
index 0000000..d0e348d
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialIT/DefaultValue_IsExcludedFromFulfillmentKPIUser.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'false'
+ TargetAttribute: IsExcludedFromFulfillmentKPIUser
+}
diff --git a/_Main/BL/Type_PanelMaterialIT/DefaultValue_IsFirmed.qbl b/_Main/BL/Type_PanelMaterialIT/DefaultValue_IsFirmed.qbl
new file mode 100644
index 0000000..0f7ae4c
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialIT/DefaultValue_IsFirmed.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'true'
+ TargetAttribute: IsFirmed
+}
diff --git a/_Main/BL/Type_PanelMaterialIT/DefaultValue_OrderID.qbl b/_Main/BL/Type_PanelMaterialIT/DefaultValue_OrderID.qbl
new file mode 100644
index 0000000..05c5cf1
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialIT/DefaultValue_OrderID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: OrderID
+}
diff --git a/_Main/BL/Type_PanelMaterialIT/DefaultValue_OrderLineID.qbl b/_Main/BL/Type_PanelMaterialIT/DefaultValue_OrderLineID.qbl
new file mode 100644
index 0000000..01ff2bf
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialIT/DefaultValue_OrderLineID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: OrderLineID
+}
diff --git a/_Main/BL/Type_PanelMaterialIT/DefaultValue_Price.qbl b/_Main/BL/Type_PanelMaterialIT/DefaultValue_Price.qbl
new file mode 100644
index 0000000..577db4c
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialIT/DefaultValue_Price.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: '0'
+ TargetAttribute: Price
+}
diff --git a/_Main/BL/Type_PanelMaterialIT/DefaultValue_PriorityName.qbl b/_Main/BL/Type_PanelMaterialIT/DefaultValue_PriorityName.qbl
new file mode 100644
index 0000000..7c6efaa
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialIT/DefaultValue_PriorityName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'Normal'
+ TargetAttribute: PriorityName
+}
diff --git a/_Main/BL/Type_PanelMaterialIT/DefaultValue_ProductID.qbl b/_Main/BL/Type_PanelMaterialIT/DefaultValue_ProductID.qbl
new file mode 100644
index 0000000..98649b2
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialIT/DefaultValue_ProductID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: ProductID
+}
diff --git a/_Main/BL/Type_PanelMaterialIT/DefaultValue_Quantity.qbl b/_Main/BL/Type_PanelMaterialIT/DefaultValue_Quantity.qbl
new file mode 100644
index 0000000..9e759b3
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialIT/DefaultValue_Quantity.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: Quantity
+}
diff --git a/_Main/BL/Type_PanelMaterialIT/DefaultValue_SalesSegmentName.qbl b/_Main/BL/Type_PanelMaterialIT/DefaultValue_SalesSegmentName.qbl
new file mode 100644
index 0000000..521966d
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialIT/DefaultValue_SalesSegmentName.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: SalesSegmentName
+}
diff --git a/_Main/BL/Type_PanelMaterialIT/DefaultValue_StockingPointID.qbl b/_Main/BL/Type_PanelMaterialIT/DefaultValue_StockingPointID.qbl
new file mode 100644
index 0000000..6110bce
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialIT/DefaultValue_StockingPointID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: '鎴愬搧浠�'
+ TargetAttribute: StockingPointID
+}
diff --git a/_Main/BL/Type_PanelMaterialIT/DefaultValue_UnitOfMeasureName.qbl b/_Main/BL/Type_PanelMaterialIT/DefaultValue_UnitOfMeasureName.qbl
new file mode 100644
index 0000000..7f9ab5e
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialIT/DefaultValue_UnitOfMeasureName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'SHT'
+ TargetAttribute: UnitOfMeasureName
+}
diff --git a/_Main/BL/Type_PanelMaterialIT/StaticMethod_ReceiveDataGeneration.qbl b/_Main/BL/Type_PanelMaterialIT/StaticMethod_ReceiveDataGeneration.qbl
new file mode 100644
index 0000000..195adab
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialIT/StaticMethod_ReceiveDataGeneration.qbl
@@ -0,0 +1,65 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod ReceiveDataGeneration (
+ GlobalOTDTable globalOTDTable,
+ NamedValueTree requestnvt
+)
+{
+ TextBody:
+ [*
+ nameValue := requestnvt.Root();
+
+ bodyHandle := requestnvt.GetHandle( "Body" );
+ restHandle := requestnvt.GetHandle( "Rest" );
+ restPayloadHandle := requestnvt.GetHandle( "RestPayload" );
+
+ bodyNameValue := nameValue.Child( bodyHandle );
+ restNameValue := bodyNameValue.Child( restHandle );
+ restPayloadNameValue := restNameValue.Child( restPayloadHandle );
+
+ releaseDateHandle := requestnvt.GetHandle( "releaseDate" );
+ businessTypeHandle := requestnvt.GetHandle( "businessType" );
+ scenarioNameHandle := requestnvt.GetHandle( "scenarioName" );
+
+ releaseDateNameValue := restPayloadNameValue.Child( releaseDateHandle );
+ businessTypeNameValue := restPayloadNameValue.Child( businessTypeHandle );
+ scenarioNameNameValue := restPayloadNameValue.Child( scenarioNameHandle );
+
+ panelMaterialAll := select( globalOTDTable, PanelMaterialAll, tempPMA, tempPMA.ScenarioName() = scenarioNameNameValue.GetValueAsString() );
+ if ( not isnull( panelMaterialAll ) ) {
+ panelMaterialAll.Delete();
+ }
+ panelMaterialAll := globalOTDTable.PanelMaterialAll( relnew,
+ ReleaseDate := releaseDateNameValue.GetValueAsString(),
+ BusinessType := businessTypeNameValue.GetValueAsString(),
+ ScenarioName := scenarioNameNameValue.GetValueAsString()
+ );
+
+ panelMaterialsHandle := requestnvt.GetHandle( "panelMaterials" );
+ panelMaterialsNameValue := restPayloadNameValue.Child( panelMaterialsHandle );
+ childPanelMaterialsNameValue := panelMaterialsNameValue.Children();
+ productIDHandle := requestnvt.GetHandle( "productID" );
+ productDescriptionHandle := requestnvt.GetHandle( "productDescription" );
+ startDateHandle := requestnvt.GetHandle( "startDate" );
+ quantityHandle := requestnvt.GetHandle( "quantity" );
+
+ cnv2 := StringToDate::StandardConverter();
+ cnv2.SetCustomConversion();
+ cnv2.CustomFormatString( 'yyyy-MM-dd' );
+
+ traverse ( childPanelMaterialsNameValue, Elements, cpmnv ) {
+ info( "浜у搧锛�", cpmnv.Child( productIDHandle ).GetValueAsString() );
+ info( "浜у搧鎻忚堪锛�", cpmnv.Child( productDescriptionHandle ).GetValueAsString() );
+ info( "寮�濮嬫椂闂达細", cpmnv.Child( startDateHandle ).GetValueAsString() );
+ info( "鏁伴噺锛�", cpmnv.Child( quantityHandle ).GetValueAsString() );
+ panelMaterialAll.PanelMaterialIT( relnew,
+ Customer := businessTypeNameValue.GetValueAsString(),
+ ID := OS::GenerateGUIDAsString(),
+ OrderDate := cnv2.Convert( cpmnv.Child( startDateHandle ).GetValueAsString() ),
+ ProductID := cpmnv.Child( productIDHandle ).GetValueAsString(),
+ Quantity := cpmnv.Child( quantityHandle ).GetValueAsString(),
+ SalesSegmentName := businessTypeNameValue.GetValueAsString()
+ );
+ }
+ *]
+}
diff --git a/_Main/BL/Type_PanelMaterialIT/_ROOT_Type_PanelMaterialIT.qbl b/_Main/BL/Type_PanelMaterialIT/_ROOT_Type_PanelMaterialIT.qbl
new file mode 100644
index 0000000..9e43a52
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialIT/_ROOT_Type_PanelMaterialIT.qbl
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+#root
+#parent: #DomainModel
+Type PanelMaterialIT
+{
+ #keys: '5[414702.0.203680278][414702.0.203680276][0.0.0][414702.0.203680277][414702.0.203680279]'
+ BaseType: Object
+ Description: 'IT'
+ StructuredName: 'PanelMaterialITs'
+}
diff --git a/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_CurrencyID.qbl b/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_CurrencyID.qbl
new file mode 100644
index 0000000..8dd0c12
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_CurrencyID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute CurrencyID
+{
+ #keys: '3[414702.0.203671554][414702.0.203671553][414702.0.203671555]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_Customer.qbl b/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_Customer.qbl
new file mode 100644
index 0000000..4feca35
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_Customer.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Customer
+{
+ #keys: '3[414702.0.203671521][414702.0.203671520][414702.0.203671522]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_CustomerID.qbl b/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_CustomerID.qbl
new file mode 100644
index 0000000..f3ff58f
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_CustomerID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute CustomerID
+{
+ #keys: '3[414702.0.203671545][414702.0.203671544][414702.0.203671546]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_ID.qbl b/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_ID.qbl
new file mode 100644
index 0000000..243d94b
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_ID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ID
+{
+ #keys: '3[414702.0.203671533][414702.0.203671532][414702.0.203671534]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_IsEligibleForNetting.qbl b/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_IsEligibleForNetting.qbl
new file mode 100644
index 0000000..192c647
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_IsEligibleForNetting.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute IsEligibleForNetting
+{
+ #keys: '3[414702.0.203671524][414702.0.203671523][414702.0.203671525]'
+ ValueType: Boolean
+}
diff --git a/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_IsExcludedFromFulfillmentKPIUser.qbl b/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_IsExcludedFromFulfillmentKPIUser.qbl
new file mode 100644
index 0000000..0ec007c
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_IsExcludedFromFulfillmentKPIUser.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute IsExcludedFromFulfillmentKPIUser
+{
+ #keys: '3[414702.0.203671557][414702.0.203671556][414702.0.203671558]'
+ ValueType: Boolean
+}
diff --git a/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_IsFirmed.qbl b/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_IsFirmed.qbl
new file mode 100644
index 0000000..a7b488f
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_IsFirmed.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute IsFirmed
+{
+ #keys: '3[414702.0.203671548][414702.0.203671547][414702.0.203671549]'
+ ValueType: Boolean
+}
diff --git a/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_OrderDate.qbl b/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_OrderDate.qbl
new file mode 100644
index 0000000..385b4cd
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_OrderDate.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute OrderDate
+{
+ #keys: '3[414702.0.203671512][414702.0.203671511][414702.0.203671513]'
+ ValueType: Date
+}
diff --git a/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_OrderID.qbl b/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_OrderID.qbl
new file mode 100644
index 0000000..70937cf
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_OrderID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute OrderID
+{
+ #keys: '3[414702.0.203671518][414702.0.203671517][414702.0.203671519]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_OrderLineID.qbl b/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_OrderLineID.qbl
new file mode 100644
index 0000000..6d6f80a
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_OrderLineID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute OrderLineID
+{
+ #keys: '3[414702.0.203671542][414702.0.203671541][414702.0.203671543]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_Price.qbl b/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_Price.qbl
new file mode 100644
index 0000000..06ea926
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_Price.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Price
+{
+ #keys: '3[414702.0.203671515][414702.0.203671514][414702.0.203671516]'
+ ValueType: Real
+}
diff --git a/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_PriorityName.qbl b/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_PriorityName.qbl
new file mode 100644
index 0000000..65441bd
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_PriorityName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute PriorityName
+{
+ #keys: '3[414702.0.203671560][414702.0.203671559][414702.0.203671561]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_ProductID.qbl b/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_ProductID.qbl
new file mode 100644
index 0000000..a0b2ab2
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_ProductID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ProductID
+{
+ #keys: '3[414702.0.203671527][414702.0.203671526][414702.0.203671528]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_Quantity.qbl b/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_Quantity.qbl
new file mode 100644
index 0000000..65e10f2
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_Quantity.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Quantity
+{
+ #keys: '3[414702.0.203671536][414702.0.203671535][414702.0.203671537]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_SalesSegmentName.qbl b/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_SalesSegmentName.qbl
new file mode 100644
index 0000000..fba40f3
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_SalesSegmentName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute SalesSegmentName
+{
+ #keys: '3[414702.0.203671539][414702.0.203671538][414702.0.203671540]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_StockingPointID.qbl b/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_StockingPointID.qbl
new file mode 100644
index 0000000..f2917a8
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_StockingPointID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute StockingPointID
+{
+ #keys: '3[414702.0.203671551][414702.0.203671550][414702.0.203671552]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_UnitOfMeasureName.qbl b/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_UnitOfMeasureName.qbl
new file mode 100644
index 0000000..9b9e6ed
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSpecializedDisplay/Attribute_UnitOfMeasureName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute UnitOfMeasureName
+{
+ #keys: '3[414702.0.203671530][414702.0.203671529][414702.0.203671531]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_CurrencyID.qbl b/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_CurrencyID.qbl
new file mode 100644
index 0000000..9a0e812
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_CurrencyID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'CNY'
+ TargetAttribute: CurrencyID
+}
diff --git a/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_Customer.qbl b/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_Customer.qbl
new file mode 100644
index 0000000..e02a336
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_Customer.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: Customer
+}
diff --git a/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_CustomerID.qbl b/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_CustomerID.qbl
new file mode 100644
index 0000000..66ae438
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_CustomerID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: CustomerID
+}
diff --git a/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_ID.qbl b/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_ID.qbl
new file mode 100644
index 0000000..049abc0
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_ID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: ID
+}
diff --git a/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_IsEligibleForNetting.qbl b/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_IsEligibleForNetting.qbl
new file mode 100644
index 0000000..8b36496
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_IsEligibleForNetting.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'true'
+ TargetAttribute: IsEligibleForNetting
+}
diff --git a/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_IsExcludedFromFulfillmentKPIUser.qbl b/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_IsExcludedFromFulfillmentKPIUser.qbl
new file mode 100644
index 0000000..d0e348d
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_IsExcludedFromFulfillmentKPIUser.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'false'
+ TargetAttribute: IsExcludedFromFulfillmentKPIUser
+}
diff --git a/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_IsFirmed.qbl b/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_IsFirmed.qbl
new file mode 100644
index 0000000..0f7ae4c
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_IsFirmed.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'true'
+ TargetAttribute: IsFirmed
+}
diff --git a/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_OrderID.qbl b/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_OrderID.qbl
new file mode 100644
index 0000000..05c5cf1
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_OrderID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: OrderID
+}
diff --git a/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_OrderLineID.qbl b/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_OrderLineID.qbl
new file mode 100644
index 0000000..01ff2bf
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_OrderLineID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: OrderLineID
+}
diff --git a/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_Price.qbl b/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_Price.qbl
new file mode 100644
index 0000000..577db4c
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_Price.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: '0'
+ TargetAttribute: Price
+}
diff --git a/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_PriorityName.qbl b/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_PriorityName.qbl
new file mode 100644
index 0000000..7c6efaa
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_PriorityName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'Normal'
+ TargetAttribute: PriorityName
+}
diff --git a/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_ProductID.qbl b/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_ProductID.qbl
new file mode 100644
index 0000000..98649b2
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_ProductID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: ProductID
+}
diff --git a/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_Quantity.qbl b/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_Quantity.qbl
new file mode 100644
index 0000000..9e759b3
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_Quantity.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: Quantity
+}
diff --git a/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_SalesSegmentName.qbl b/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_SalesSegmentName.qbl
new file mode 100644
index 0000000..521966d
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_SalesSegmentName.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: SalesSegmentName
+}
diff --git a/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_StockingPointID.qbl b/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_StockingPointID.qbl
new file mode 100644
index 0000000..6110bce
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_StockingPointID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: '鎴愬搧浠�'
+ TargetAttribute: StockingPointID
+}
diff --git a/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_UnitOfMeasureName.qbl b/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_UnitOfMeasureName.qbl
new file mode 100644
index 0000000..7f9ab5e
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSpecializedDisplay/DefaultValue_UnitOfMeasureName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'SHT'
+ TargetAttribute: UnitOfMeasureName
+}
diff --git a/_Main/BL/Type_PanelMaterialSpecializedDisplay/StaticMethod_ReceiveDataGeneration.qbl b/_Main/BL/Type_PanelMaterialSpecializedDisplay/StaticMethod_ReceiveDataGeneration.qbl
new file mode 100644
index 0000000..ddb0119
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSpecializedDisplay/StaticMethod_ReceiveDataGeneration.qbl
@@ -0,0 +1,65 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod ReceiveDataGeneration (
+ GlobalOTDTable globalOTDTable,
+ NamedValueTree requestnvt
+)
+{
+ TextBody:
+ [*
+ nameValue := requestnvt.Root();
+
+ bodyHandle := requestnvt.GetHandle( "Body" );
+ restHandle := requestnvt.GetHandle( "Rest" );
+ restPayloadHandle := requestnvt.GetHandle( "RestPayload" );
+
+ bodyNameValue := nameValue.Child( bodyHandle );
+ restNameValue := bodyNameValue.Child( restHandle );
+ restPayloadNameValue := restNameValue.Child( restPayloadHandle );
+
+ releaseDateHandle := requestnvt.GetHandle( "releaseDate" );
+ businessTypeHandle := requestnvt.GetHandle( "businessType" );
+ scenarioNameHandle := requestnvt.GetHandle( "scenarioName" );
+
+ releaseDateNameValue := restPayloadNameValue.Child( releaseDateHandle );
+ businessTypeNameValue := restPayloadNameValue.Child( businessTypeHandle );
+ scenarioNameNameValue := restPayloadNameValue.Child( scenarioNameHandle );
+
+ panelMaterialAll := select( globalOTDTable, PanelMaterialAll, tempPMA, tempPMA.ScenarioName() = scenarioNameNameValue.GetValueAsString() );
+ if ( not isnull( panelMaterialAll ) ) {
+ panelMaterialAll.Delete();
+ }
+ panelMaterialAll := globalOTDTable.PanelMaterialAll( relnew,
+ ReleaseDate := releaseDateNameValue.GetValueAsString(),
+ BusinessType := businessTypeNameValue.GetValueAsString(),
+ ScenarioName := scenarioNameNameValue.GetValueAsString()
+ );
+
+ panelMaterialsHandle := requestnvt.GetHandle( "panelMaterials" );
+ panelMaterialsNameValue := restPayloadNameValue.Child( panelMaterialsHandle );
+ childPanelMaterialsNameValue := panelMaterialsNameValue.Children();
+ productIDHandle := requestnvt.GetHandle( "productID" );
+ productDescriptionHandle := requestnvt.GetHandle( "productDescription" );
+ startDateHandle := requestnvt.GetHandle( "startDate" );
+ quantityHandle := requestnvt.GetHandle( "quantity" );
+
+ cnv2 := StringToDate::StandardConverter();
+ cnv2.SetCustomConversion();
+ cnv2.CustomFormatString( 'yyyy-MM-dd' );
+
+ traverse ( childPanelMaterialsNameValue, Elements, cpmnv ) {
+ info( "浜у搧锛�", cpmnv.Child( productIDHandle ).GetValueAsString() );
+ info( "浜у搧鎻忚堪锛�", cpmnv.Child( productDescriptionHandle ).GetValueAsString() );
+ info( "寮�濮嬫椂闂达細", cpmnv.Child( startDateHandle ).GetValueAsString() );
+ info( "鏁伴噺锛�", cpmnv.Child( quantityHandle ).GetValueAsString() );
+ panelMaterialAll.PanelMaterialSpecializedDisplay( relnew,
+ Customer := businessTypeNameValue.GetValueAsString(),
+ ID := OS::GenerateGUIDAsString(),
+ OrderDate := cnv2.Convert( cpmnv.Child( startDateHandle ).GetValueAsString() ),
+ ProductID := cpmnv.Child( productIDHandle ).GetValueAsString(),
+ Quantity := cpmnv.Child( quantityHandle ).GetValueAsString(),
+ SalesSegmentName := businessTypeNameValue.GetValueAsString()
+ );
+ }
+ *]
+}
diff --git a/_Main/BL/Type_PanelMaterialSpecializedDisplay/_ROOT_Type_PanelMaterialSpecializedDisplay.qbl b/_Main/BL/Type_PanelMaterialSpecializedDisplay/_ROOT_Type_PanelMaterialSpecializedDisplay.qbl
new file mode 100644
index 0000000..483a567
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSpecializedDisplay/_ROOT_Type_PanelMaterialSpecializedDisplay.qbl
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+#root
+#parent: #DomainModel
+Type PanelMaterialSpecializedDisplay
+{
+ #keys: '5[414702.0.203671493][414702.0.203671491][0.0.0][414702.0.203671492][414702.0.203671494]'
+ BaseType: Object
+ Description: '涓撴樉'
+ StructuredName: 'PanelMaterialSpecializedDisplays'
+}
diff --git a/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_CurrencyID.qbl b/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_CurrencyID.qbl
new file mode 100644
index 0000000..c6ac9c1
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_CurrencyID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute CurrencyID
+{
+ #keys: '3[414702.0.203680261][414702.0.203680260][414702.0.203680262]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_Customer.qbl b/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_Customer.qbl
new file mode 100644
index 0000000..16ba69e
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_Customer.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Customer
+{
+ #keys: '3[414702.0.203680228][414702.0.203680227][414702.0.203680229]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_CustomerID.qbl b/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_CustomerID.qbl
new file mode 100644
index 0000000..b8c149a
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_CustomerID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute CustomerID
+{
+ #keys: '3[414702.0.203680252][414702.0.203680251][414702.0.203680253]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_ID.qbl b/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_ID.qbl
new file mode 100644
index 0000000..3ad1519
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_ID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ID
+{
+ #keys: '3[414702.0.203680240][414702.0.203680239][414702.0.203680241]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_IsEligibleForNetting.qbl b/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_IsEligibleForNetting.qbl
new file mode 100644
index 0000000..c1f2e29
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_IsEligibleForNetting.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute IsEligibleForNetting
+{
+ #keys: '3[414702.0.203680231][414702.0.203680230][414702.0.203680232]'
+ ValueType: Boolean
+}
diff --git a/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_IsExcludedFromFulfillmentKPIUser.qbl b/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_IsExcludedFromFulfillmentKPIUser.qbl
new file mode 100644
index 0000000..eae8b92
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_IsExcludedFromFulfillmentKPIUser.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute IsExcludedFromFulfillmentKPIUser
+{
+ #keys: '3[414702.0.203680264][414702.0.203680263][414702.0.203680265]'
+ ValueType: Boolean
+}
diff --git a/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_IsFirmed.qbl b/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_IsFirmed.qbl
new file mode 100644
index 0000000..d9180af
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_IsFirmed.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute IsFirmed
+{
+ #keys: '3[414702.0.203680255][414702.0.203680254][414702.0.203680256]'
+ ValueType: Boolean
+}
diff --git a/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_OrderDate.qbl b/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_OrderDate.qbl
new file mode 100644
index 0000000..b67fd64
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_OrderDate.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute OrderDate
+{
+ #keys: '3[414702.0.203680219][414702.0.203680218][414702.0.203680220]'
+ ValueType: Date
+}
diff --git a/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_OrderID.qbl b/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_OrderID.qbl
new file mode 100644
index 0000000..917dbd5
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_OrderID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute OrderID
+{
+ #keys: '3[414702.0.203680225][414702.0.203680224][414702.0.203680226]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_OrderLineID.qbl b/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_OrderLineID.qbl
new file mode 100644
index 0000000..ba6e8fa
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_OrderLineID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute OrderLineID
+{
+ #keys: '3[414702.0.203680249][414702.0.203680248][414702.0.203680250]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_Price.qbl b/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_Price.qbl
new file mode 100644
index 0000000..8952ea0
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_Price.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Price
+{
+ #keys: '3[414702.0.203680222][414702.0.203680221][414702.0.203680223]'
+ ValueType: Real
+}
diff --git a/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_PriorityName.qbl b/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_PriorityName.qbl
new file mode 100644
index 0000000..6142149
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_PriorityName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute PriorityName
+{
+ #keys: '3[414702.0.203680267][414702.0.203680266][414702.0.203680268]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_ProductID.qbl b/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_ProductID.qbl
new file mode 100644
index 0000000..ef4fa53
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_ProductID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ProductID
+{
+ #keys: '3[414702.0.203680234][414702.0.203680233][414702.0.203680235]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_Quantity.qbl b/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_Quantity.qbl
new file mode 100644
index 0000000..b5c0fe2
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_Quantity.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Quantity
+{
+ #keys: '3[414702.0.203680243][414702.0.203680242][414702.0.203680244]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_SalesSegmentName.qbl b/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_SalesSegmentName.qbl
new file mode 100644
index 0000000..a2b09be
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_SalesSegmentName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute SalesSegmentName
+{
+ #keys: '3[414702.0.203680246][414702.0.203680245][414702.0.203680247]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_StockingPointID.qbl b/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_StockingPointID.qbl
new file mode 100644
index 0000000..423aada
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_StockingPointID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute StockingPointID
+{
+ #keys: '3[414702.0.203680258][414702.0.203680257][414702.0.203680259]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_UnitOfMeasureName.qbl b/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_UnitOfMeasureName.qbl
new file mode 100644
index 0000000..b2fd490
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSportsHealth/Attribute_UnitOfMeasureName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute UnitOfMeasureName
+{
+ #keys: '3[414702.0.203680237][414702.0.203680236][414702.0.203680238]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_CurrencyID.qbl b/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_CurrencyID.qbl
new file mode 100644
index 0000000..9a0e812
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_CurrencyID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'CNY'
+ TargetAttribute: CurrencyID
+}
diff --git a/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_Customer.qbl b/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_Customer.qbl
new file mode 100644
index 0000000..e02a336
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_Customer.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: Customer
+}
diff --git a/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_CustomerID.qbl b/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_CustomerID.qbl
new file mode 100644
index 0000000..66ae438
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_CustomerID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: CustomerID
+}
diff --git a/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_ID.qbl b/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_ID.qbl
new file mode 100644
index 0000000..049abc0
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_ID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: ID
+}
diff --git a/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_IsEligibleForNetting.qbl b/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_IsEligibleForNetting.qbl
new file mode 100644
index 0000000..8b36496
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_IsEligibleForNetting.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'true'
+ TargetAttribute: IsEligibleForNetting
+}
diff --git a/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_IsExcludedFromFulfillmentKPIUser.qbl b/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_IsExcludedFromFulfillmentKPIUser.qbl
new file mode 100644
index 0000000..d0e348d
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_IsExcludedFromFulfillmentKPIUser.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'false'
+ TargetAttribute: IsExcludedFromFulfillmentKPIUser
+}
diff --git a/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_IsFirmed.qbl b/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_IsFirmed.qbl
new file mode 100644
index 0000000..0f7ae4c
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_IsFirmed.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'true'
+ TargetAttribute: IsFirmed
+}
diff --git a/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_OrderID.qbl b/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_OrderID.qbl
new file mode 100644
index 0000000..05c5cf1
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_OrderID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: OrderID
+}
diff --git a/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_OrderLineID.qbl b/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_OrderLineID.qbl
new file mode 100644
index 0000000..01ff2bf
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_OrderLineID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: OrderLineID
+}
diff --git a/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_Price.qbl b/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_Price.qbl
new file mode 100644
index 0000000..577db4c
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_Price.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: '0'
+ TargetAttribute: Price
+}
diff --git a/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_PriorityName.qbl b/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_PriorityName.qbl
new file mode 100644
index 0000000..7c6efaa
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_PriorityName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'Normal'
+ TargetAttribute: PriorityName
+}
diff --git a/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_ProductID.qbl b/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_ProductID.qbl
new file mode 100644
index 0000000..98649b2
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_ProductID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: ProductID
+}
diff --git a/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_Quantity.qbl b/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_Quantity.qbl
new file mode 100644
index 0000000..9e759b3
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_Quantity.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: Quantity
+}
diff --git a/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_SalesSegmentName.qbl b/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_SalesSegmentName.qbl
new file mode 100644
index 0000000..521966d
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_SalesSegmentName.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: SalesSegmentName
+}
diff --git a/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_StockingPointID.qbl b/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_StockingPointID.qbl
new file mode 100644
index 0000000..6110bce
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_StockingPointID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: '鎴愬搧浠�'
+ TargetAttribute: StockingPointID
+}
diff --git a/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_UnitOfMeasureName.qbl b/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_UnitOfMeasureName.qbl
new file mode 100644
index 0000000..7f9ab5e
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSportsHealth/DefaultValue_UnitOfMeasureName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'SHT'
+ TargetAttribute: UnitOfMeasureName
+}
diff --git a/_Main/BL/Type_PanelMaterialSportsHealth/StaticMethod_ReceiveDataGeneration.qbl b/_Main/BL/Type_PanelMaterialSportsHealth/StaticMethod_ReceiveDataGeneration.qbl
new file mode 100644
index 0000000..4ccf91b
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSportsHealth/StaticMethod_ReceiveDataGeneration.qbl
@@ -0,0 +1,65 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod ReceiveDataGeneration (
+ GlobalOTDTable globalOTDTable,
+ NamedValueTree requestnvt
+)
+{
+ TextBody:
+ [*
+ nameValue := requestnvt.Root();
+
+ bodyHandle := requestnvt.GetHandle( "Body" );
+ restHandle := requestnvt.GetHandle( "Rest" );
+ restPayloadHandle := requestnvt.GetHandle( "RestPayload" );
+
+ bodyNameValue := nameValue.Child( bodyHandle );
+ restNameValue := bodyNameValue.Child( restHandle );
+ restPayloadNameValue := restNameValue.Child( restPayloadHandle );
+
+ releaseDateHandle := requestnvt.GetHandle( "releaseDate" );
+ businessTypeHandle := requestnvt.GetHandle( "businessType" );
+ scenarioNameHandle := requestnvt.GetHandle( "scenarioName" );
+
+ releaseDateNameValue := restPayloadNameValue.Child( releaseDateHandle );
+ businessTypeNameValue := restPayloadNameValue.Child( businessTypeHandle );
+ scenarioNameNameValue := restPayloadNameValue.Child( scenarioNameHandle );
+
+ panelMaterialAll := select( globalOTDTable, PanelMaterialAll, tempPMA, tempPMA.ScenarioName() = scenarioNameNameValue.GetValueAsString() );
+ if ( not isnull( panelMaterialAll ) ) {
+ panelMaterialAll.Delete();
+ }
+ panelMaterialAll := globalOTDTable.PanelMaterialAll( relnew,
+ ReleaseDate := releaseDateNameValue.GetValueAsString(),
+ BusinessType := businessTypeNameValue.GetValueAsString(),
+ ScenarioName := scenarioNameNameValue.GetValueAsString()
+ );
+
+ panelMaterialsHandle := requestnvt.GetHandle( "panelMaterials" );
+ panelMaterialsNameValue := restPayloadNameValue.Child( panelMaterialsHandle );
+ childPanelMaterialsNameValue := panelMaterialsNameValue.Children();
+ productIDHandle := requestnvt.GetHandle( "productID" );
+ productDescriptionHandle := requestnvt.GetHandle( "productDescription" );
+ startDateHandle := requestnvt.GetHandle( "startDate" );
+ quantityHandle := requestnvt.GetHandle( "quantity" );
+
+ cnv2 := StringToDate::StandardConverter();
+ cnv2.SetCustomConversion();
+ cnv2.CustomFormatString( 'yyyy-MM-dd' );
+
+ traverse ( childPanelMaterialsNameValue, Elements, cpmnv ) {
+ info( "浜у搧锛�", cpmnv.Child( productIDHandle ).GetValueAsString() );
+ info( "浜у搧鎻忚堪锛�", cpmnv.Child( productDescriptionHandle ).GetValueAsString() );
+ info( "寮�濮嬫椂闂达細", cpmnv.Child( startDateHandle ).GetValueAsString() );
+ info( "鏁伴噺锛�", cpmnv.Child( quantityHandle ).GetValueAsString() );
+ panelMaterialAll.PanelMaterialSportsHealth( relnew,
+ Customer := businessTypeNameValue.GetValueAsString(),
+ ID := OS::GenerateGUIDAsString(),
+ OrderDate := cnv2.Convert( cpmnv.Child( startDateHandle ).GetValueAsString() ),
+ ProductID := cpmnv.Child( productIDHandle ).GetValueAsString(),
+ Quantity := cpmnv.Child( quantityHandle ).GetValueAsString(),
+ SalesSegmentName := businessTypeNameValue.GetValueAsString()
+ );
+ }
+ *]
+}
diff --git a/_Main/BL/Type_PanelMaterialSportsHealth/_ROOT_Type_PanelMaterialSportsHealth.qbl b/_Main/BL/Type_PanelMaterialSportsHealth/_ROOT_Type_PanelMaterialSportsHealth.qbl
new file mode 100644
index 0000000..1ac291b
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialSportsHealth/_ROOT_Type_PanelMaterialSportsHealth.qbl
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+#root
+#parent: #DomainModel
+Type PanelMaterialSportsHealth
+{
+ #keys: '5[414702.0.203680200][414702.0.203680198][0.0.0][414702.0.203680199][414702.0.203680201]'
+ BaseType: Object
+ Description: '杩愬姩鍋ュ悍'
+ StructuredName: 'PanelMaterialSportsHealths'
+}
diff --git a/_Main/BL/Type_PanelMaterialTM17/Attribute_CurrencyID.qbl b/_Main/BL/Type_PanelMaterialTM17/Attribute_CurrencyID.qbl
new file mode 100644
index 0000000..20cd108
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM17/Attribute_CurrencyID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute CurrencyID
+{
+ #keys: '3[414702.0.203671609][414702.0.203671608][414702.0.203671610]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialTM17/Attribute_Customer.qbl b/_Main/BL/Type_PanelMaterialTM17/Attribute_Customer.qbl
new file mode 100644
index 0000000..bee172b
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM17/Attribute_Customer.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Customer
+{
+ #keys: '3[414702.0.203671594][414702.0.203671593][414702.0.203671595]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialTM17/Attribute_CustomerID.qbl b/_Main/BL/Type_PanelMaterialTM17/Attribute_CustomerID.qbl
new file mode 100644
index 0000000..e689c52
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM17/Attribute_CustomerID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute CustomerID
+{
+ #keys: '3[414702.0.203671621][414702.0.203671620][414702.0.203671622]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialTM17/Attribute_ID.qbl b/_Main/BL/Type_PanelMaterialTM17/Attribute_ID.qbl
new file mode 100644
index 0000000..63b5c99
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM17/Attribute_ID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ID
+{
+ #keys: '3[414702.0.203671615][414702.0.203671614][414702.0.203671616]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialTM17/Attribute_IsEligibleForNetting.qbl b/_Main/BL/Type_PanelMaterialTM17/Attribute_IsEligibleForNetting.qbl
new file mode 100644
index 0000000..5b15de6
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM17/Attribute_IsEligibleForNetting.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute IsEligibleForNetting
+{
+ #keys: '3[414702.0.203671612][414702.0.203671611][414702.0.203671613]'
+ ValueType: Boolean
+}
diff --git a/_Main/BL/Type_PanelMaterialTM17/Attribute_IsExcludedFromFulfillmentKPIUser.qbl b/_Main/BL/Type_PanelMaterialTM17/Attribute_IsExcludedFromFulfillmentKPIUser.qbl
new file mode 100644
index 0000000..63575af
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM17/Attribute_IsExcludedFromFulfillmentKPIUser.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute IsExcludedFromFulfillmentKPIUser
+{
+ #keys: '3[414702.0.203671603][414702.0.203671602][414702.0.203671604]'
+ ValueType: Boolean
+}
diff --git a/_Main/BL/Type_PanelMaterialTM17/Attribute_IsFirmed.qbl b/_Main/BL/Type_PanelMaterialTM17/Attribute_IsFirmed.qbl
new file mode 100644
index 0000000..f311335
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM17/Attribute_IsFirmed.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute IsFirmed
+{
+ #keys: '3[414702.0.203671591][414702.0.203671590][414702.0.203671592]'
+ ValueType: Boolean
+}
diff --git a/_Main/BL/Type_PanelMaterialTM17/Attribute_OrderDate.qbl b/_Main/BL/Type_PanelMaterialTM17/Attribute_OrderDate.qbl
new file mode 100644
index 0000000..f83a64f
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM17/Attribute_OrderDate.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute OrderDate
+{
+ #keys: '3[414702.0.203671630][414702.0.203671629][414702.0.203671631]'
+ ValueType: Date
+}
diff --git a/_Main/BL/Type_PanelMaterialTM17/Attribute_OrderID.qbl b/_Main/BL/Type_PanelMaterialTM17/Attribute_OrderID.qbl
new file mode 100644
index 0000000..3fe99f4
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM17/Attribute_OrderID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute OrderID
+{
+ #keys: '3[414702.0.203671606][414702.0.203671605][414702.0.203671607]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialTM17/Attribute_OrderLineID.qbl b/_Main/BL/Type_PanelMaterialTM17/Attribute_OrderLineID.qbl
new file mode 100644
index 0000000..f20d582
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM17/Attribute_OrderLineID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute OrderLineID
+{
+ #keys: '3[414702.0.203671636][414702.0.203671635][414702.0.203671637]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialTM17/Attribute_Price.qbl b/_Main/BL/Type_PanelMaterialTM17/Attribute_Price.qbl
new file mode 100644
index 0000000..3234d7d
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM17/Attribute_Price.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Price
+{
+ #keys: '3[414702.0.203671588][414702.0.203671587][414702.0.203671589]'
+ ValueType: Real
+}
diff --git a/_Main/BL/Type_PanelMaterialTM17/Attribute_PriorityName.qbl b/_Main/BL/Type_PanelMaterialTM17/Attribute_PriorityName.qbl
new file mode 100644
index 0000000..3ecd304
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM17/Attribute_PriorityName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute PriorityName
+{
+ #keys: '3[414702.0.203671627][414702.0.203671626][414702.0.203671628]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialTM17/Attribute_ProductID.qbl b/_Main/BL/Type_PanelMaterialTM17/Attribute_ProductID.qbl
new file mode 100644
index 0000000..a2edc37
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM17/Attribute_ProductID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ProductID
+{
+ #keys: '3[414702.0.203671600][414702.0.203671599][414702.0.203671601]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialTM17/Attribute_Quantity.qbl b/_Main/BL/Type_PanelMaterialTM17/Attribute_Quantity.qbl
new file mode 100644
index 0000000..3f43e48
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM17/Attribute_Quantity.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Quantity
+{
+ #keys: '3[414702.0.203671624][414702.0.203671623][414702.0.203671625]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialTM17/Attribute_SalesSegmentName.qbl b/_Main/BL/Type_PanelMaterialTM17/Attribute_SalesSegmentName.qbl
new file mode 100644
index 0000000..e4979c4
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM17/Attribute_SalesSegmentName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute SalesSegmentName
+{
+ #keys: '3[414702.0.203671633][414702.0.203671632][414702.0.203671634]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialTM17/Attribute_StockingPointID.qbl b/_Main/BL/Type_PanelMaterialTM17/Attribute_StockingPointID.qbl
new file mode 100644
index 0000000..0c70a04
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM17/Attribute_StockingPointID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute StockingPointID
+{
+ #keys: '3[414702.0.203671618][414702.0.203671617][414702.0.203671619]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialTM17/Attribute_UnitOfMeasureName.qbl b/_Main/BL/Type_PanelMaterialTM17/Attribute_UnitOfMeasureName.qbl
new file mode 100644
index 0000000..f2df14f
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM17/Attribute_UnitOfMeasureName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute UnitOfMeasureName
+{
+ #keys: '3[414702.0.203671597][414702.0.203671596][414702.0.203671598]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialTM17/DefaultValue_CurrencyID.qbl b/_Main/BL/Type_PanelMaterialTM17/DefaultValue_CurrencyID.qbl
new file mode 100644
index 0000000..9a0e812
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM17/DefaultValue_CurrencyID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'CNY'
+ TargetAttribute: CurrencyID
+}
diff --git a/_Main/BL/Type_PanelMaterialTM17/DefaultValue_Customer.qbl b/_Main/BL/Type_PanelMaterialTM17/DefaultValue_Customer.qbl
new file mode 100644
index 0000000..e02a336
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM17/DefaultValue_Customer.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: Customer
+}
diff --git a/_Main/BL/Type_PanelMaterialTM17/DefaultValue_CustomerID.qbl b/_Main/BL/Type_PanelMaterialTM17/DefaultValue_CustomerID.qbl
new file mode 100644
index 0000000..66ae438
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM17/DefaultValue_CustomerID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: CustomerID
+}
diff --git a/_Main/BL/Type_PanelMaterialTM17/DefaultValue_ID.qbl b/_Main/BL/Type_PanelMaterialTM17/DefaultValue_ID.qbl
new file mode 100644
index 0000000..049abc0
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM17/DefaultValue_ID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: ID
+}
diff --git a/_Main/BL/Type_PanelMaterialTM17/DefaultValue_IsEligibleForNetting.qbl b/_Main/BL/Type_PanelMaterialTM17/DefaultValue_IsEligibleForNetting.qbl
new file mode 100644
index 0000000..8b36496
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM17/DefaultValue_IsEligibleForNetting.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'true'
+ TargetAttribute: IsEligibleForNetting
+}
diff --git a/_Main/BL/Type_PanelMaterialTM17/DefaultValue_IsExcludedFromFulfillmentKPIUser.qbl b/_Main/BL/Type_PanelMaterialTM17/DefaultValue_IsExcludedFromFulfillmentKPIUser.qbl
new file mode 100644
index 0000000..d0e348d
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM17/DefaultValue_IsExcludedFromFulfillmentKPIUser.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'false'
+ TargetAttribute: IsExcludedFromFulfillmentKPIUser
+}
diff --git a/_Main/BL/Type_PanelMaterialTM17/DefaultValue_IsFirmed.qbl b/_Main/BL/Type_PanelMaterialTM17/DefaultValue_IsFirmed.qbl
new file mode 100644
index 0000000..0f7ae4c
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM17/DefaultValue_IsFirmed.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'true'
+ TargetAttribute: IsFirmed
+}
diff --git a/_Main/BL/Type_PanelMaterialTM17/DefaultValue_OrderID.qbl b/_Main/BL/Type_PanelMaterialTM17/DefaultValue_OrderID.qbl
new file mode 100644
index 0000000..05c5cf1
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM17/DefaultValue_OrderID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: OrderID
+}
diff --git a/_Main/BL/Type_PanelMaterialTM17/DefaultValue_OrderLineID.qbl b/_Main/BL/Type_PanelMaterialTM17/DefaultValue_OrderLineID.qbl
new file mode 100644
index 0000000..01ff2bf
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM17/DefaultValue_OrderLineID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: OrderLineID
+}
diff --git a/_Main/BL/Type_PanelMaterialTM17/DefaultValue_Price.qbl b/_Main/BL/Type_PanelMaterialTM17/DefaultValue_Price.qbl
new file mode 100644
index 0000000..577db4c
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM17/DefaultValue_Price.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: '0'
+ TargetAttribute: Price
+}
diff --git a/_Main/BL/Type_PanelMaterialTM17/DefaultValue_PriorityName.qbl b/_Main/BL/Type_PanelMaterialTM17/DefaultValue_PriorityName.qbl
new file mode 100644
index 0000000..7c6efaa
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM17/DefaultValue_PriorityName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'Normal'
+ TargetAttribute: PriorityName
+}
diff --git a/_Main/BL/Type_PanelMaterialTM17/DefaultValue_ProductID.qbl b/_Main/BL/Type_PanelMaterialTM17/DefaultValue_ProductID.qbl
new file mode 100644
index 0000000..98649b2
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM17/DefaultValue_ProductID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: ProductID
+}
diff --git a/_Main/BL/Type_PanelMaterialTM17/DefaultValue_Quantity.qbl b/_Main/BL/Type_PanelMaterialTM17/DefaultValue_Quantity.qbl
new file mode 100644
index 0000000..9e759b3
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM17/DefaultValue_Quantity.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: Quantity
+}
diff --git a/_Main/BL/Type_PanelMaterialTM17/DefaultValue_SalesSegmentName.qbl b/_Main/BL/Type_PanelMaterialTM17/DefaultValue_SalesSegmentName.qbl
new file mode 100644
index 0000000..521966d
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM17/DefaultValue_SalesSegmentName.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: SalesSegmentName
+}
diff --git a/_Main/BL/Type_PanelMaterialTM17/DefaultValue_StockingPointID.qbl b/_Main/BL/Type_PanelMaterialTM17/DefaultValue_StockingPointID.qbl
new file mode 100644
index 0000000..6110bce
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM17/DefaultValue_StockingPointID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: '鎴愬搧浠�'
+ TargetAttribute: StockingPointID
+}
diff --git a/_Main/BL/Type_PanelMaterialTM17/DefaultValue_UnitOfMeasureName.qbl b/_Main/BL/Type_PanelMaterialTM17/DefaultValue_UnitOfMeasureName.qbl
new file mode 100644
index 0000000..7f9ab5e
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM17/DefaultValue_UnitOfMeasureName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'SHT'
+ TargetAttribute: UnitOfMeasureName
+}
diff --git a/_Main/BL/Type_PanelMaterialTM17/StaticMethod_ReceiveDataGeneration.qbl b/_Main/BL/Type_PanelMaterialTM17/StaticMethod_ReceiveDataGeneration.qbl
new file mode 100644
index 0000000..9f7f71a
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM17/StaticMethod_ReceiveDataGeneration.qbl
@@ -0,0 +1,65 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod ReceiveDataGeneration (
+ GlobalOTDTable globalOTDTable,
+ NamedValueTree requestnvt
+)
+{
+ TextBody:
+ [*
+ nameValue := requestnvt.Root();
+
+ bodyHandle := requestnvt.GetHandle( "Body" );
+ restHandle := requestnvt.GetHandle( "Rest" );
+ restPayloadHandle := requestnvt.GetHandle( "RestPayload" );
+
+ bodyNameValue := nameValue.Child( bodyHandle );
+ restNameValue := bodyNameValue.Child( restHandle );
+ restPayloadNameValue := restNameValue.Child( restPayloadHandle );
+
+ releaseDateHandle := requestnvt.GetHandle( "releaseDate" );
+ businessTypeHandle := requestnvt.GetHandle( "businessType" );
+ scenarioNameHandle := requestnvt.GetHandle( "scenarioName" );
+
+ releaseDateNameValue := restPayloadNameValue.Child( releaseDateHandle );
+ businessTypeNameValue := restPayloadNameValue.Child( businessTypeHandle );
+ scenarioNameNameValue := restPayloadNameValue.Child( scenarioNameHandle );
+
+ panelMaterialAll := select( globalOTDTable, PanelMaterialAll, tempPMA, tempPMA.ScenarioName() = scenarioNameNameValue.GetValueAsString() );
+ if ( not isnull( panelMaterialAll ) ) {
+ panelMaterialAll.Delete();
+ }
+ panelMaterialAll := globalOTDTable.PanelMaterialAll( relnew,
+ ReleaseDate := releaseDateNameValue.GetValueAsString(),
+ BusinessType := businessTypeNameValue.GetValueAsString(),
+ ScenarioName := scenarioNameNameValue.GetValueAsString()
+ );
+
+ panelMaterialsHandle := requestnvt.GetHandle( "panelMaterials" );
+ panelMaterialsNameValue := restPayloadNameValue.Child( panelMaterialsHandle );
+ childPanelMaterialsNameValue := panelMaterialsNameValue.Children();
+ productIDHandle := requestnvt.GetHandle( "productID" );
+ productDescriptionHandle := requestnvt.GetHandle( "productDescription" );
+ startDateHandle := requestnvt.GetHandle( "startDate" );
+ quantityHandle := requestnvt.GetHandle( "quantity" );
+
+ cnv2 := StringToDate::StandardConverter();
+ cnv2.SetCustomConversion();
+ cnv2.CustomFormatString( 'yyyy-MM-dd' );
+
+ traverse ( childPanelMaterialsNameValue, Elements, cpmnv ) {
+ info( "浜у搧锛�", cpmnv.Child( productIDHandle ).GetValueAsString() );
+ info( "浜у搧鎻忚堪锛�", cpmnv.Child( productDescriptionHandle ).GetValueAsString() );
+ info( "寮�濮嬫椂闂达細", cpmnv.Child( startDateHandle ).GetValueAsString() );
+ info( "鏁伴噺锛�", cpmnv.Child( quantityHandle ).GetValueAsString() );
+ panelMaterialAll.PanelMaterialTM17( relnew,
+ Customer := businessTypeNameValue.GetValueAsString(),
+ ID := OS::GenerateGUIDAsString(),
+ OrderDate := cnv2.Convert( cpmnv.Child( startDateHandle ).GetValueAsString() ),
+ ProductID := cpmnv.Child( productIDHandle ).GetValueAsString(),
+ Quantity := cpmnv.Child( quantityHandle ).GetValueAsString(),
+ SalesSegmentName := businessTypeNameValue.GetValueAsString()
+ );
+ }
+ *]
+}
diff --git a/_Main/BL/Type_PanelMaterialTM17/_ROOT_Type_PanelMaterialTM17.qbl b/_Main/BL/Type_PanelMaterialTM17/_ROOT_Type_PanelMaterialTM17.qbl
new file mode 100644
index 0000000..54c85a7
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM17/_ROOT_Type_PanelMaterialTM17.qbl
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+#root
+#parent: #DomainModel
+Type PanelMaterialTM17
+{
+ #keys: '5[414702.0.203671569][414702.0.203671567][0.0.0][414702.0.203671568][414702.0.203671570]'
+ BaseType: Object
+ Description: 'TM17'
+ StructuredName: 'PanelMaterialTM17s'
+}
diff --git a/_Main/BL/Type_PanelMaterialTM18/Attribute_CurrencyID.qbl b/_Main/BL/Type_PanelMaterialTM18/Attribute_CurrencyID.qbl
new file mode 100644
index 0000000..9fa6c69
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM18/Attribute_CurrencyID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute CurrencyID
+{
+ #keys: '3[414702.0.203680386][414702.0.203680385][414702.0.203680387]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialTM18/Attribute_Customer.qbl b/_Main/BL/Type_PanelMaterialTM18/Attribute_Customer.qbl
new file mode 100644
index 0000000..afffc3c
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM18/Attribute_Customer.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Customer
+{
+ #keys: '3[414702.0.203680395][414702.0.203680394][414702.0.203680396]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialTM18/Attribute_CustomerID.qbl b/_Main/BL/Type_PanelMaterialTM18/Attribute_CustomerID.qbl
new file mode 100644
index 0000000..05564f1
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM18/Attribute_CustomerID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute CustomerID
+{
+ #keys: '3[414702.0.203680413][414702.0.203680412][414702.0.203680414]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialTM18/Attribute_ID.qbl b/_Main/BL/Type_PanelMaterialTM18/Attribute_ID.qbl
new file mode 100644
index 0000000..37d4aed
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM18/Attribute_ID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ID
+{
+ #keys: '3[414702.0.203680401][414702.0.203680400][414702.0.203680402]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialTM18/Attribute_IsEligibleForNetting.qbl b/_Main/BL/Type_PanelMaterialTM18/Attribute_IsEligibleForNetting.qbl
new file mode 100644
index 0000000..d994032
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM18/Attribute_IsEligibleForNetting.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute IsEligibleForNetting
+{
+ #keys: '3[414702.0.203680416][414702.0.203680415][414702.0.203680417]'
+ ValueType: Boolean
+}
diff --git a/_Main/BL/Type_PanelMaterialTM18/Attribute_IsExcludedFromFulfillmentKPIUser.qbl b/_Main/BL/Type_PanelMaterialTM18/Attribute_IsExcludedFromFulfillmentKPIUser.qbl
new file mode 100644
index 0000000..0868269
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM18/Attribute_IsExcludedFromFulfillmentKPIUser.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute IsExcludedFromFulfillmentKPIUser
+{
+ #keys: '3[414702.0.203680419][414702.0.203680418][414702.0.203680420]'
+ ValueType: Boolean
+}
diff --git a/_Main/BL/Type_PanelMaterialTM18/Attribute_IsFirmed.qbl b/_Main/BL/Type_PanelMaterialTM18/Attribute_IsFirmed.qbl
new file mode 100644
index 0000000..157903f
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM18/Attribute_IsFirmed.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute IsFirmed
+{
+ #keys: '3[414702.0.203680380][414702.0.203680379][414702.0.203680381]'
+ ValueType: Boolean
+}
diff --git a/_Main/BL/Type_PanelMaterialTM18/Attribute_OrderDate.qbl b/_Main/BL/Type_PanelMaterialTM18/Attribute_OrderDate.qbl
new file mode 100644
index 0000000..fcd19b6
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM18/Attribute_OrderDate.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute OrderDate
+{
+ #keys: '3[414702.0.203680407][414702.0.203680406][414702.0.203680408]'
+ ValueType: Date
+}
diff --git a/_Main/BL/Type_PanelMaterialTM18/Attribute_OrderID.qbl b/_Main/BL/Type_PanelMaterialTM18/Attribute_OrderID.qbl
new file mode 100644
index 0000000..867df94
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM18/Attribute_OrderID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute OrderID
+{
+ #keys: '3[414702.0.203680392][414702.0.203680391][414702.0.203680393]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialTM18/Attribute_OrderLineID.qbl b/_Main/BL/Type_PanelMaterialTM18/Attribute_OrderLineID.qbl
new file mode 100644
index 0000000..61afc1f
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM18/Attribute_OrderLineID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute OrderLineID
+{
+ #keys: '3[414702.0.203680398][414702.0.203680397][414702.0.203680399]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialTM18/Attribute_Price.qbl b/_Main/BL/Type_PanelMaterialTM18/Attribute_Price.qbl
new file mode 100644
index 0000000..2446765
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM18/Attribute_Price.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Price
+{
+ #keys: '3[414702.0.203680389][414702.0.203680388][414702.0.203680390]'
+ ValueType: Real
+}
diff --git a/_Main/BL/Type_PanelMaterialTM18/Attribute_PriorityName.qbl b/_Main/BL/Type_PanelMaterialTM18/Attribute_PriorityName.qbl
new file mode 100644
index 0000000..57ab630
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM18/Attribute_PriorityName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute PriorityName
+{
+ #keys: '3[414702.0.203680422][414702.0.203680421][414702.0.203680423]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialTM18/Attribute_ProductID.qbl b/_Main/BL/Type_PanelMaterialTM18/Attribute_ProductID.qbl
new file mode 100644
index 0000000..976c946
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM18/Attribute_ProductID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ProductID
+{
+ #keys: '3[414702.0.203680377][414702.0.203680376][414702.0.203680378]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialTM18/Attribute_Quantity.qbl b/_Main/BL/Type_PanelMaterialTM18/Attribute_Quantity.qbl
new file mode 100644
index 0000000..f7d8717
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM18/Attribute_Quantity.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Quantity
+{
+ #keys: '3[414702.0.203680425][414702.0.203680424][414702.0.203680426]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialTM18/Attribute_SalesSegmentName.qbl b/_Main/BL/Type_PanelMaterialTM18/Attribute_SalesSegmentName.qbl
new file mode 100644
index 0000000..deeb9c2
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM18/Attribute_SalesSegmentName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute SalesSegmentName
+{
+ #keys: '3[414702.0.203680404][414702.0.203680403][414702.0.203680405]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialTM18/Attribute_StockingPointID.qbl b/_Main/BL/Type_PanelMaterialTM18/Attribute_StockingPointID.qbl
new file mode 100644
index 0000000..b98b82a
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM18/Attribute_StockingPointID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute StockingPointID
+{
+ #keys: '3[414702.0.203680383][414702.0.203680382][414702.0.203680384]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialTM18/Attribute_UnitOfMeasureName.qbl b/_Main/BL/Type_PanelMaterialTM18/Attribute_UnitOfMeasureName.qbl
new file mode 100644
index 0000000..4c162ed
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM18/Attribute_UnitOfMeasureName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute UnitOfMeasureName
+{
+ #keys: '3[414702.0.203680410][414702.0.203680409][414702.0.203680411]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialTM18/DefaultValue_CurrencyID.qbl b/_Main/BL/Type_PanelMaterialTM18/DefaultValue_CurrencyID.qbl
new file mode 100644
index 0000000..9a0e812
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM18/DefaultValue_CurrencyID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'CNY'
+ TargetAttribute: CurrencyID
+}
diff --git a/_Main/BL/Type_PanelMaterialTM18/DefaultValue_Customer.qbl b/_Main/BL/Type_PanelMaterialTM18/DefaultValue_Customer.qbl
new file mode 100644
index 0000000..e02a336
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM18/DefaultValue_Customer.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: Customer
+}
diff --git a/_Main/BL/Type_PanelMaterialTM18/DefaultValue_CustomerID.qbl b/_Main/BL/Type_PanelMaterialTM18/DefaultValue_CustomerID.qbl
new file mode 100644
index 0000000..66ae438
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM18/DefaultValue_CustomerID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: CustomerID
+}
diff --git a/_Main/BL/Type_PanelMaterialTM18/DefaultValue_ID.qbl b/_Main/BL/Type_PanelMaterialTM18/DefaultValue_ID.qbl
new file mode 100644
index 0000000..049abc0
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM18/DefaultValue_ID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: ID
+}
diff --git a/_Main/BL/Type_PanelMaterialTM18/DefaultValue_IsEligibleForNetting.qbl b/_Main/BL/Type_PanelMaterialTM18/DefaultValue_IsEligibleForNetting.qbl
new file mode 100644
index 0000000..8b36496
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM18/DefaultValue_IsEligibleForNetting.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'true'
+ TargetAttribute: IsEligibleForNetting
+}
diff --git a/_Main/BL/Type_PanelMaterialTM18/DefaultValue_IsExcludedFromFulfillmentKPIUser.qbl b/_Main/BL/Type_PanelMaterialTM18/DefaultValue_IsExcludedFromFulfillmentKPIUser.qbl
new file mode 100644
index 0000000..d0e348d
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM18/DefaultValue_IsExcludedFromFulfillmentKPIUser.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'false'
+ TargetAttribute: IsExcludedFromFulfillmentKPIUser
+}
diff --git a/_Main/BL/Type_PanelMaterialTM18/DefaultValue_IsFirmed.qbl b/_Main/BL/Type_PanelMaterialTM18/DefaultValue_IsFirmed.qbl
new file mode 100644
index 0000000..0f7ae4c
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM18/DefaultValue_IsFirmed.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'true'
+ TargetAttribute: IsFirmed
+}
diff --git a/_Main/BL/Type_PanelMaterialTM18/DefaultValue_OrderID.qbl b/_Main/BL/Type_PanelMaterialTM18/DefaultValue_OrderID.qbl
new file mode 100644
index 0000000..05c5cf1
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM18/DefaultValue_OrderID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: OrderID
+}
diff --git a/_Main/BL/Type_PanelMaterialTM18/DefaultValue_OrderLineID.qbl b/_Main/BL/Type_PanelMaterialTM18/DefaultValue_OrderLineID.qbl
new file mode 100644
index 0000000..01ff2bf
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM18/DefaultValue_OrderLineID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: OrderLineID
+}
diff --git a/_Main/BL/Type_PanelMaterialTM18/DefaultValue_Price.qbl b/_Main/BL/Type_PanelMaterialTM18/DefaultValue_Price.qbl
new file mode 100644
index 0000000..577db4c
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM18/DefaultValue_Price.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: '0'
+ TargetAttribute: Price
+}
diff --git a/_Main/BL/Type_PanelMaterialTM18/DefaultValue_PriorityName.qbl b/_Main/BL/Type_PanelMaterialTM18/DefaultValue_PriorityName.qbl
new file mode 100644
index 0000000..7c6efaa
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM18/DefaultValue_PriorityName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'Normal'
+ TargetAttribute: PriorityName
+}
diff --git a/_Main/BL/Type_PanelMaterialTM18/DefaultValue_ProductID.qbl b/_Main/BL/Type_PanelMaterialTM18/DefaultValue_ProductID.qbl
new file mode 100644
index 0000000..98649b2
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM18/DefaultValue_ProductID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: ProductID
+}
diff --git a/_Main/BL/Type_PanelMaterialTM18/DefaultValue_Quantity.qbl b/_Main/BL/Type_PanelMaterialTM18/DefaultValue_Quantity.qbl
new file mode 100644
index 0000000..9e759b3
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM18/DefaultValue_Quantity.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: Quantity
+}
diff --git a/_Main/BL/Type_PanelMaterialTM18/DefaultValue_SalesSegmentName.qbl b/_Main/BL/Type_PanelMaterialTM18/DefaultValue_SalesSegmentName.qbl
new file mode 100644
index 0000000..521966d
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM18/DefaultValue_SalesSegmentName.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: SalesSegmentName
+}
diff --git a/_Main/BL/Type_PanelMaterialTM18/DefaultValue_StockingPointID.qbl b/_Main/BL/Type_PanelMaterialTM18/DefaultValue_StockingPointID.qbl
new file mode 100644
index 0000000..6110bce
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM18/DefaultValue_StockingPointID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: '鎴愬搧浠�'
+ TargetAttribute: StockingPointID
+}
diff --git a/_Main/BL/Type_PanelMaterialTM18/DefaultValue_UnitOfMeasureName.qbl b/_Main/BL/Type_PanelMaterialTM18/DefaultValue_UnitOfMeasureName.qbl
new file mode 100644
index 0000000..7f9ab5e
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM18/DefaultValue_UnitOfMeasureName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'SHT'
+ TargetAttribute: UnitOfMeasureName
+}
diff --git a/_Main/BL/Type_PanelMaterialTM18/StaticMethod_ReceiveDataGeneration.qbl b/_Main/BL/Type_PanelMaterialTM18/StaticMethod_ReceiveDataGeneration.qbl
new file mode 100644
index 0000000..9145c77
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM18/StaticMethod_ReceiveDataGeneration.qbl
@@ -0,0 +1,65 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod ReceiveDataGeneration (
+ GlobalOTDTable globalOTDTable,
+ NamedValueTree requestnvt
+)
+{
+ TextBody:
+ [*
+ nameValue := requestnvt.Root();
+
+ bodyHandle := requestnvt.GetHandle( "Body" );
+ restHandle := requestnvt.GetHandle( "Rest" );
+ restPayloadHandle := requestnvt.GetHandle( "RestPayload" );
+
+ bodyNameValue := nameValue.Child( bodyHandle );
+ restNameValue := bodyNameValue.Child( restHandle );
+ restPayloadNameValue := restNameValue.Child( restPayloadHandle );
+
+ releaseDateHandle := requestnvt.GetHandle( "releaseDate" );
+ businessTypeHandle := requestnvt.GetHandle( "businessType" );
+ scenarioNameHandle := requestnvt.GetHandle( "scenarioName" );
+
+ releaseDateNameValue := restPayloadNameValue.Child( releaseDateHandle );
+ businessTypeNameValue := restPayloadNameValue.Child( businessTypeHandle );
+ scenarioNameNameValue := restPayloadNameValue.Child( scenarioNameHandle );
+
+ panelMaterialAll := select( globalOTDTable, PanelMaterialAll, tempPMA, tempPMA.ScenarioName() = scenarioNameNameValue.GetValueAsString() );
+ if ( not isnull( panelMaterialAll ) ) {
+ panelMaterialAll.Delete();
+ }
+ panelMaterialAll := globalOTDTable.PanelMaterialAll( relnew,
+ ReleaseDate := releaseDateNameValue.GetValueAsString(),
+ BusinessType := businessTypeNameValue.GetValueAsString(),
+ ScenarioName := scenarioNameNameValue.GetValueAsString()
+ );
+
+ panelMaterialsHandle := requestnvt.GetHandle( "panelMaterials" );
+ panelMaterialsNameValue := restPayloadNameValue.Child( panelMaterialsHandle );
+ childPanelMaterialsNameValue := panelMaterialsNameValue.Children();
+ productIDHandle := requestnvt.GetHandle( "productID" );
+ productDescriptionHandle := requestnvt.GetHandle( "productDescription" );
+ startDateHandle := requestnvt.GetHandle( "startDate" );
+ quantityHandle := requestnvt.GetHandle( "quantity" );
+
+ cnv2 := StringToDate::StandardConverter();
+ cnv2.SetCustomConversion();
+ cnv2.CustomFormatString( 'yyyy-MM-dd' );
+
+ traverse ( childPanelMaterialsNameValue, Elements, cpmnv ) {
+ info( "浜у搧锛�", cpmnv.Child( productIDHandle ).GetValueAsString() );
+ info( "浜у搧鎻忚堪锛�", cpmnv.Child( productDescriptionHandle ).GetValueAsString() );
+ info( "寮�濮嬫椂闂达細", cpmnv.Child( startDateHandle ).GetValueAsString() );
+ info( "鏁伴噺锛�", cpmnv.Child( quantityHandle ).GetValueAsString() );
+ panelMaterialAll.PanelMaterialTM18( relnew,
+ Customer := businessTypeNameValue.GetValueAsString(),
+ ID := OS::GenerateGUIDAsString(),
+ OrderDate := cnv2.Convert( cpmnv.Child( startDateHandle ).GetValueAsString() ),
+ ProductID := cpmnv.Child( productIDHandle ).GetValueAsString(),
+ Quantity := cpmnv.Child( quantityHandle ).GetValueAsString(),
+ SalesSegmentName := businessTypeNameValue.GetValueAsString()
+ );
+ }
+ *]
+}
diff --git a/_Main/BL/Type_PanelMaterialTM18/_ROOT_Type_PanelMaterialTM18.qbl b/_Main/BL/Type_PanelMaterialTM18/_ROOT_Type_PanelMaterialTM18.qbl
new file mode 100644
index 0000000..75ea3ae
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTM18/_ROOT_Type_PanelMaterialTM18.qbl
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+#root
+#parent: #DomainModel
+Type PanelMaterialTM18
+{
+ #keys: '5[414702.0.203680356][414702.0.203680354][0.0.0][414702.0.203680355][414702.0.203680357]'
+ BaseType: Object
+ Description: 'TM18'
+ StructuredName: 'PanelMaterialTM18s'
+}
diff --git a/_Main/BL/Type_PanelMaterialTianHua/Attribute_CurrencyID.qbl b/_Main/BL/Type_PanelMaterialTianHua/Attribute_CurrencyID.qbl
new file mode 100644
index 0000000..3733f5b
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTianHua/Attribute_CurrencyID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute CurrencyID
+{
+ #keys: '3[414702.0.203671460][414702.0.203671459][414702.0.203671461]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialTianHua/Attribute_Customer.qbl b/_Main/BL/Type_PanelMaterialTianHua/Attribute_Customer.qbl
new file mode 100644
index 0000000..9f58ae5
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTianHua/Attribute_Customer.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Customer
+{
+ #keys: '3[414702.0.203671427][414702.0.203671426][414702.0.203671428]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialTianHua/Attribute_CustomerID.qbl b/_Main/BL/Type_PanelMaterialTianHua/Attribute_CustomerID.qbl
new file mode 100644
index 0000000..c563be0
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTianHua/Attribute_CustomerID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute CustomerID
+{
+ #keys: '3[414702.0.203671451][414702.0.203671450][414702.0.203671452]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialTianHua/Attribute_ID.qbl b/_Main/BL/Type_PanelMaterialTianHua/Attribute_ID.qbl
new file mode 100644
index 0000000..1cebdcf
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTianHua/Attribute_ID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ID
+{
+ #keys: '3[414702.0.203671439][414702.0.203671438][414702.0.203671440]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialTianHua/Attribute_IsEligibleForNetting.qbl b/_Main/BL/Type_PanelMaterialTianHua/Attribute_IsEligibleForNetting.qbl
new file mode 100644
index 0000000..99eb60c
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTianHua/Attribute_IsEligibleForNetting.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute IsEligibleForNetting
+{
+ #keys: '3[414702.0.203671430][414702.0.203671429][414702.0.203671431]'
+ ValueType: Boolean
+}
diff --git a/_Main/BL/Type_PanelMaterialTianHua/Attribute_IsExcludedFromFulfillmentKPIUser.qbl b/_Main/BL/Type_PanelMaterialTianHua/Attribute_IsExcludedFromFulfillmentKPIUser.qbl
new file mode 100644
index 0000000..4efa43a
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTianHua/Attribute_IsExcludedFromFulfillmentKPIUser.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute IsExcludedFromFulfillmentKPIUser
+{
+ #keys: '3[414702.0.203671463][414702.0.203671462][414702.0.203671464]'
+ ValueType: Boolean
+}
diff --git a/_Main/BL/Type_PanelMaterialTianHua/Attribute_IsFirmed.qbl b/_Main/BL/Type_PanelMaterialTianHua/Attribute_IsFirmed.qbl
new file mode 100644
index 0000000..0603138
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTianHua/Attribute_IsFirmed.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute IsFirmed
+{
+ #keys: '3[414702.0.203671454][414702.0.203671453][414702.0.203671455]'
+ ValueType: Boolean
+}
diff --git a/_Main/BL/Type_PanelMaterialTianHua/Attribute_OrderDate.qbl b/_Main/BL/Type_PanelMaterialTianHua/Attribute_OrderDate.qbl
new file mode 100644
index 0000000..87acd44
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTianHua/Attribute_OrderDate.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute OrderDate
+{
+ #keys: '3[414702.0.203671418][414702.0.203671417][414702.0.203671419]'
+ ValueType: Date
+}
diff --git a/_Main/BL/Type_PanelMaterialTianHua/Attribute_OrderID.qbl b/_Main/BL/Type_PanelMaterialTianHua/Attribute_OrderID.qbl
new file mode 100644
index 0000000..ecf37e0
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTianHua/Attribute_OrderID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute OrderID
+{
+ #keys: '3[414702.0.203671424][414702.0.203671423][414702.0.203671425]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialTianHua/Attribute_OrderLineID.qbl b/_Main/BL/Type_PanelMaterialTianHua/Attribute_OrderLineID.qbl
new file mode 100644
index 0000000..c0a4a24
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTianHua/Attribute_OrderLineID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute OrderLineID
+{
+ #keys: '3[414702.0.203671448][414702.0.203671447][414702.0.203671449]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialTianHua/Attribute_Price.qbl b/_Main/BL/Type_PanelMaterialTianHua/Attribute_Price.qbl
new file mode 100644
index 0000000..05e48bd
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTianHua/Attribute_Price.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Price
+{
+ #keys: '3[414702.0.203671421][414702.0.203671420][414702.0.203671422]'
+ ValueType: Real
+}
diff --git a/_Main/BL/Type_PanelMaterialTianHua/Attribute_PriorityName.qbl b/_Main/BL/Type_PanelMaterialTianHua/Attribute_PriorityName.qbl
new file mode 100644
index 0000000..a11a6ca
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTianHua/Attribute_PriorityName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute PriorityName
+{
+ #keys: '3[414702.0.203671466][414702.0.203671465][414702.0.203671467]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialTianHua/Attribute_ProductID.qbl b/_Main/BL/Type_PanelMaterialTianHua/Attribute_ProductID.qbl
new file mode 100644
index 0000000..1148598
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTianHua/Attribute_ProductID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ProductID
+{
+ #keys: '3[414702.0.203671433][414702.0.203671432][414702.0.203671434]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialTianHua/Attribute_Quantity.qbl b/_Main/BL/Type_PanelMaterialTianHua/Attribute_Quantity.qbl
new file mode 100644
index 0000000..458dd84
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTianHua/Attribute_Quantity.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Quantity
+{
+ #keys: '3[414702.0.203671442][414702.0.203671441][414702.0.203671443]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialTianHua/Attribute_SalesSegmentName.qbl b/_Main/BL/Type_PanelMaterialTianHua/Attribute_SalesSegmentName.qbl
new file mode 100644
index 0000000..748894c
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTianHua/Attribute_SalesSegmentName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute SalesSegmentName
+{
+ #keys: '3[414702.0.203671445][414702.0.203671444][414702.0.203671446]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialTianHua/Attribute_StockingPointID.qbl b/_Main/BL/Type_PanelMaterialTianHua/Attribute_StockingPointID.qbl
new file mode 100644
index 0000000..8c31b00
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTianHua/Attribute_StockingPointID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute StockingPointID
+{
+ #keys: '3[414702.0.203671457][414702.0.203671456][414702.0.203671458]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialTianHua/Attribute_UnitOfMeasureName.qbl b/_Main/BL/Type_PanelMaterialTianHua/Attribute_UnitOfMeasureName.qbl
new file mode 100644
index 0000000..f3ecefc
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTianHua/Attribute_UnitOfMeasureName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute UnitOfMeasureName
+{
+ #keys: '3[414702.0.203671436][414702.0.203671435][414702.0.203671437]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_CurrencyID.qbl b/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_CurrencyID.qbl
new file mode 100644
index 0000000..9a0e812
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_CurrencyID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'CNY'
+ TargetAttribute: CurrencyID
+}
diff --git a/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_Customer.qbl b/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_Customer.qbl
new file mode 100644
index 0000000..e02a336
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_Customer.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: Customer
+}
diff --git a/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_CustomerID.qbl b/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_CustomerID.qbl
new file mode 100644
index 0000000..66ae438
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_CustomerID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: CustomerID
+}
diff --git a/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_ID.qbl b/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_ID.qbl
new file mode 100644
index 0000000..049abc0
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_ID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: ID
+}
diff --git a/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_IsEligibleForNetting.qbl b/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_IsEligibleForNetting.qbl
new file mode 100644
index 0000000..8b36496
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_IsEligibleForNetting.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'true'
+ TargetAttribute: IsEligibleForNetting
+}
diff --git a/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_IsExcludedFromFulfillmentKPIUser.qbl b/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_IsExcludedFromFulfillmentKPIUser.qbl
new file mode 100644
index 0000000..d0e348d
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_IsExcludedFromFulfillmentKPIUser.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'false'
+ TargetAttribute: IsExcludedFromFulfillmentKPIUser
+}
diff --git a/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_IsFirmed.qbl b/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_IsFirmed.qbl
new file mode 100644
index 0000000..0f7ae4c
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_IsFirmed.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'true'
+ TargetAttribute: IsFirmed
+}
diff --git a/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_OrderID.qbl b/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_OrderID.qbl
new file mode 100644
index 0000000..05c5cf1
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_OrderID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: OrderID
+}
diff --git a/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_OrderLineID.qbl b/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_OrderLineID.qbl
new file mode 100644
index 0000000..01ff2bf
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_OrderLineID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: OrderLineID
+}
diff --git a/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_Price.qbl b/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_Price.qbl
new file mode 100644
index 0000000..577db4c
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_Price.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: '0'
+ TargetAttribute: Price
+}
diff --git a/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_PriorityName.qbl b/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_PriorityName.qbl
new file mode 100644
index 0000000..7c6efaa
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_PriorityName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'Normal'
+ TargetAttribute: PriorityName
+}
diff --git a/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_ProductID.qbl b/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_ProductID.qbl
new file mode 100644
index 0000000..98649b2
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_ProductID.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: ProductID
+}
diff --git a/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_Quantity.qbl b/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_Quantity.qbl
new file mode 100644
index 0000000..9e759b3
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_Quantity.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: Quantity
+}
diff --git a/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_SalesSegmentName.qbl b/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_SalesSegmentName.qbl
new file mode 100644
index 0000000..521966d
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_SalesSegmentName.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: SalesSegmentName
+}
diff --git a/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_StockingPointID.qbl b/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_StockingPointID.qbl
new file mode 100644
index 0000000..6110bce
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_StockingPointID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: '鎴愬搧浠�'
+ TargetAttribute: StockingPointID
+}
diff --git a/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_UnitOfMeasureName.qbl b/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_UnitOfMeasureName.qbl
new file mode 100644
index 0000000..7f9ab5e
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTianHua/DefaultValue_UnitOfMeasureName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'SHT'
+ TargetAttribute: UnitOfMeasureName
+}
diff --git a/_Main/BL/Type_PanelMaterialTianHua/StaticMethod_ReceiveDataGeneration.qbl b/_Main/BL/Type_PanelMaterialTianHua/StaticMethod_ReceiveDataGeneration.qbl
new file mode 100644
index 0000000..042dc4a
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTianHua/StaticMethod_ReceiveDataGeneration.qbl
@@ -0,0 +1,65 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod ReceiveDataGeneration (
+ GlobalOTDTable globalOTDTable,
+ NamedValueTree requestnvt
+)
+{
+ TextBody:
+ [*
+ nameValue := requestnvt.Root();
+
+ bodyHandle := requestnvt.GetHandle( "Body" );
+ restHandle := requestnvt.GetHandle( "Rest" );
+ restPayloadHandle := requestnvt.GetHandle( "RestPayload" );
+
+ bodyNameValue := nameValue.Child( bodyHandle );
+ restNameValue := bodyNameValue.Child( restHandle );
+ restPayloadNameValue := restNameValue.Child( restPayloadHandle );
+
+ releaseDateHandle := requestnvt.GetHandle( "releaseDate" );
+ businessTypeHandle := requestnvt.GetHandle( "businessType" );
+ scenarioNameHandle := requestnvt.GetHandle( "scenarioName" );
+
+ releaseDateNameValue := restPayloadNameValue.Child( releaseDateHandle );
+ businessTypeNameValue := restPayloadNameValue.Child( businessTypeHandle );
+ scenarioNameNameValue := restPayloadNameValue.Child( scenarioNameHandle );
+
+ panelMaterialAll := select( globalOTDTable, PanelMaterialAll, tempPMA, tempPMA.ScenarioName() = scenarioNameNameValue.GetValueAsString() );
+ if ( not isnull( panelMaterialAll ) ) {
+ panelMaterialAll.Delete();
+ }
+ panelMaterialAll := globalOTDTable.PanelMaterialAll( relnew,
+ ReleaseDate := releaseDateNameValue.GetValueAsString(),
+ BusinessType := businessTypeNameValue.GetValueAsString(),
+ ScenarioName := scenarioNameNameValue.GetValueAsString()
+ );
+
+ panelMaterialsHandle := requestnvt.GetHandle( "panelMaterials" );
+ panelMaterialsNameValue := restPayloadNameValue.Child( panelMaterialsHandle );
+ childPanelMaterialsNameValue := panelMaterialsNameValue.Children();
+ productIDHandle := requestnvt.GetHandle( "productID" );
+ productDescriptionHandle := requestnvt.GetHandle( "productDescription" );
+ startDateHandle := requestnvt.GetHandle( "startDate" );
+ quantityHandle := requestnvt.GetHandle( "quantity" );
+
+ cnv2 := StringToDate::StandardConverter();
+ cnv2.SetCustomConversion();
+ cnv2.CustomFormatString( 'yyyy-MM-dd' );
+
+ traverse ( childPanelMaterialsNameValue, Elements, cpmnv ) {
+ info( "浜у搧锛�", cpmnv.Child( productIDHandle ).GetValueAsString() );
+ info( "浜у搧鎻忚堪锛�", cpmnv.Child( productDescriptionHandle ).GetValueAsString() );
+ info( "寮�濮嬫椂闂达細", cpmnv.Child( startDateHandle ).GetValueAsString() );
+ info( "鏁伴噺锛�", cpmnv.Child( quantityHandle ).GetValueAsString() );
+ panelMaterialAll.PanelMaterialTianHua( relnew,
+ Customer := businessTypeNameValue.GetValueAsString(),
+ ID := OS::GenerateGUIDAsString(),
+ OrderDate := cnv2.Convert( cpmnv.Child( startDateHandle ).GetValueAsString() ),
+ ProductID := cpmnv.Child( productIDHandle ).GetValueAsString(),
+ Quantity := cpmnv.Child( quantityHandle ).GetValueAsString(),
+ SalesSegmentName := businessTypeNameValue.GetValueAsString()
+ );
+ }
+ *]
+}
diff --git a/_Main/BL/Type_PanelMaterialTianHua/_ROOT_Type_PanelMaterialTianHua.qbl b/_Main/BL/Type_PanelMaterialTianHua/_ROOT_Type_PanelMaterialTianHua.qbl
new file mode 100644
index 0000000..d2d2fa2
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialTianHua/_ROOT_Type_PanelMaterialTianHua.qbl
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+#root
+#parent: #DomainModel
+Type PanelMaterialTianHua
+{
+ #keys: '5[414702.0.203671414][414702.0.203671412][0.0.0][414702.0.203671413][414702.0.203671415]'
+ BaseType: Object
+ Description: '澶╄姳'
+ StructuredName: 'PanelMaterialTianHuas'
+}
diff --git a/_Main/BL/Type_PanelMaterialVehicle/Attribute_CurrencyID.qbl b/_Main/BL/Type_PanelMaterialVehicle/Attribute_CurrencyID.qbl
new file mode 100644
index 0000000..8f3b50c
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialVehicle/Attribute_CurrencyID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute CurrencyID
+{
+ #keys: '3[414702.0.185221293][414702.0.185221292][414702.0.185221294]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialVehicle/Attribute_Customer.qbl b/_Main/BL/Type_PanelMaterialVehicle/Attribute_Customer.qbl
new file mode 100644
index 0000000..e6bc6a9
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialVehicle/Attribute_Customer.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Customer
+{
+ #keys: '3[414702.0.185221308][414702.0.185221307][414702.0.185221309]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialVehicle/Attribute_CustomerID.qbl b/_Main/BL/Type_PanelMaterialVehicle/Attribute_CustomerID.qbl
new file mode 100644
index 0000000..6395618
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialVehicle/Attribute_CustomerID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute CustomerID
+{
+ #keys: '3[414702.0.185221318][414702.0.185221317][414702.0.185221319]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialVehicle/Attribute_ID.qbl b/_Main/BL/Type_PanelMaterialVehicle/Attribute_ID.qbl
new file mode 100644
index 0000000..6156649
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialVehicle/Attribute_ID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ID
+{
+ #keys: '3[414702.0.185221328][414702.0.185221327][414702.0.185221329]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialVehicle/Attribute_IsEligibleForNetting.qbl b/_Main/BL/Type_PanelMaterialVehicle/Attribute_IsEligibleForNetting.qbl
new file mode 100644
index 0000000..5641056
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialVehicle/Attribute_IsEligibleForNetting.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute IsEligibleForNetting
+{
+ #keys: '3[414702.0.185221338][414702.0.185221337][414702.0.185221339]'
+ ValueType: Boolean
+}
diff --git a/_Main/BL/Type_PanelMaterialVehicle/Attribute_IsExcludedFromFulfillmentKPIUser.qbl b/_Main/BL/Type_PanelMaterialVehicle/Attribute_IsExcludedFromFulfillmentKPIUser.qbl
new file mode 100644
index 0000000..146d5c0
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialVehicle/Attribute_IsExcludedFromFulfillmentKPIUser.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute IsExcludedFromFulfillmentKPIUser
+{
+ #keys: '3[414702.0.185221353][414702.0.185221352][414702.0.185221354]'
+ ValueType: Boolean
+}
diff --git a/_Main/BL/Type_PanelMaterialVehicle/Attribute_IsFirmed.qbl b/_Main/BL/Type_PanelMaterialVehicle/Attribute_IsFirmed.qbl
new file mode 100644
index 0000000..9c8c56e
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialVehicle/Attribute_IsFirmed.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute IsFirmed
+{
+ #keys: '3[414702.0.185221448][414702.0.185221447][414702.0.185221449]'
+ ValueType: Boolean
+}
diff --git a/_Main/BL/Type_PanelMaterialVehicle/Attribute_OrderDate.qbl b/_Main/BL/Type_PanelMaterialVehicle/Attribute_OrderDate.qbl
new file mode 100644
index 0000000..e903396
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialVehicle/Attribute_OrderDate.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute OrderDate
+{
+ #keys: '3[414702.0.185221371][414702.0.185221370][414702.0.185221372]'
+ ValueType: Date
+}
diff --git a/_Main/BL/Type_PanelMaterialVehicle/Attribute_OrderID.qbl b/_Main/BL/Type_PanelMaterialVehicle/Attribute_OrderID.qbl
new file mode 100644
index 0000000..c204400
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialVehicle/Attribute_OrderID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute OrderID
+{
+ #keys: '3[414702.0.185221381][414702.0.185221380][414702.0.185221382]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialVehicle/Attribute_OrderLineID.qbl b/_Main/BL/Type_PanelMaterialVehicle/Attribute_OrderLineID.qbl
new file mode 100644
index 0000000..3821ce7
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialVehicle/Attribute_OrderLineID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute OrderLineID
+{
+ #keys: '3[414702.0.185221391][414702.0.185221390][414702.0.185221392]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialVehicle/Attribute_Price.qbl b/_Main/BL/Type_PanelMaterialVehicle/Attribute_Price.qbl
new file mode 100644
index 0000000..463684f
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialVehicle/Attribute_Price.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Price
+{
+ #keys: '3[414702.0.185221401][414702.0.185221400][414702.0.185221402]'
+ ValueType: Real
+}
diff --git a/_Main/BL/Type_PanelMaterialVehicle/Attribute_PriorityName.qbl b/_Main/BL/Type_PanelMaterialVehicle/Attribute_PriorityName.qbl
new file mode 100644
index 0000000..7d354ca
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialVehicle/Attribute_PriorityName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute PriorityName
+{
+ #keys: '3[414702.0.185221422][414702.0.185221421][414702.0.185221423]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialVehicle/Attribute_ProductID.qbl b/_Main/BL/Type_PanelMaterialVehicle/Attribute_ProductID.qbl
new file mode 100644
index 0000000..647a657
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialVehicle/Attribute_ProductID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ProductID
+{
+ #keys: '3[414702.0.196801332][414702.0.196801331][414702.0.196801333]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialVehicle/Attribute_Quantity.qbl b/_Main/BL/Type_PanelMaterialVehicle/Attribute_Quantity.qbl
new file mode 100644
index 0000000..1a67884
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialVehicle/Attribute_Quantity.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Quantity
+{
+ #keys: '3[414702.0.196801342][414702.0.196801341][414702.0.196801343]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialVehicle/Attribute_SalesSegmentName.qbl b/_Main/BL/Type_PanelMaterialVehicle/Attribute_SalesSegmentName.qbl
new file mode 100644
index 0000000..d10a137
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialVehicle/Attribute_SalesSegmentName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute SalesSegmentName
+{
+ #keys: '3[414702.0.185221438][414702.0.185221437][414702.0.185221439]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialVehicle/Attribute_StockingPointID.qbl b/_Main/BL/Type_PanelMaterialVehicle/Attribute_StockingPointID.qbl
new file mode 100644
index 0000000..cb09362
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialVehicle/Attribute_StockingPointID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute StockingPointID
+{
+ #keys: '3[414702.0.185221463][414702.0.185221462][414702.0.185221464]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialVehicle/Attribute_UnitOfMeasureName.qbl b/_Main/BL/Type_PanelMaterialVehicle/Attribute_UnitOfMeasureName.qbl
new file mode 100644
index 0000000..e8dbcc8
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialVehicle/Attribute_UnitOfMeasureName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute UnitOfMeasureName
+{
+ #keys: '3[414702.0.185221478][414702.0.185221477][414702.0.185221479]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_PanelMaterialVehicle/DefaultValue_CurrencyID.qbl b/_Main/BL/Type_PanelMaterialVehicle/DefaultValue_CurrencyID.qbl
new file mode 100644
index 0000000..9a0e812
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialVehicle/DefaultValue_CurrencyID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'CNY'
+ TargetAttribute: CurrencyID
+}
diff --git a/_Main/BL/Type_PanelMaterialVehicle/DefaultValue_IsEligibleForNetting.qbl b/_Main/BL/Type_PanelMaterialVehicle/DefaultValue_IsEligibleForNetting.qbl
new file mode 100644
index 0000000..8b36496
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialVehicle/DefaultValue_IsEligibleForNetting.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'true'
+ TargetAttribute: IsEligibleForNetting
+}
diff --git a/_Main/BL/Type_PanelMaterialVehicle/DefaultValue_IsExcludedFromFulfillmentKPIUser.qbl b/_Main/BL/Type_PanelMaterialVehicle/DefaultValue_IsExcludedFromFulfillmentKPIUser.qbl
new file mode 100644
index 0000000..d0e348d
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialVehicle/DefaultValue_IsExcludedFromFulfillmentKPIUser.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'false'
+ TargetAttribute: IsExcludedFromFulfillmentKPIUser
+}
diff --git a/_Main/BL/Type_PanelMaterialVehicle/DefaultValue_IsFirmed.qbl b/_Main/BL/Type_PanelMaterialVehicle/DefaultValue_IsFirmed.qbl
new file mode 100644
index 0000000..0f7ae4c
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialVehicle/DefaultValue_IsFirmed.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'true'
+ TargetAttribute: IsFirmed
+}
diff --git a/_Main/BL/Type_PanelMaterialVehicle/DefaultValue_Price.qbl b/_Main/BL/Type_PanelMaterialVehicle/DefaultValue_Price.qbl
new file mode 100644
index 0000000..577db4c
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialVehicle/DefaultValue_Price.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: '0'
+ TargetAttribute: Price
+}
diff --git a/_Main/BL/Type_PanelMaterialVehicle/DefaultValue_PriorityName.qbl b/_Main/BL/Type_PanelMaterialVehicle/DefaultValue_PriorityName.qbl
new file mode 100644
index 0000000..7c6efaa
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialVehicle/DefaultValue_PriorityName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'Normal'
+ TargetAttribute: PriorityName
+}
diff --git a/_Main/BL/Type_PanelMaterialVehicle/DefaultValue_StockingPointID.qbl b/_Main/BL/Type_PanelMaterialVehicle/DefaultValue_StockingPointID.qbl
new file mode 100644
index 0000000..6110bce
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialVehicle/DefaultValue_StockingPointID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: '鎴愬搧浠�'
+ TargetAttribute: StockingPointID
+}
diff --git a/_Main/BL/Type_PanelMaterialVehicle/DefaultValue_UnitOfMeasureName.qbl b/_Main/BL/Type_PanelMaterialVehicle/DefaultValue_UnitOfMeasureName.qbl
new file mode 100644
index 0000000..7f9ab5e
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialVehicle/DefaultValue_UnitOfMeasureName.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'SHT'
+ TargetAttribute: UnitOfMeasureName
+}
diff --git a/_Main/BL/Type_PanelMaterialVehicle/StaticMethod_ReceiveDataGeneration.qbl b/_Main/BL/Type_PanelMaterialVehicle/StaticMethod_ReceiveDataGeneration.qbl
new file mode 100644
index 0000000..3174738
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialVehicle/StaticMethod_ReceiveDataGeneration.qbl
@@ -0,0 +1,65 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod ReceiveDataGeneration (
+ GlobalOTDTable globalOTDTable,
+ NamedValueTree requestnvt
+)
+{
+ TextBody:
+ [*
+ nameValue := requestnvt.Root();
+
+ bodyHandle := requestnvt.GetHandle( "Body" );
+ restHandle := requestnvt.GetHandle( "Rest" );
+ restPayloadHandle := requestnvt.GetHandle( "RestPayload" );
+
+ bodyNameValue := nameValue.Child( bodyHandle );
+ restNameValue := bodyNameValue.Child( restHandle );
+ restPayloadNameValue := restNameValue.Child( restPayloadHandle );
+
+ releaseDateHandle := requestnvt.GetHandle( "releaseDate" );
+ businessTypeHandle := requestnvt.GetHandle( "businessType" );
+ scenarioNameHandle := requestnvt.GetHandle( "scenarioName" );
+
+ releaseDateNameValue := restPayloadNameValue.Child( releaseDateHandle );
+ businessTypeNameValue := restPayloadNameValue.Child( businessTypeHandle );
+ scenarioNameNameValue := restPayloadNameValue.Child( scenarioNameHandle );
+
+ panelMaterialAll := select( globalOTDTable, PanelMaterialAll, tempPMA, tempPMA.ScenarioName() = scenarioNameNameValue.GetValueAsString() );
+ if ( not isnull( panelMaterialAll ) ) {
+ panelMaterialAll.Delete();
+ }
+ panelMaterialAll := globalOTDTable.PanelMaterialAll( relnew,
+ ReleaseDate := releaseDateNameValue.GetValueAsString(),
+ BusinessType := businessTypeNameValue.GetValueAsString(),
+ ScenarioName := scenarioNameNameValue.GetValueAsString()
+ );
+
+ panelMaterialsHandle := requestnvt.GetHandle( "panelMaterials" );
+ panelMaterialsNameValue := restPayloadNameValue.Child( panelMaterialsHandle );
+ childPanelMaterialsNameValue := panelMaterialsNameValue.Children();
+ productIDHandle := requestnvt.GetHandle( "productID" );
+ productDescriptionHandle := requestnvt.GetHandle( "productDescription" );
+ startDateHandle := requestnvt.GetHandle( "startDate" );
+ quantityHandle := requestnvt.GetHandle( "quantity" );
+
+ cnv2 := StringToDate::StandardConverter();
+ cnv2.SetCustomConversion();
+ cnv2.CustomFormatString( 'yyyy-MM-dd' );
+
+ traverse ( childPanelMaterialsNameValue, Elements, cpmnv ) {
+ info( "浜у搧锛�", cpmnv.Child( productIDHandle ).GetValueAsString() );
+ info( "浜у搧鎻忚堪锛�", cpmnv.Child( productDescriptionHandle ).GetValueAsString() );
+ info( "寮�濮嬫椂闂达細", cpmnv.Child( startDateHandle ).GetValueAsString() );
+ info( "鏁伴噺锛�", cpmnv.Child( quantityHandle ).GetValueAsString() );
+ panelMaterialAll.PanelMaterialVehicle( relnew,
+ Customer := businessTypeNameValue.GetValueAsString(),
+ ID := OS::GenerateGUIDAsString(),
+ OrderDate := cnv2.Convert( cpmnv.Child( startDateHandle ).GetValueAsString() ),
+ ProductID := cpmnv.Child( productIDHandle ).GetValueAsString(),
+ Quantity := cpmnv.Child( quantityHandle ).GetValueAsString(),
+ SalesSegmentName := businessTypeNameValue.GetValueAsString()
+ );
+ }
+ *]
+}
diff --git a/_Main/BL/Type_PanelMaterialVehicle/_ROOT_Type_PanelMaterialVehicle.qbl b/_Main/BL/Type_PanelMaterialVehicle/_ROOT_Type_PanelMaterialVehicle.qbl
new file mode 100644
index 0000000..345f7a9
--- /dev/null
+++ b/_Main/BL/Type_PanelMaterialVehicle/_ROOT_Type_PanelMaterialVehicle.qbl
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+#root
+#parent: #DomainModel
+Type PanelMaterialVehicle
+{
+ #keys: '5[414702.0.185221272][414702.0.185221270][0.0.0][414702.0.185221271][414702.0.185221273]'
+ BaseType: Object
+ Description: '杞﹁浇'
+ StructuredName: 'PanelMaterialVehicles'
+}
diff --git a/_Main/BL/Type_ProductInLane/StaticMethod_CreateOrUpdate.qbl b/_Main/BL/Type_ProductInLane/StaticMethod_CreateOrUpdate.qbl
index 0db749e..0359b3f 100644
--- a/_Main/BL/Type_ProductInLane/StaticMethod_CreateOrUpdate.qbl
+++ b/_Main/BL/Type_ProductInLane/StaticMethod_CreateOrUpdate.qbl
@@ -17,12 +17,14 @@
product := Product_MP::FindById( owner, productid );
line := Lane::FindLaneTypeIndex( lineid );
- productinline := ProductInLane::FindProductInLaneTypeIndex( lineid, productid );
+ if( not isnull( product) and not isnull( line)){
+ productinline := ProductInLane::FindProductInLaneTypeIndex( lineid, productid );
- if( isnull( productinline ) ){
+ if( isnull( productinline ) ){
ProductInLane::Create( product, line, isexcluded, isfromdb );
}else{
- productinline.Update( productid, lineid, isexcluded, isfromdb );
+ productinline.Update( productid, lineid, isexcluded, isfromdb );
}
+ }
*]
}
diff --git a/_Main/BL/Type_Product_MP/Attribute_IsPanelMaterial.qbl b/_Main/BL/Type_Product_MP/Attribute_IsPanelMaterial.qbl
new file mode 100644
index 0000000..461f519
--- /dev/null
+++ b/_Main/BL/Type_Product_MP/Attribute_IsPanelMaterial.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute IsPanelMaterial
+{
+ #keys: '3[414702.0.155922090][414702.0.155922089][414702.0.155922091]'
+ Description: '鏄惁涓洪潰鏉跨墿鏂�'
+ ValueType: Boolean
+}
diff --git a/_Main/BL/Type_StockingPoint_MP/StaticMethod_CreateStockingpointFromJson.qbl b/_Main/BL/Type_StockingPoint_MP/StaticMethod_CreateStockingpointFromJson.qbl
index 1859d28..e4dae0e 100644
--- a/_Main/BL/Type_StockingPoint_MP/StaticMethod_CreateStockingpointFromJson.qbl
+++ b/_Main/BL/Type_StockingPoint_MP/StaticMethod_CreateStockingpointFromJson.qbl
@@ -9,7 +9,7 @@
TextBody:
[*
// Administrator Jul-7-2023 (created)
- id := datarow.Get( "id" ).GetString()+"_STOCK";
+ id := datarow.Get( "id" ).GetString();
unitid := datarow.Get( "unitid" ).GetString();
name := datarow.Get( "name" ).GetString();
diff --git a/_Main/BL/Type_WorkOrderType/Attribute_ID.qbl b/_Main/BL/Type_WorkOrderType/Attribute_ID.qbl
new file mode 100644
index 0000000..9a6c41f
--- /dev/null
+++ b/_Main/BL/Type_WorkOrderType/Attribute_ID.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ID
+{
+ #keys: '3[414702.0.144781493][414702.0.144781492][414702.0.144781494]'
+ Description: '宸ュ崟ID'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_WorkOrderType/Attribute_TypeName.qbl b/_Main/BL/Type_WorkOrderType/Attribute_TypeName.qbl
new file mode 100644
index 0000000..36bf622
--- /dev/null
+++ b/_Main/BL/Type_WorkOrderType/Attribute_TypeName.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute TypeName
+{
+ #keys: '3[414702.0.144781503][414702.0.144781502][414702.0.144781504]'
+ Description: '宸ュ崟绫诲瀷鍚嶇О'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_WorkOrderType/_ROOT_Type_WorkOrderType.qbl b/_Main/BL/Type_WorkOrderType/_ROOT_Type_WorkOrderType.qbl
new file mode 100644
index 0000000..866ac32
--- /dev/null
+++ b/_Main/BL/Type_WorkOrderType/_ROOT_Type_WorkOrderType.qbl
@@ -0,0 +1,9 @@
+Quintiq file version 2.0
+#root
+#parent: #DomainModel
+Type WorkOrderType
+{
+ #keys: '5[414702.0.144781471][414702.0.144781469][0.0.0][414702.0.144781470][414702.0.144781472]'
+ BaseType: Object
+ StructuredName: 'WorkOrderTypes'
+}
diff --git a/_Main/Sys/Integration/Brokers/PanelMaterialResponseResult.xml b/_Main/Sys/Integration/Brokers/PanelMaterialResponseResult.xml
new file mode 100644
index 0000000..78d17af
--- /dev/null
+++ b/_Main/Sys/Integration/Brokers/PanelMaterialResponseResult.xml
Binary files differ
diff --git a/_Main/Sys/Integration/Mapping/PanelMaterialResponseResult.xml b/_Main/Sys/Integration/Mapping/PanelMaterialResponseResult.xml
new file mode 100644
index 0000000..a2b6fc7
--- /dev/null
+++ b/_Main/Sys/Integration/Mapping/PanelMaterialResponseResult.xml
Binary files differ
diff --git a/_Main/Sys/Integration/Structure/PanelMaterialResponseResult_from.xml b/_Main/Sys/Integration/Structure/PanelMaterialResponseResult_from.xml
new file mode 100644
index 0000000..54bd566
--- /dev/null
+++ b/_Main/Sys/Integration/Structure/PanelMaterialResponseResult_from.xml
Binary files differ
diff --git a/_Main/Sys/Integration/Structure/PanelMaterialResponseResult_to.xml b/_Main/Sys/Integration/Structure/PanelMaterialResponseResult_to.xml
new file mode 100644
index 0000000..b381552
--- /dev/null
+++ b/_Main/Sys/Integration/Structure/PanelMaterialResponseResult_to.xml
Binary files differ
diff --git a/_Main/UI/MacroPlanner/Component_FormProducts/Component_ListProduct.def b/_Main/UI/MacroPlanner/Component_FormProducts/Component_ListProduct.def
new file mode 100644
index 0000000..f74c93c
--- /dev/null
+++ b/_Main/UI/MacroPlanner/Component_FormProducts/Component_ListProduct.def
@@ -0,0 +1,42 @@
+Quintiq file version 2.0
+Component ListProduct #extension
+{
+ Children:
+ [
+ Component popupListProduct #extension
+ {
+ Children:
+ [
+ Component PopupParent #extension
+ {
+ Children:
+ [
+ Component menuSeparator631 { #keys: '[414702.0.157554503]' BaseType: 'Menu' Properties: [ Separator: true ] }
+ Component MenuConvertToPanelMaterial { #keys: '[414702.0.157554555]' BaseType: 'Menu' Properties: [ Image: 'PLASMA-TV' Text: '杞崲涓洪潰鏉跨墿鏂�' ] }
+ ]
+ Properties:
+ [
+ ModeledStringList ChildOrdering
+ {
+ c: MenuActions
+ c: MenuFilter
+ c: menuListQuintiqSetQuantor
+ c: MenuSeparator
+ c: MenuNewProduct
+ c: MenuEditProduct
+ c: MenuDeleteProduct
+ c: MenuCopyIncludingSP
+ c: Menu3
+ c: MenuSmartPlan1
+ c: Menu49
+ c: MenuEditDisplayIndex
+ c: MenuEditVisualization2
+ c: menuSeparator631
+ c: MenuConvertToPanelMaterial
+ }
+ ]
+ }
+ ]
+ }
+ ]
+}
diff --git a/_Main/UI/MacroPlanner/Component_FormProducts/Component_SplitterWnd8.def b/_Main/UI/MacroPlanner/Component_FormProducts/Component_SplitterWnd8.def
new file mode 100644
index 0000000..a925236
--- /dev/null
+++ b/_Main/UI/MacroPlanner/Component_FormProducts/Component_SplitterWnd8.def
@@ -0,0 +1,14 @@
+Quintiq file version 2.0
+Component SplitterWnd8 #extension
+{
+ Children:
+ [
+ Component SplitterPane #extension
+ {
+ Children:
+ [
+ #child: ListProduct
+ ]
+ }
+ ]
+}
diff --git a/_Main/UI/MacroPlanner/Component_FormProducts/Response_TIANMA_JITUAN_ListProduct_MenuConvertToPanelMaterial_OnClick.def b/_Main/UI/MacroPlanner/Component_FormProducts/Response_TIANMA_JITUAN_ListProduct_MenuConvertToPanelMaterial_OnClick.def
new file mode 100644
index 0000000..fc90953
--- /dev/null
+++ b/_Main/UI/MacroPlanner/Component_FormProducts/Response_TIANMA_JITUAN_ListProduct_MenuConvertToPanelMaterial_OnClick.def
@@ -0,0 +1,14 @@
+Quintiq file version 2.0
+#parent: ListProduct
+Response OnClick (
+ Product_MP selection
+) id:Response_TIANMA_JITUAN_ListProduct_MenuConvertToPanelMaterial_OnClick
+{
+ #keys: '[414702.0.157554653]'
+ Body:
+ [*
+ selection.IsPanelMaterial( not selection.IsPanelMaterial() );
+ *]
+ DefinitionID => //ListProduct/Responsedef_ListProduct_Menu_OnClick
+ Initiator: 'MenuConvertToPanelMaterial'
+}
diff --git a/_Main/UI/MacroPlanner/Component_FormProducts/_ROOT_Component_FormProducts.def b/_Main/UI/MacroPlanner/Component_FormProducts/_ROOT_Component_FormProducts.def
new file mode 100644
index 0000000..a83580c
--- /dev/null
+++ b/_Main/UI/MacroPlanner/Component_FormProducts/_ROOT_Component_FormProducts.def
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+#root
+#parent: LibMacroPlannerTCUI
+OrphanComponent FormProducts #extension
+{
+ Children:
+ [
+ #child: SplitterWnd8
+ ]
+}
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ActionBarGroupSalesViews\043633.def" "b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ActionBarGroupSalesViews\043633.def"
new file mode 100644
index 0000000..82df44f
--- /dev/null
+++ "b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ActionBarGroupSalesViews\043633.def"
@@ -0,0 +1,22 @@
+Quintiq file version 2.0
+Component ActionBarGroupSalesViews #extension
+{
+ Children:
+ [
+ Component ButtonSalesFillingCapacity
+ {
+ #keys: '[414382.0.436830247]'
+ BaseType: 'WebButton'
+ Children:
+ [
+ #child: ContextMenuSalesFillingCapacity
+ ]
+ Properties:
+ [
+ Image: 'BLOT'
+ Label: '濉骇'
+ Taborder: 3
+ ]
+ }
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ActionBarPageSales.def b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ActionBarPageSales.def
new file mode 100644
index 0000000..173d640
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ActionBarPageSales.def
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+Component ActionBarPageSales #extension
+{
+ Children:
+ [
+ #child: ActionBarGroupSalesViews
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ContextMenuSalesFillingCapacity.def b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ContextMenuSalesFillingCapacity.def
new file mode 100644
index 0000000..3dddc43
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ContextMenuSalesFillingCapacity.def
@@ -0,0 +1,36 @@
+Quintiq file version 2.0
+Component ContextMenuSalesFillingCapacity
+{
+ #keys: '[414382.0.437003283]'
+ BaseType: 'WebContextMenu'
+ Children:
+ [
+ Component MenuSalesFillingCapacity
+ {
+ #keys: '[414382.0.437003284]'
+ BaseType: 'WebMenu'
+ Properties:
+ [
+ Image: 'ELEMENT_BLUE'
+ Taborder: 0
+ Title: 'Filling Capacity Scheme List'
+ Tooltip: 'Filling Capacity Scheme List'
+ ]
+ }
+ Component MenuSalesFillingSchemeDetail
+ {
+ #keys: '[414382.0.436840646]'
+ BaseType: 'WebMenu'
+ Properties:
+ [
+ Image: 'ELEMENT_ORANGE'
+ Taborder: 1
+ Title: '濉骇鍘嗗彶璁㈠崟鍒楄〃'
+ ]
+ }
+ ]
+ Properties:
+ [
+ Taborder: 0
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_TIANMA_JITUAN_ContextMenuSalesFillingCapacity_MenuSalesFillingCapac.def b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_TIANMA_JITUAN_ContextMenuSalesFillingCapacity_MenuSalesFillingCapac.def
new file mode 100644
index 0000000..3aa17b6
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_TIANMA_JITUAN_ContextMenuSalesFillingCapacity_MenuSalesFillingCapac.def
@@ -0,0 +1,18 @@
+Quintiq file version 2.0
+#parent: ContextMenuSalesFillingCapacity/MenuSalesFillingCapacity
+Response OnClick () id:Response_TIANMA_JITUAN_ContextMenuSalesFillingCapacity_MenuSalesFillingCapacity_OnClick
+{
+ #keys: '[414382.0.437390498]'
+ CanBindMultiple: false
+ DefinitionID: 'Responsedef_WebMenu_OnClick'
+ QuillAction
+ {
+ Body:
+ [*
+ // Open view
+ //ApplicationMacroPlanner.OpenView( 'Filling Capacity Scheme List',ButtonSalesFillingCapacity);
+ ApplicationMacroPlanner.OpenView( 'View Sales Segments', ButtonSalesFillingCapacity );
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_TIANMA_JITUAN_ContextMenuSalesFillingCapacity_MenuSalesFillingSchem.def b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_TIANMA_JITUAN_ContextMenuSalesFillingCapacity_MenuSalesFillingSchem.def
new file mode 100644
index 0000000..0fd125b
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_TIANMA_JITUAN_ContextMenuSalesFillingCapacity_MenuSalesFillingSchem.def
@@ -0,0 +1,19 @@
+Quintiq file version 2.0
+#parent: ContextMenuSalesFillingCapacity/MenuSalesFillingSchemeDetail
+Response OnClick () id:Response_TIANMA_JITUAN_ContextMenuSalesFillingCapacity_MenuSalesFillingSchemeDetail_OnClick
+{
+ #keys: '[414382.0.439022595]'
+ CanBindMultiple: false
+ DefinitionID: 'Responsedef_WebMenu_OnClick'
+ QuillAction
+ {
+ Body:
+ [*
+ // Open view
+ //ApplicationMacroPlanner.OpenView( "FillingCapacitySchemeList",ButtonSalesFillingCapacity);
+ ApplicationMacroPlanner.OpenViewAndFocusButton( "FillingCapacitySchemeList");
+ //Application.OpenForm( "FormFillingScheme");
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/_ROOT_Component_ApplicationMacroPlanner.def b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/_ROOT_Component_ApplicationMacroPlanner.def
index 0b3ed2a..72e5ee3 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/_ROOT_Component_ApplicationMacroPlanner.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/_ROOT_Component_ApplicationMacroPlanner.def
@@ -10,6 +10,7 @@
Children:
[
#child: ActionBarPageData
+ #child: ActionBarPageSales
]
}
Component DataHolderCapacityAndSaleBudgeFilterItem
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogBusinessType/Component_pnlActions.def b/_Main/UI/MacroPlannerWebApp/Component_DialogBusinessType/Component_pnlActions.def
new file mode 100644
index 0000000..53808c5
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogBusinessType/Component_pnlActions.def
@@ -0,0 +1,40 @@
+Quintiq file version 2.0
+Component pnlActions
+{
+ #keys: '[414382.0.375080433]'
+ BaseType: 'WebPanel'
+ Children:
+ [
+ Component btnOk
+ {
+ #keys: '[414382.0.375080437]'
+ BaseType: 'WebButton'
+ Properties:
+ [
+ Label: 'OK'
+ Taborder: 0
+ ]
+ }
+ Component btnCancel
+ {
+ #keys: '[414382.0.375080439]'
+ BaseType: 'WebButton'
+ Properties:
+ [
+ Label: 'Cancel'
+ Taborder: 1
+ ]
+ }
+ ]
+ Properties:
+ [
+ Alignment: 'trailing'
+ Border: true
+ ExcludeFromActiveComponent: true
+ FixedSize: true
+ Orientation: 'horizontal'
+ Padding: 'true'
+ Style: 'footer'
+ Taborder: 1
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogBusinessType/Component_pnlContent.def b/_Main/UI/MacroPlannerWebApp/Component_DialogBusinessType/Component_pnlContent.def
new file mode 100644
index 0000000..b6cdcbb
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogBusinessType/Component_pnlContent.def
@@ -0,0 +1,25 @@
+Quintiq file version 2.0
+Component pnlContent
+{
+ #keys: '[414382.0.375080431]'
+ BaseType: 'WebPanel'
+ Children:
+ [
+ Component edtBusinessTypeName
+ {
+ #keys: '[414382.0.376790705]'
+ BaseType: 'WebEditField'
+ Properties:
+ [
+ DataBinding: 'DataHolderBusinessType.Data.BusinessTypeName'
+ Label: 'Business Type Name'
+ Taborder: 0
+ ]
+ }
+ ]
+ Properties:
+ [
+ Padding: 'true'
+ Taborder: 0
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogBusinessType/Method_ClickBtnOk.def b/_Main/UI/MacroPlannerWebApp/Component_DialogBusinessType/Method_ClickBtnOk.def
new file mode 100644
index 0000000..54a2fe2
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogBusinessType/Method_ClickBtnOk.def
@@ -0,0 +1,25 @@
+Quintiq file version 2.0
+#parent: #root
+Method ClickBtnOk () id:Method_DialogBusinessType_ClickBtnOk
+{
+ #keys: '[414382.0.377972914]'
+ Body:
+ [*
+ // Disabled button to prevent the possibility of multiple firing
+
+ btnOk.Enabled(false,'');
+
+ // OnOk
+ this.ApplyChanges();
+
+ DataHolderBusinessType.Data().Commit();
+
+ //if( not isnull( DataHolderForm.Data() ) )
+ //{
+ // // Access the form, select the new assumption
+ // DataHolderForm.Data().ListAssumptions().SelectByKey( DataHolderDialogData.Data().WrappedInstance().Key() );
+ //}
+
+ this.Close();
+ *]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogBusinessType/Method_Edit.def b/_Main/UI/MacroPlannerWebApp/Component_DialogBusinessType/Method_Edit.def
new file mode 100644
index 0000000..25e0b31
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogBusinessType/Method_Edit.def
@@ -0,0 +1,17 @@
+Quintiq file version 2.0
+#parent: #root
+Method Edit (
+ BusinessType selection
+) id:Method_DialogBusinessType_Edit
+{
+ #keys: '[414382.0.377851336]'
+ Body:
+ [*
+ // Edits assumption
+ data := shadow( selection );
+
+ DataHolderBusinessType.Data( &data );
+
+ ApplicationMacroPlanner.ShowFormModal( this );
+ *]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogBusinessType/Method_New.def b/_Main/UI/MacroPlannerWebApp/Component_DialogBusinessType/Method_New.def
new file mode 100644
index 0000000..53d05de
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogBusinessType/Method_New.def
@@ -0,0 +1,15 @@
+Quintiq file version 2.0
+#parent: #root
+Method New (
+ GlobalOTDTable owner
+) id:Method_DialogBusinessType_New
+{
+ #keys: '[414382.0.376712323]'
+ Body:
+ [*
+ data := owner.BusinessType(relshadow);
+ DataHolderBusinessType.Data( &data);
+
+ ApplicationMacroPlanner.ShowFormModal( this );
+ *]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogBusinessType/Response_pnlActions_btnCancel_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_DialogBusinessType/Response_pnlActions_btnCancel_OnClick.def
new file mode 100644
index 0000000..02f853a
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogBusinessType/Response_pnlActions_btnCancel_OnClick.def
@@ -0,0 +1,15 @@
+Quintiq file version 2.0
+#parent: pnlActions/btnCancel
+Response OnClick () id:Response_pnlActions_btnCancel_OnClick
+{
+ #keys: '[414382.0.375080443]'
+ DefinitionID: 'Responsedef_WebButton_OnClick'
+ GroupServerCalls: true
+ QuillAction
+ {
+ Body:
+ [*
+ Form.Close();
+ *]
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogBusinessType/Response_pnlActions_btnOk_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_DialogBusinessType/Response_pnlActions_btnOk_OnClick.def
new file mode 100644
index 0000000..b0478e7
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogBusinessType/Response_pnlActions_btnOk_OnClick.def
@@ -0,0 +1,15 @@
+Quintiq file version 2.0
+#parent: pnlActions/btnOk
+Response OnClick () id:Response_pnlActions_btnOk_OnClick
+{
+ #keys: '[414382.0.375080442]'
+ DefinitionID: 'Responsedef_WebButton_OnClick'
+ GroupServerCalls: true
+ QuillAction
+ {
+ Body:
+ [*
+ Form.ClickBtnOk()
+ *]
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogBusinessType/_ROOT_Component_DialogBusinessType.def b/_Main/UI/MacroPlannerWebApp/Component_DialogBusinessType/_ROOT_Component_DialogBusinessType.def
new file mode 100644
index 0000000..c08a626
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogBusinessType/_ROOT_Component_DialogBusinessType.def
@@ -0,0 +1,41 @@
+Quintiq file version 2.0
+#root
+#parent: MacroPlannerWebApp
+OrphanComponent DialogBusinessType
+{
+ #keys: '[414382.0.375080429]'
+ BaseType: 'WebForm'
+ Children:
+ [
+ #child: pnlContent
+ #child: pnlActions
+ Component DataHolderBusinessType
+ {
+ #keys: '[414382.0.375080516]'
+ BaseType: 'WebDataHolder'
+ Databinding: 'shadow[BusinessType]*'
+ Properties:
+ [
+ Taborder: 2
+ ]
+ }
+ Component DataHolderForm id:DataHolderForm_568
+ {
+ #keys: '[414382.0.376741089]'
+ BaseType: 'WebDataHolder'
+ Databinding: 'BusinessType'
+ Properties:
+ [
+ Taborder: 3
+ ]
+ }
+ ]
+ Properties:
+ [
+ Alignment: 'trailing'
+ EnterButton: 'btnOk'
+ EscapeButton: 'btnCancel'
+ ExcludeFromActiveComponent: true
+ Padding: 'false'
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/Component_pnlActions.def b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/Component_pnlActions.def
new file mode 100644
index 0000000..f0a3335
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/Component_pnlActions.def
@@ -0,0 +1,40 @@
+Quintiq file version 2.0
+Component pnlActions
+{
+ #keys: '[414702.0.157903684]'
+ BaseType: 'WebPanel'
+ Children:
+ [
+ Component btnOk
+ {
+ #keys: '[414702.0.157903688]'
+ BaseType: 'WebButton'
+ Properties:
+ [
+ Label: 'OK'
+ Taborder: 0
+ ]
+ }
+ Component btnCancel
+ {
+ #keys: '[414702.0.157903690]'
+ BaseType: 'WebButton'
+ Properties:
+ [
+ Label: 'Cancel'
+ Taborder: 1
+ ]
+ }
+ ]
+ Properties:
+ [
+ Alignment: 'trailing'
+ Border: true
+ ExcludeFromActiveComponent: true
+ FixedSize: true
+ Orientation: 'horizontal'
+ Padding: 'true'
+ Style: 'footer'
+ Taborder: 2
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/Component_pnlContent.def b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/Component_pnlContent.def
new file mode 100644
index 0000000..d7beca4
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/Component_pnlContent.def
@@ -0,0 +1,58 @@
+Quintiq file version 2.0
+Component pnlContent
+{
+ #keys: '[414702.0.157903682]'
+ BaseType: 'WebPanel'
+ Children:
+ [
+ Component dsStartDate
+ {
+ #keys: '[414702.0.158296102]'
+ BaseType: 'WebDateSelector'
+ Properties:
+ [
+ DataBinding: 'DataHolderDialogData.Data.StartDate'
+ Label: '寮�濮�'
+ Taborder: 2
+ ]
+ }
+ Component npDemandQuantity
+ {
+ #keys: '[414702.0.158296123]'
+ BaseType: 'WebNumberPicker'
+ Properties:
+ [
+ DataBinding: 'DataHolderDialogData.Data.DemandQuantity'
+ Label: '闇�姹傛暟閲�'
+ Taborder: 3
+ ]
+ }
+ Component efMaterialDescription
+ {
+ #keys: '[414702.0.157412917]'
+ BaseType: 'WebEditField'
+ Properties:
+ [
+ DataBinding: 'DataHolderDialogData.Data.MaterialDescription'
+ Label: '鐗╂枡鎻忚堪'
+ Taborder: 1
+ ]
+ }
+ Component ddslPanelModel
+ {
+ #keys: '[414702.0.157757933]'
+ BaseType: 'WebDropDownStringList'
+ Properties:
+ [
+ DataBinding: 'DataHolderDialogData.Data.PanelModel'
+ Label: '闈㈡澘鍨嬪彿'
+ Taborder: 0
+ ]
+ }
+ ]
+ Properties:
+ [
+ Padding: 'true'
+ Taborder: 1
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/Method_Edit.def b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/Method_Edit.def
new file mode 100644
index 0000000..5a8abdf
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/Method_Edit.def
@@ -0,0 +1,16 @@
+Quintiq file version 2.0
+#parent: #root
+Method Edit (
+ PanelMaterial selection
+) id:Method_DialogCreateEditPanelPullPlanReport_Edit
+{
+ #keys: '[414702.0.158677121]'
+ Body:
+ [*
+ data := shadow( selection );
+
+ DataHolderDialogData.Data( &data );
+ info( "hello world" );
+ ApplicationMacroPlanner.ShowFormModal( this );
+ *]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/Method_New.def b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/Method_New.def
new file mode 100644
index 0000000..7832386
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/Method_New.def
@@ -0,0 +1,14 @@
+Quintiq file version 2.0
+#parent: #root
+Method New () id:Method_DialogCreateEditPanelPullPlanReport_New
+{
+ #keys: '[414702.0.158084611]'
+ Body:
+ [*
+ panelMaterial := MacroPlan.PanelMaterial( relshadow );
+
+ DataHolderDialogData.Data( &panelMaterial );
+
+ ApplicationMacroPlanner.ShowFormModal( this );
+ *]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/Response_pnlActions_btnCancel_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/Response_pnlActions_btnCancel_OnClick.def
new file mode 100644
index 0000000..a98c7de
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/Response_pnlActions_btnCancel_OnClick.def
@@ -0,0 +1,15 @@
+Quintiq file version 2.0
+#parent: pnlActions/btnCancel
+Response OnClick () id:Response_pnlActions_btnCancel_OnClick
+{
+ #keys: '[414702.0.157903694]'
+ DefinitionID: 'Responsedef_WebButton_OnClick'
+ GroupServerCalls: true
+ QuillAction
+ {
+ Body:
+ [*
+ Form.Close();
+ *]
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/Response_pnlActions_btnOk_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/Response_pnlActions_btnOk_OnClick.def
new file mode 100644
index 0000000..555058d
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/Response_pnlActions_btnOk_OnClick.def
@@ -0,0 +1,35 @@
+Quintiq file version 2.0
+#parent: pnlActions/btnOk
+Response OnClick () id:Response_pnlActions_btnOk_OnClick
+{
+ #keys: '[414702.0.157903693]'
+ DefinitionID: 'Responsedef_WebButton_OnClick'
+ QuillAction
+ {
+ Body:
+ [*
+ Form.ApplyChanges();
+
+ //Form.OnOK();
+ Form.ApplyChanges();
+
+ data := DataHolderDialogData.Data();
+ panelMaterial := data.WrappedInstance();
+ if ( isnull( panelMaterial ) ) {
+ MacroPlan.PanelMaterial( relnew,
+ PanelModel := ddslPanelModel.Text(),
+ MaterialDescription := efMaterialDescription.Text(),
+ StartDate := dsStartDate.Date(),
+ DemandQuantity := npDemandQuantity.Number() );
+ } else {
+ panelMaterial.PanelModel( ddslPanelModel.Text() );
+ panelMaterial.MaterialDescription( efMaterialDescription.Text() );
+ panelMaterial.StartDate( dsStartDate.Date() );
+ panelMaterial.DemandQuantity( npDemandQuantity.Number() );
+ }
+
+ Form.Close();
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/Response_pnlContent_ddslPanelModel_OnCreated.def b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/Response_pnlContent_ddslPanelModel_OnCreated.def
new file mode 100644
index 0000000..e8f83be
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/Response_pnlContent_ddslPanelModel_OnCreated.def
@@ -0,0 +1,22 @@
+Quintiq file version 2.0
+#parent: pnlContent/ddslPanelModel
+Response OnCreated () id:Response_pnlContent_ddslPanelModel_OnCreated
+{
+ #keys: '[414702.0.158297623]'
+ CanBindMultiple: false
+ DefinitionID: 'Responsedef_WebComponent_OnCreated'
+ Precondition:
+ [*
+ return not isnull( MacroPlan );
+ *]
+ QuillAction
+ {
+ Body:
+ [*
+ ids := selectvalues( MacroPlan, Product_MP, tempPMP, tempPMP.IsPanelMaterial(), tempPMP.ID() );
+ info( ids.Concatenate( ";" ) );
+ this.Strings( ids.Concatenate( ";" ) );
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/_ROOT_Component_DialogCreateEditPanelPullPlanReport.def b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/_ROOT_Component_DialogCreateEditPanelPullPlanReport.def
new file mode 100644
index 0000000..53e5083
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/_ROOT_Component_DialogCreateEditPanelPullPlanReport.def
@@ -0,0 +1,31 @@
+Quintiq file version 2.0
+#root
+#parent: MacroPlannerWebApp
+OrphanComponent DialogCreateEditPanelPullPlanReport
+{
+ #keys: '[414702.0.157903680]'
+ BaseType: 'WebForm'
+ Children:
+ [
+ #child: pnlContent
+ #child: pnlActions
+ Component DataHolderDialogData
+ {
+ #keys: '[414702.0.156384742]'
+ BaseType: 'WebDataHolder'
+ Databinding: 'shadow[PanelMaterial]*'
+ Properties:
+ [
+ Taborder: 0
+ ]
+ }
+ ]
+ Properties:
+ [
+ Alignment: 'trailing'
+ EnterButton: 'btnOk'
+ EscapeButton: 'btnCancel'
+ ExcludeFromActiveComponent: true
+ Padding: 'false'
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditWorkOrderType/Component_pnlActions.def b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditWorkOrderType/Component_pnlActions.def
new file mode 100644
index 0000000..b309d6f
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditWorkOrderType/Component_pnlActions.def
@@ -0,0 +1,40 @@
+Quintiq file version 2.0
+Component pnlActions
+{
+ #keys: '[414702.0.145521963]'
+ BaseType: 'WebPanel'
+ Children:
+ [
+ Component btnOk
+ {
+ #keys: '[414702.0.145521967]'
+ BaseType: 'WebButton'
+ Properties:
+ [
+ Label: 'OK'
+ Taborder: 0
+ ]
+ }
+ Component btnCancel
+ {
+ #keys: '[414702.0.145521969]'
+ BaseType: 'WebButton'
+ Properties:
+ [
+ Label: 'Cancel'
+ Taborder: 1
+ ]
+ }
+ ]
+ Properties:
+ [
+ Alignment: 'trailing'
+ Border: true
+ ExcludeFromActiveComponent: true
+ FixedSize: true
+ Orientation: 'horizontal'
+ Padding: 'true'
+ Style: 'footer'
+ Taborder: 3
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditWorkOrderType/Component_pnlContent.def b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditWorkOrderType/Component_pnlContent.def
new file mode 100644
index 0000000..8016c0b
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditWorkOrderType/Component_pnlContent.def
@@ -0,0 +1,36 @@
+Quintiq file version 2.0
+Component pnlContent
+{
+ #keys: '[414702.0.145521961]'
+ BaseType: 'WebPanel'
+ Children:
+ [
+ Component efID
+ {
+ #keys: '[414702.0.145552802]'
+ BaseType: 'WebEditField'
+ Properties:
+ [
+ DataBinding: 'DataHolderDialogData.Data.ID'
+ Label: 'ID'
+ Taborder: 0
+ ]
+ }
+ Component efTypeName
+ {
+ #keys: '[414702.0.145552821]'
+ BaseType: 'WebEditField'
+ Properties:
+ [
+ DataBinding: 'DataHolderDialogData.Data.TypeName'
+ Label: '宸ュ崟绫诲瀷'
+ Taborder: 1
+ ]
+ }
+ ]
+ Properties:
+ [
+ Padding: 'true'
+ Taborder: 2
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditWorkOrderType/Method_Edit.def b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditWorkOrderType/Method_Edit.def
new file mode 100644
index 0000000..ae005f8
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditWorkOrderType/Method_Edit.def
@@ -0,0 +1,17 @@
+Quintiq file version 2.0
+#parent: #root
+Method Edit (
+ WorkOrderType selection
+) id:Method_DialogCreateEditWorkOrderType_Edit
+{
+ #keys: '[414702.0.148405777]'
+ Body:
+ [*
+ // Edit
+ data := shadow( selection );
+
+ DataHolderDialogData.Data( &data );
+
+ ApplicationMacroPlanner.ShowFormModal( this );
+ *]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditWorkOrderType/Method_NewWorkOrderType.def b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditWorkOrderType/Method_NewWorkOrderType.def
new file mode 100644
index 0000000..d805656
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditWorkOrderType/Method_NewWorkOrderType.def
@@ -0,0 +1,18 @@
+Quintiq file version 2.0
+#parent: #root
+Method NewWorkOrderType (
+ FormWorkOrderType formWorkOrderType
+) id:Method_DialogCreateEditWorkOrderType_NewWorkOrderType
+{
+ #keys: '[414702.0.145493830]'
+ Body:
+ [*
+ workOrderType := GlobalOTDTable.WorkOrderType( relshadow );
+
+ DataHolderForm.Data( formWorkOrderType );
+
+ DataHolderDialogData.Data( &workOrderType );
+
+ ApplicationMacroPlanner.ShowFormModal( this );
+ *]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditWorkOrderType/Response_pnlActions_btnCancel_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditWorkOrderType/Response_pnlActions_btnCancel_OnClick.def
new file mode 100644
index 0000000..445c198
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditWorkOrderType/Response_pnlActions_btnCancel_OnClick.def
@@ -0,0 +1,15 @@
+Quintiq file version 2.0
+#parent: pnlActions/btnCancel
+Response OnClick () id:Response_pnlActions_btnCancel_OnClick
+{
+ #keys: '[414702.0.145521973]'
+ DefinitionID: 'Responsedef_WebButton_OnClick'
+ GroupServerCalls: true
+ QuillAction
+ {
+ Body:
+ [*
+ Form.Close();
+ *]
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditWorkOrderType/Response_pnlActions_btnOk_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditWorkOrderType/Response_pnlActions_btnOk_OnClick.def
new file mode 100644
index 0000000..e5f4159
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditWorkOrderType/Response_pnlActions_btnOk_OnClick.def
@@ -0,0 +1,48 @@
+Quintiq file version 2.0
+#parent: pnlActions/btnOk
+Response OnClick () id:Response_pnlActions_btnOk_OnClick
+{
+ #keys: '[414702.0.145521972]'
+ DefinitionID: 'Responsedef_WebButton_OnClick'
+ Precondition:
+ [*
+ flag := true;
+
+ data := DataHolderDialogData.Data();
+ id := efID.Text();
+ typeName := efTypeName.Text();
+
+ idExists := exists( GlobalOTDTable, WorkOrderType, tempWOT, tempWOT.ID() = id and tempWOT.ID() <> data.ID() );
+ typeNameExists := exists( GlobalOTDTable, WorkOrderType, tempWOT, tempWOT.TypeName() = typeName and tempWOT.TypeName() <> data.TypeName() );
+
+ if ( idExists or typeNameExists ) {
+ feedback := "ID鎴栫被鍨嬪悕绉伴噸澶�";
+ flag := false;
+ } else if ( id = "" or typeName = "" ) {
+ feedback := "ID鎴栫被鍨嬪悕绉颁笉鑳戒负绌�";
+ flag := false;
+ }
+
+ return flag;
+ *]
+ QuillAction
+ {
+ Body:
+ [*
+ //Form.OnOK();
+ Form.ApplyChanges();
+
+ data := DataHolderDialogData.Data();
+ workOrderType := data.WrappedInstance();
+ if ( isnull( workOrderType ) ) {
+ GlobalOTDTable.WorkOrderType( relnew, ID := data.ID(), TypeName := data.TypeName() );
+ } else {
+ workOrderType.ID( data.ID() );
+ workOrderType.TypeName( data.TypeName() );
+ }
+
+ Form.Close();
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditWorkOrderType/_ROOT_Component_DialogCreateEditWorkOrderType.def b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditWorkOrderType/_ROOT_Component_DialogCreateEditWorkOrderType.def
new file mode 100644
index 0000000..24d0a68
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditWorkOrderType/_ROOT_Component_DialogCreateEditWorkOrderType.def
@@ -0,0 +1,41 @@
+Quintiq file version 2.0
+#root
+#parent: MacroPlannerWebApp
+OrphanComponent DialogCreateEditWorkOrderType
+{
+ #keys: '[414702.0.145521959]'
+ BaseType: 'WebForm'
+ Children:
+ [
+ #child: pnlContent
+ #child: pnlActions
+ Component DataHolderDialogData
+ {
+ #keys: '[414702.0.145552868]'
+ BaseType: 'WebDataHolder'
+ Databinding: 'shadow[WorkOrderType]*'
+ Properties:
+ [
+ Taborder: 0
+ ]
+ }
+ Component DataHolderForm
+ {
+ #keys: '[414702.0.147371367]'
+ BaseType: 'WebDataHolder'
+ Databinding: 'FormWorkOrderType'
+ Properties:
+ [
+ Taborder: 1
+ ]
+ }
+ ]
+ Properties:
+ [
+ Alignment: 'trailing'
+ EnterButton: 'btnOk'
+ EscapeButton: 'btnCancel'
+ ExcludeFromActiveComponent: true
+ Padding: 'false'
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Component_pnlActions.def b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Component_pnlActions.def
new file mode 100644
index 0000000..18c3540
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Component_pnlActions.def
@@ -0,0 +1,40 @@
+Quintiq file version 2.0
+Component pnlActions
+{
+ #keys: '[414382.0.400131325]'
+ BaseType: 'WebPanel'
+ Children:
+ [
+ Component btnOk
+ {
+ #keys: '[414382.0.400131329]'
+ BaseType: 'WebButton'
+ Properties:
+ [
+ Label: 'OK'
+ Taborder: 0
+ ]
+ }
+ Component btnCancel
+ {
+ #keys: '[414382.0.400131331]'
+ BaseType: 'WebButton'
+ Properties:
+ [
+ Label: 'Cancel'
+ Taborder: 1
+ ]
+ }
+ ]
+ Properties:
+ [
+ Alignment: 'trailing'
+ Border: true
+ ExcludeFromActiveComponent: true
+ FixedSize: true
+ Orientation: 'horizontal'
+ Padding: 'true'
+ Style: 'footer'
+ Taborder: 1
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Component_pnlContent.def b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Component_pnlContent.def
new file mode 100644
index 0000000..63e6384
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Component_pnlContent.def
@@ -0,0 +1,125 @@
+Quintiq file version 2.0
+Component pnlContent
+{
+ #keys: '[414382.0.400131323]'
+ BaseType: 'WebPanel'
+ Children:
+ [
+ Component dropDownStringListProductID id:dropDownStringListProductID_387
+ {
+ #keys: '[414382.0.400311344]'
+ BaseType: 'WebDropDownStringList'
+ Properties:
+ [
+ AllowEmpty: true
+ DataBinding: 'DataHolderFillingCapacityOrder.Data.ProductID'
+ Label: 'ProductID'
+ Strings: 'productID'
+ Taborder: 0
+ ]
+ }
+ Component dropDownStringListSalesSegmentName id:dropDownStringListSalesSegmentName_325
+ {
+ #keys: '[414382.0.400731492]'
+ BaseType: 'WebDropDownStringList'
+ Properties:
+ [
+ AllowEmpty: true
+ DataBinding: 'DataHolderFillingCapacityOrder.Data.SalesSegmentName'
+ Label: 'SalesSegmentName'
+ Strings: 'SalesSagmentName'
+ Taborder: 1
+ ]
+ }
+ Component dropDownStringListStockPointID id:dropDownStringListStockPointID_801
+ {
+ #keys: '[414382.0.400731675]'
+ BaseType: 'WebDropDownStringList'
+ Properties:
+ [
+ AllowEmpty: true
+ DataBinding: 'DataHolderFillingCapacityOrder.Data.StockingPointID'
+ Label: 'StockPointID'
+ Strings: 'StockPointID'
+ Taborder: 2
+ ]
+ }
+ Component dropDownStringListCustomer id:dropDownStringListCustomer_957
+ {
+ #keys: '[414382.0.400703550]'
+ BaseType: 'WebDropDownStringList'
+ Properties:
+ [
+ AllowEmpty: true
+ DataBinding: 'DataHolderFillingCapacityOrder.Data.Customer'
+ Label: 'Customer'
+ Strings: 'Customer'
+ Taborder: 3
+ ]
+ }
+ Component edtQuantity id:edtQuantity_995
+ {
+ #keys: '[414382.0.400551344]'
+ BaseType: 'WebEditField'
+ Properties:
+ [
+ DataBinding: 'DataHolderFillingCapacityOrder.Data.Quantity'
+ Label: 'Quantity'
+ Mask: 'REAL'
+ Taborder: 4
+ ]
+ }
+ Component dropDownStringListUnitOfMeasureName id:dropDownStringListUnitOfMeasureName_750
+ {
+ #keys: '[414382.0.400892044]'
+ BaseType: 'WebDropDownStringList'
+ Properties:
+ [
+ AllowEmpty: true
+ DataBinding: 'DataHolderFillingCapacityOrder.Data.UnitOfMeasureName'
+ Label: 'UnitOfMeasureName'
+ Strings: 'UnitName'
+ Taborder: 5
+ ]
+ }
+ Component edtSalesAmount id:edtSalesAmount_608
+ {
+ #keys: '[414382.0.400892099]'
+ BaseType: 'WebEditField'
+ Properties:
+ [
+ DataBinding: 'DataHolderFillingCapacityOrder.Data.SalesAmount'
+ Label: 'SalesAmount'
+ Mask: 'NUMBER'
+ Taborder: 6
+ ]
+ }
+ Component dsDemandDate
+ {
+ #keys: '[414382.0.400892150]'
+ BaseType: 'WebDateSelector'
+ Properties:
+ [
+ DataBinding: 'DataHolderFillingCapacityOrder.Data.DemandDate'
+ Label: 'Demand Date'
+ Taborder: 8
+ ]
+ }
+ Component dsForecastDemandDate
+ {
+ #keys: '[414382.0.408660329]'
+ BaseType: 'WebDateSelector'
+ Properties:
+ [
+ DataBinding: 'DataHolderFillingCapacityOrder.Data.ForecastDemandDate'
+ Label: 'Forecast Demand Date'
+ Taborder: 7
+ ]
+ }
+ ]
+ Properties:
+ [
+ Padding: 'true'
+ Taborder: 0
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Method_ClickBtnOk.def b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Method_ClickBtnOk.def
new file mode 100644
index 0000000..c345b5c
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Method_ClickBtnOk.def
@@ -0,0 +1,25 @@
+Quintiq file version 2.0
+#parent: #root
+Method ClickBtnOk () id:Method_DialogFillingCapacityOrder_ClickBtnOk
+{
+ #keys: '[414382.0.402531772]'
+ Body:
+ [*
+ // Disabled button to prevent the possibility of multiple firing
+
+ btnOk.Enabled(false,'');
+
+ // OnOk
+ this.ApplyChanges();
+
+ DataHolderFillingCapacityOrder.Data().Commit();
+
+ //if( not isnull( DataHolderForm.Data() ) )
+ //{
+ // // Access the form, select the new assumption
+ // DataHolderForm.Data().ListAssumptions().SelectByKey( DataHolderDialogData.Data().WrappedInstance().Key() );
+ //}
+
+ this.Close();
+ *]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Method_Edit.def b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Method_Edit.def
new file mode 100644
index 0000000..2d5dc2d
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Method_Edit.def
@@ -0,0 +1,17 @@
+Quintiq file version 2.0
+#parent: #root
+Method Edit (
+ FillingCapacityOrder selection
+) id:Method_DialogFillingCapacityOrder_Edit
+{
+ #keys: '[414382.0.402531258]'
+ Body:
+ [*
+ // Edits assumption
+ data := shadow( selection );
+
+ DataHolderFillingCapacityOrder.Data( &data );
+
+ ApplicationMacroPlanner.ShowFormModal( this );
+ *]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Method_New.def b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Method_New.def
new file mode 100644
index 0000000..cd0fc2c
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Method_New.def
@@ -0,0 +1,17 @@
+Quintiq file version 2.0
+#parent: #root
+Method New (
+ MacroPlan owner
+) id:Method_DialogFillingCapacityOrder_New
+{
+ #keys: '[414382.0.401211772]'
+ Body:
+ [*
+
+ data := owner.FillingCapacityOrder(relshadow);
+
+ DataHolderFillingCapacityOrder.Data(&data);
+
+ ApplicationMacroPlanner.ShowFormModal( this );
+ *]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Response_pnlActions_btnCancel_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Response_pnlActions_btnCancel_OnClick.def
new file mode 100644
index 0000000..d18a682
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Response_pnlActions_btnCancel_OnClick.def
@@ -0,0 +1,15 @@
+Quintiq file version 2.0
+#parent: pnlActions/btnCancel
+Response OnClick () id:Response_pnlActions_btnCancel_OnClick
+{
+ #keys: '[414382.0.400131335]'
+ DefinitionID: 'Responsedef_WebButton_OnClick'
+ GroupServerCalls: true
+ QuillAction
+ {
+ Body:
+ [*
+ Form.Close();
+ *]
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Response_pnlActions_btnOk_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Response_pnlActions_btnOk_OnClick.def
new file mode 100644
index 0000000..87cbc8c
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Response_pnlActions_btnOk_OnClick.def
@@ -0,0 +1,15 @@
+Quintiq file version 2.0
+#parent: pnlActions/btnOk
+Response OnClick () id:Response_pnlActions_btnOk_OnClick
+{
+ #keys: '[414382.0.400131334]'
+ DefinitionID: 'Responsedef_WebButton_OnClick'
+ GroupServerCalls: true
+ QuillAction
+ {
+ Body:
+ [*
+ Form.ClickBtnOk()
+ *]
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/_ROOT_Component_DialogFillingCapacityOrder.def b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/_ROOT_Component_DialogFillingCapacityOrder.def
new file mode 100644
index 0000000..3050a29
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/_ROOT_Component_DialogFillingCapacityOrder.def
@@ -0,0 +1,42 @@
+Quintiq file version 2.0
+#root
+#parent: MacroPlannerWebApp
+OrphanComponent DialogFillingCapacityOrder
+{
+ #keys: '[414382.0.400131321]'
+ BaseType: 'WebForm'
+ Children:
+ [
+ #child: pnlContent
+ #child: pnlActions
+ Component DataHolderFillingCapacityOrder
+ {
+ #keys: '[414382.0.400311371]'
+ BaseType: 'WebDataHolder'
+ Databinding: 'shadow[FillingCapacityOrder]*'
+ Properties:
+ [
+ Taborder: 2
+ ]
+ }
+ Component DataHolderForm id:DataHolderForm_450
+ {
+ #keys: '[414382.0.400311390]'
+ BaseType: 'WebDataHolder'
+ Databinding: 'FillingCapacityOrder'
+ Properties:
+ [
+ Taborder: 3
+ ]
+ }
+ ]
+ Properties:
+ [
+ Alignment: 'trailing'
+ EnterButton: 'btnOk'
+ EscapeButton: 'btnCancel'
+ ExcludeFromActiveComponent: true
+ Padding: 'false'
+ Title: 'Filling Capacity Order'
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCustomerAndForecast/Component_pnlActions.def b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCustomerAndForecast/Component_pnlActions.def
new file mode 100644
index 0000000..8a9f4fa
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCustomerAndForecast/Component_pnlActions.def
@@ -0,0 +1,40 @@
+Quintiq file version 2.0
+Component pnlActions
+{
+ #keys: '[414382.0.415330994]'
+ BaseType: 'WebPanel'
+ Children:
+ [
+ Component btnOk
+ {
+ #keys: '[414382.0.415330998]'
+ BaseType: 'WebButton'
+ Properties:
+ [
+ Label: 'OK'
+ Taborder: 0
+ ]
+ }
+ Component btnCancel
+ {
+ #keys: '[414382.0.415331000]'
+ BaseType: 'WebButton'
+ Properties:
+ [
+ Label: 'Cancel'
+ Taborder: 1
+ ]
+ }
+ ]
+ Properties:
+ [
+ Alignment: 'trailing'
+ Border: true
+ ExcludeFromActiveComponent: true
+ FixedSize: true
+ Orientation: 'horizontal'
+ Padding: 'true'
+ Style: 'footer'
+ Taborder: 1
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCustomerAndForecast/Component_pnlContent.def b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCustomerAndForecast/Component_pnlContent.def
new file mode 100644
index 0000000..99073e6
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCustomerAndForecast/Component_pnlContent.def
@@ -0,0 +1,86 @@
+Quintiq file version 2.0
+Component pnlContent
+{
+ #keys: '[414382.0.415330992]'
+ BaseType: 'WebPanel'
+ Children:
+ [
+ Component efVerNo
+ {
+ #keys: '[414382.0.415451216]'
+ BaseType: 'WebEditField'
+ Properties:
+ [
+ DataBinding: 'DataHolderFilling.Data.VerNo'
+ Label: 'VerNo'
+ Taborder: 0
+ ]
+ }
+ Component efBusinessType
+ {
+ #keys: '[414382.0.413702519]'
+ BaseType: 'WebEditField'
+ Properties:
+ [
+ DataBinding: 'DataHolderFilling.Data.BusinessType'
+ Enabled: false
+ Label: 'BusinessType'
+ ReadOnly: true
+ Taborder: 1
+ ]
+ }
+ Component efCustomer
+ {
+ #keys: '[414382.0.415542596]'
+ BaseType: 'WebEditField'
+ Properties:
+ [
+ DataBinding: 'DataHolderFilling.Data.Customer'
+ Enabled: false
+ Label: 'Customer'
+ ReadOnly: true
+ Taborder: 2
+ ]
+ }
+ Component edtSalesAmount
+ {
+ #keys: '[414382.0.414851317]'
+ BaseType: 'WebEditField'
+ Properties:
+ [
+ DataBinding: 'DataHolderFilling.Data.SalesAmount'
+ Label: 'SalesAmount'
+ Taborder: 3
+ ]
+ }
+ Component dsDemandDate id:dsDemandDate_768
+ {
+ #keys: '[414382.0.413703310]'
+ BaseType: 'WebDateSelector'
+ Properties:
+ [
+ DataBinding: 'DataHolderFilling.Data.DemandDate'
+ Enabled: false
+ Label: 'Demand Date'
+ ReadOnly: true
+ Taborder: 4
+ ]
+ }
+ Component dsForecastDemandDate id:dsForecastDemandDate_515
+ {
+ #keys: '[414382.0.413703326]'
+ BaseType: 'WebDateSelector'
+ Properties:
+ [
+ DataBinding: 'DataHolderFilling.Data.ForecastDemandDate'
+ Label: 'Forecast Demand Date'
+ Taborder: 5
+ ]
+ }
+ ]
+ Properties:
+ [
+ Padding: 'true'
+ Taborder: 0
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCustomerAndForecast/Method_ClickBtnOk.def b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCustomerAndForecast/Method_ClickBtnOk.def
new file mode 100644
index 0000000..6519f81
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCustomerAndForecast/Method_ClickBtnOk.def
@@ -0,0 +1,28 @@
+Quintiq file version 2.0
+#parent: #root
+Method ClickBtnOk () id:Method_DialogFillingCustomerAndForecast_ClickBtnOk
+{
+ #keys: '[414382.0.415784532]'
+ Body:
+ [*
+ // Disabled button to prevent the possibility of multiple firing
+
+ btnOk.Enabled(false,'');
+
+ // OnOk
+ this.ApplyChanges();
+ DataHolderFilling.Data().Commit();
+
+ fillingData := DataHolderFilling.Data();
+
+ CustomerAndForecastOrder::CreateFillingCapacityOrder( MacroPlan, fillingData.WrappedInstance());
+
+ //if( not isnull( DataHolderForm.Data() ) )
+ //{
+ // // Access the form, select the new assumption
+ // DataHolderForm.Data().ListAssumptions().SelectByKey( DataHolderDialogData.Data().WrappedInstance().Key() );
+ //}
+
+ this.Close();
+ *]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCustomerAndForecast/Method_Filling.def b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCustomerAndForecast/Method_Filling.def
new file mode 100644
index 0000000..81f41e9
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCustomerAndForecast/Method_Filling.def
@@ -0,0 +1,15 @@
+Quintiq file version 2.0
+#parent: #root
+Method Filling (
+ CustomerAndForecastOrder selection
+) id:Method_DialogFillingCustomerAndForecast_Filling
+{
+ #keys: '[414382.0.415572412]'
+ Body:
+ [*
+ data := shadow( selection );
+
+ DataHolderFilling.Data( &data);
+ ApplicationMacroPlanner.ShowFormModal( this );
+ *]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCustomerAndForecast/Response_pnlActions_btnCancel_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCustomerAndForecast/Response_pnlActions_btnCancel_OnClick.def
new file mode 100644
index 0000000..405e6f4
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCustomerAndForecast/Response_pnlActions_btnCancel_OnClick.def
@@ -0,0 +1,15 @@
+Quintiq file version 2.0
+#parent: pnlActions/btnCancel
+Response OnClick () id:Response_pnlActions_btnCancel_OnClick
+{
+ #keys: '[414382.0.415331004]'
+ DefinitionID: 'Responsedef_WebButton_OnClick'
+ GroupServerCalls: true
+ QuillAction
+ {
+ Body:
+ [*
+ Form.Close();
+ *]
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCustomerAndForecast/Response_pnlActions_btnOk_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCustomerAndForecast/Response_pnlActions_btnOk_OnClick.def
new file mode 100644
index 0000000..ca39440
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCustomerAndForecast/Response_pnlActions_btnOk_OnClick.def
@@ -0,0 +1,15 @@
+Quintiq file version 2.0
+#parent: pnlActions/btnOk
+Response OnClick () id:Response_pnlActions_btnOk_OnClick
+{
+ #keys: '[414382.0.415331003]'
+ DefinitionID: 'Responsedef_WebButton_OnClick'
+ GroupServerCalls: true
+ QuillAction
+ {
+ Body:
+ [*
+ Form.ClickBtnOk();
+ *]
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCustomerAndForecast/_ROOT_Component_DialogFillingCustomerAndForecast.def b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCustomerAndForecast/_ROOT_Component_DialogFillingCustomerAndForecast.def
new file mode 100644
index 0000000..57c6988
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCustomerAndForecast/_ROOT_Component_DialogFillingCustomerAndForecast.def
@@ -0,0 +1,42 @@
+Quintiq file version 2.0
+#root
+#parent: MacroPlannerWebApp
+OrphanComponent DialogFillingCustomerAndForecast
+{
+ #keys: '[414382.0.415330990]'
+ BaseType: 'WebForm'
+ Children:
+ [
+ #child: pnlContent
+ #child: pnlActions
+ Component DataHolderFilling
+ {
+ #keys: '[414382.0.415483316]'
+ BaseType: 'WebDataHolder'
+ Databinding: 'shadow[CustomerAndForecastOrder]*'
+ Properties:
+ [
+ Taborder: 2
+ ]
+ }
+ Component DataHolderFillingCapacityOrder
+ {
+ #keys: '[414382.0.416323029]'
+ BaseType: 'WebDataHolder'
+ Databinding: 'shadow[FillingCapacityOrder]*'
+ Properties:
+ [
+ Taborder: 3
+ ]
+ }
+ ]
+ Properties:
+ [
+ Alignment: 'trailing'
+ EnterButton: 'btnOk'
+ EscapeButton: 'btnCancel'
+ ExcludeFromActiveComponent: true
+ Padding: 'false'
+ Title: 'Filling'
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogFillingOrderScheme/Component_pnlActions.def b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingOrderScheme/Component_pnlActions.def
new file mode 100644
index 0000000..b759db3
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingOrderScheme/Component_pnlActions.def
@@ -0,0 +1,40 @@
+Quintiq file version 2.0
+Component pnlActions
+{
+ #keys: '[414382.0.423200498]'
+ BaseType: 'WebPanel'
+ Children:
+ [
+ Component btnOk
+ {
+ #keys: '[414382.0.423200502]'
+ BaseType: 'WebButton'
+ Properties:
+ [
+ Label: 'Save'
+ Taborder: 0
+ ]
+ }
+ Component btnCancel
+ {
+ #keys: '[414382.0.423200504]'
+ BaseType: 'WebButton'
+ Properties:
+ [
+ Label: 'Cancel'
+ Taborder: 1
+ ]
+ }
+ ]
+ Properties:
+ [
+ Alignment: 'trailing'
+ Border: true
+ ExcludeFromActiveComponent: true
+ FixedSize: true
+ Orientation: 'horizontal'
+ Padding: 'true'
+ Style: 'footer'
+ Taborder: 1
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogFillingOrderScheme/Component_pnlContent.def b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingOrderScheme/Component_pnlContent.def
new file mode 100644
index 0000000..b5e0e86
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingOrderScheme/Component_pnlContent.def
@@ -0,0 +1,24 @@
+Quintiq file version 2.0
+Component pnlContent
+{
+ #keys: '[414382.0.423200496]'
+ BaseType: 'WebPanel'
+ Children:
+ [
+ Component efSchemeName
+ {
+ #keys: '[414382.0.424860819]'
+ BaseType: 'WebEditField'
+ Properties:
+ [
+ Label: 'Scheme Name'
+ Taborder: 0
+ ]
+ }
+ ]
+ Properties:
+ [
+ Padding: 'true'
+ Taborder: 0
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogFillingOrderScheme/Method_OpenScheme.def b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingOrderScheme/Method_OpenScheme.def
new file mode 100644
index 0000000..a48a494
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingOrderScheme/Method_OpenScheme.def
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+#parent: #root
+Method OpenScheme () id:Method_DialogFillingOrderScheme_OpenScheme
+{
+ #keys: '[414382.0.424440675]'
+ Body:
+ [*
+ ApplicationMacroPlanner.ShowFormModal( this );
+ *]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogFillingOrderScheme/Response_pnlActions_btnCancel_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingOrderScheme/Response_pnlActions_btnCancel_OnClick.def
new file mode 100644
index 0000000..dbe627b
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingOrderScheme/Response_pnlActions_btnCancel_OnClick.def
@@ -0,0 +1,15 @@
+Quintiq file version 2.0
+#parent: pnlActions/btnCancel
+Response OnClick () id:Response_pnlActions_btnCancel_OnClick
+{
+ #keys: '[414382.0.423200508]'
+ DefinitionID: 'Responsedef_WebButton_OnClick'
+ GroupServerCalls: true
+ QuillAction
+ {
+ Body:
+ [*
+ Form.Close();
+ *]
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogFillingOrderScheme/Response_pnlActions_btnOk_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingOrderScheme/Response_pnlActions_btnOk_OnClick.def
new file mode 100644
index 0000000..855c43b
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingOrderScheme/Response_pnlActions_btnOk_OnClick.def
@@ -0,0 +1,21 @@
+Quintiq file version 2.0
+#parent: pnlActions/btnOk
+Response OnClick () id:Response_pnlActions_btnOk_OnClick
+{
+ #keys: '[414382.0.423200507]'
+ DefinitionID: 'Responsedef_WebButton_OnClick'
+ GroupServerCalls: true
+ QuillAction
+ {
+ Body:
+ [*
+ Form.ApplyChanges();
+
+ schemeName := DialogFillingOrderScheme.efSchemeName().Text();
+
+ FilllingCapacityOrderScheme::CreateFillingCapacityOrderScheme( MacroPlan,schemeName);
+
+ Form.Close();
+ *]
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogFillingOrderScheme/_ROOT_Component_DialogFillingOrderScheme.def b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingOrderScheme/_ROOT_Component_DialogFillingOrderScheme.def
new file mode 100644
index 0000000..83e0bff
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingOrderScheme/_ROOT_Component_DialogFillingOrderScheme.def
@@ -0,0 +1,32 @@
+Quintiq file version 2.0
+#root
+#parent: MacroPlannerWebApp
+OrphanComponent DialogFillingOrderScheme
+{
+ #keys: '[414382.0.423200494]'
+ BaseType: 'WebForm'
+ Children:
+ [
+ #child: pnlContent
+ #child: pnlActions
+ Component DataHolderFillingScheme
+ {
+ #keys: '[414382.0.424891357]'
+ BaseType: 'WebDataHolder'
+ Databinding: 'FillingCapacityOrder'
+ Properties:
+ [
+ Taborder: 2
+ ]
+ }
+ ]
+ Properties:
+ [
+ Alignment: 'trailing'
+ EnterButton: 'btnOk'
+ EscapeButton: 'btnCancel'
+ ExcludeFromActiveComponent: true
+ Padding: 'false'
+ Title: 'Save Scheme'
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogHistoricalSalesOrders/Component_pnlActions.def b/_Main/UI/MacroPlannerWebApp/Component_DialogHistoricalSalesOrders/Component_pnlActions.def
new file mode 100644
index 0000000..73be06b
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogHistoricalSalesOrders/Component_pnlActions.def
@@ -0,0 +1,40 @@
+Quintiq file version 2.0
+Component pnlActions
+{
+ #keys: '[414382.0.391970675]'
+ BaseType: 'WebPanel'
+ Children:
+ [
+ Component btnOk
+ {
+ #keys: '[414382.0.391970679]'
+ BaseType: 'WebButton'
+ Properties:
+ [
+ Label: 'OK'
+ Taborder: 0
+ ]
+ }
+ Component btnCancel
+ {
+ #keys: '[414382.0.391970681]'
+ BaseType: 'WebButton'
+ Properties:
+ [
+ Label: 'Cancel'
+ Taborder: 1
+ ]
+ }
+ ]
+ Properties:
+ [
+ Alignment: 'trailing'
+ Border: true
+ ExcludeFromActiveComponent: true
+ FixedSize: true
+ Orientation: 'horizontal'
+ Padding: 'true'
+ Style: 'footer'
+ Taborder: 1
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogHistoricalSalesOrders/Component_pnlContent.def b/_Main/UI/MacroPlannerWebApp/Component_DialogHistoricalSalesOrders/Component_pnlContent.def
new file mode 100644
index 0000000..827d86f
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogHistoricalSalesOrders/Component_pnlContent.def
@@ -0,0 +1,109 @@
+Quintiq file version 2.0
+Component pnlContent
+{
+ #keys: '[414382.0.391970673]'
+ BaseType: 'WebPanel'
+ Children:
+ [
+ Component dropDownStringListProductID
+ {
+ #keys: '[414382.0.397670774]'
+ BaseType: 'WebDropDownStringList'
+ Properties:
+ [
+ AllowEmpty: true
+ DataBinding: 'DataHolderHistoricalSalesOrder.Data.ProductID'
+ Label: 'ProductID'
+ Taborder: 0
+ ]
+ }
+ Component dropDownStringListSalesSegmentName
+ {
+ #keys: '[414382.0.397792089]'
+ BaseType: 'WebDropDownStringList'
+ Properties:
+ [
+ AllowEmpty: true
+ DataBinding: 'DataHolderHistoricalSalesOrder.Data.SalesSegmentName'
+ Label: 'SalesSegmentName'
+ Taborder: 1
+ ]
+ }
+ Component dropDownStringListStockPointID
+ {
+ #keys: '[414382.0.397613350]'
+ BaseType: 'WebDropDownStringList'
+ Properties:
+ [
+ AllowEmpty: true
+ DataBinding: 'DataHolderHistoricalSalesOrder.Data.StockingPointID'
+ Label: 'StockPointID'
+ Taborder: 2
+ ]
+ }
+ Component dropDownStringListCustomer
+ {
+ #keys: '[414382.0.396181827]'
+ BaseType: 'WebDropDownStringList'
+ Properties:
+ [
+ AllowEmpty: true
+ DataBinding: 'DataHolderHistoricalSalesOrder.Data.Customer'
+ Label: 'Customer'
+ Taborder: 3
+ ]
+ }
+ Component dropDownStringListUnitOfMeasureName
+ {
+ #keys: '[414382.0.400160473]'
+ BaseType: 'WebDropDownStringList'
+ Properties:
+ [
+ AllowEmpty: true
+ DataBinding: 'DataHolderHistoricalSalesOrder.Data.UnitOfMeasureName'
+ Label: 'UnitOfMeasureName'
+ Taborder: 5
+ ]
+ }
+ Component edtQuantity
+ {
+ #keys: '[414382.0.400120730]'
+ BaseType: 'WebEditField'
+ Properties:
+ [
+ DataBinding: 'DataHolderHistoricalSalesOrder.Data.Quantity'
+ Label: 'Quantity'
+ Mask: 'REAL'
+ Taborder: 4
+ ]
+ }
+ Component dsOrderDate
+ {
+ #keys: '[414382.0.400121793]'
+ BaseType: 'WebDateSelector'
+ Properties:
+ [
+ DataBinding: 'DataHolderHistoricalSalesOrder.Data.OrderDate'
+ Label: 'Demand Date'
+ Taborder: 7
+ ]
+ }
+ Component edtSalesAmount
+ {
+ #keys: '[414382.0.400160672]'
+ BaseType: 'WebEditField'
+ Properties:
+ [
+ DataBinding: 'DataHolderHistoricalSalesOrder.Data.SalesAmount'
+ Label: 'SalesAmount'
+ Mask: 'NUMBER'
+ Taborder: 6
+ ]
+ }
+ ]
+ Properties:
+ [
+ Padding: 'true'
+ Taborder: 0
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogHistoricalSalesOrders/Method_ClickBtnOk.def b/_Main/UI/MacroPlannerWebApp/Component_DialogHistoricalSalesOrders/Method_ClickBtnOk.def
new file mode 100644
index 0000000..9472a57
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogHistoricalSalesOrders/Method_ClickBtnOk.def
@@ -0,0 +1,25 @@
+Quintiq file version 2.0
+#parent: #root
+Method ClickBtnOk () id:Method_DialogHistoricalSalesOrders_ClickBtnOk
+{
+ #keys: '[414382.0.400401230]'
+ Body:
+ [*
+ // Disabled button to prevent the possibility of multiple firing
+
+ btnOk.Enabled(false,'');
+
+ // OnOk
+ this.ApplyChanges();
+
+ DataHolderHistoricalSalesOrder.Data().Commit();
+
+ //if( not isnull( DataHolderForm.Data() ) )
+ //{
+ // // Access the form, select the new assumption
+ // DataHolderForm.Data().ListAssumptions().SelectByKey( DataHolderDialogData.Data().WrappedInstance().Key() );
+ //}
+
+ this.Close();
+ *]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogHistoricalSalesOrders/Method_Edit.def b/_Main/UI/MacroPlannerWebApp/Component_DialogHistoricalSalesOrders/Method_Edit.def
new file mode 100644
index 0000000..8db2d4e
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogHistoricalSalesOrders/Method_Edit.def
@@ -0,0 +1,16 @@
+Quintiq file version 2.0
+#parent: #root
+Method Edit (
+ FillingCapacityOrder selection
+) id:Method_DialogHistoricalSalesOrders_Edit
+{
+ #keys: '[414382.0.402531395]'
+ Body:
+ [*
+ // Edits assumption
+ data := shadow( selection );
+
+ DataHolderHistoricalSalesOrder.Data( &data);
+ ApplicationMacroPlanner.ShowFormModal( this );
+ *]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogHistoricalSalesOrders/Method_New.def b/_Main/UI/MacroPlannerWebApp/Component_DialogHistoricalSalesOrders/Method_New.def
new file mode 100644
index 0000000..db4476b
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogHistoricalSalesOrders/Method_New.def
@@ -0,0 +1,15 @@
+Quintiq file version 2.0
+#parent: #root
+Method New (
+ MacroPlan owner
+) id:Method_DialogHistoricalSalesOrders_New
+{
+ #keys: '[414382.0.393020968]'
+ Body:
+ [*
+ data := owner.FillingCapacityOrder(relshadow);
+ DataHolderHistoricalSalesOrder.Data( &data);
+
+ ApplicationMacroPlanner.ShowFormModal( this );
+ *]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogHistoricalSalesOrders/Response_pnlActions_btnCancel_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_DialogHistoricalSalesOrders/Response_pnlActions_btnCancel_OnClick.def
new file mode 100644
index 0000000..33de4f2
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogHistoricalSalesOrders/Response_pnlActions_btnCancel_OnClick.def
@@ -0,0 +1,15 @@
+Quintiq file version 2.0
+#parent: pnlActions/btnCancel
+Response OnClick () id:Response_pnlActions_btnCancel_OnClick
+{
+ #keys: '[414382.0.391970685]'
+ DefinitionID: 'Responsedef_WebButton_OnClick'
+ GroupServerCalls: true
+ QuillAction
+ {
+ Body:
+ [*
+ Form.Close();
+ *]
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogHistoricalSalesOrders/Response_pnlActions_btnOk_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_DialogHistoricalSalesOrders/Response_pnlActions_btnOk_OnClick.def
new file mode 100644
index 0000000..009143e
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogHistoricalSalesOrders/Response_pnlActions_btnOk_OnClick.def
@@ -0,0 +1,15 @@
+Quintiq file version 2.0
+#parent: pnlActions/btnOk
+Response OnClick () id:Response_pnlActions_btnOk_OnClick
+{
+ #keys: '[414382.0.391970684]'
+ DefinitionID: 'Responsedef_WebButton_OnClick'
+ GroupServerCalls: true
+ QuillAction
+ {
+ Body:
+ [*
+ Form.ClickBtnOk()
+ *]
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogHistoricalSalesOrders/_ROOT_Component_DialogHistoricalSalesOrders.def b/_Main/UI/MacroPlannerWebApp/Component_DialogHistoricalSalesOrders/_ROOT_Component_DialogHistoricalSalesOrders.def
new file mode 100644
index 0000000..6ec8904
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogHistoricalSalesOrders/_ROOT_Component_DialogHistoricalSalesOrders.def
@@ -0,0 +1,42 @@
+Quintiq file version 2.0
+#root
+#parent: MacroPlannerWebApp
+OrphanComponent DialogHistoricalSalesOrders
+{
+ #keys: '[414382.0.391970671]'
+ BaseType: 'WebForm'
+ Children:
+ [
+ #child: pnlContent
+ #child: pnlActions
+ Component DataHolderHistoricalSalesOrder
+ {
+ #keys: '[414382.0.394331150]'
+ BaseType: 'WebDataHolder'
+ Databinding: 'shadow[FillingCapacityOrder]*'
+ Properties:
+ [
+ Taborder: 2
+ ]
+ }
+ Component DataHolderForm
+ {
+ #keys: '[414382.0.394362557]'
+ BaseType: 'WebDataHolder'
+ Databinding: 'FillingCapacityOrder'
+ Properties:
+ [
+ Taborder: 3
+ ]
+ }
+ ]
+ Properties:
+ [
+ Alignment: 'trailing'
+ EnterButton: 'btnOk'
+ EscapeButton: 'btnCancel'
+ ExcludeFromActiveComponent: true
+ Padding: 'false'
+ Title: 'Historical Sales Order'
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogMaterialLabelingAndPlanningStrategy/Response_pnlActions_btnOk_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_DialogMaterialLabelingAndPlanningStrategy/Response_pnlActions_btnOk_OnClick.def
index 8f6e89a..f8d2a3d 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_DialogMaterialLabelingAndPlanningStrategy/Response_pnlActions_btnOk_OnClick.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogMaterialLabelingAndPlanningStrategy/Response_pnlActions_btnOk_OnClick.def
@@ -4,13 +4,20 @@
{
#keys: '[414702.0.131771253]'
DefinitionID: 'Responsedef_WebButton_OnClick'
- GroupServerCalls: true
QuillAction
{
Body:
[*
Form.ApplyChanges();
+
+ data := DataHolderDialogData.Data();
+ if ( data.PlanningStrategyCustom() = "JIT" ) {
+ data.MinimumNumberOfDaysInStock( 0 );
+ data.MaximumNumberOfDaysInInventory( 0 );
+ }
+
Form.Close();
*]
+ GroupServerCalls: false
}
}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogMaterialLabelingAndPlanningStrategy/Response_pnlGeneral_ddslMaterialPlanningPolicyChanges_OnCreated.def b/_Main/UI/MacroPlannerWebApp/Component_DialogMaterialLabelingAndPlanningStrategy/Response_pnlGeneral_ddslMaterialPlanningPolicyChanges_OnCreated.def
new file mode 100644
index 0000000..215ed5c
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogMaterialLabelingAndPlanningStrategy/Response_pnlGeneral_ddslMaterialPlanningPolicyChanges_OnCreated.def
@@ -0,0 +1,26 @@
+Quintiq file version 2.0
+#parent: pnlGeneral/ddslMaterialPlanningPolicyChanges
+Response OnCreated () id:Response_pnlGeneral_ddslMaterialPlanningPolicyChanges_OnCreated
+{
+ #keys: '[414702.0.199501073]'
+ CanBindMultiple: false
+ DefinitionID: 'Responsedef_WebComponent_OnCreated'
+ QuillAction
+ {
+ Body:
+ [*
+ data := DataHolderDialogData.Data();
+ if ( data.PlanningStrategyCustom() <> "" and data.PlanningStrategyCustom() = "JIT" ) {
+ efTheMinimumNumberOfDaysForAnItemToBeInventoried.Visible( false );
+ efTheMaximumNumberOfDaysThatTheItemIsInStock.Visible( false );
+ } else if ( data.PlanningStrategyAuto() <> "" and data.PlanningStrategyAuto() = "JIT" ) {
+ efTheMinimumNumberOfDaysForAnItemToBeInventoried.Visible( false );
+ efTheMaximumNumberOfDaysThatTheItemIsInStock.Visible( false );
+ } else {
+ efTheMinimumNumberOfDaysForAnItemToBeInventoried.Visible( true );
+ efTheMaximumNumberOfDaysThatTheItemIsInStock.Visible( true );
+ }
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogMaterialLabelingAndPlanningStrategy/Response_pnlGeneral_ddslMaterialPlanningPolicyChanges_OnUserSelectionChanged.def b/_Main/UI/MacroPlannerWebApp/Component_DialogMaterialLabelingAndPlanningStrategy/Response_pnlGeneral_ddslMaterialPlanningPolicyChanges_OnUserSelectionChanged.def
new file mode 100644
index 0000000..eaf8b6a
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogMaterialLabelingAndPlanningStrategy/Response_pnlGeneral_ddslMaterialPlanningPolicyChanges_OnUserSelectionChanged.def
@@ -0,0 +1,25 @@
+Quintiq file version 2.0
+#parent: pnlGeneral/ddslMaterialPlanningPolicyChanges
+Response OnUserSelectionChanged () id:Response_pnlGeneral_ddslMaterialPlanningPolicyChanges_OnUserSelectionChanged
+{
+ #keys: '[414702.0.198291344]'
+ CanBindMultiple: false
+ DefinitionID: 'Responsedef_WebDropDownStringList_OnUserSelectionChanged'
+ QuillAction
+ {
+ Body:
+ [*
+ if ( selection <> "" and selection = "JIT" ) {
+ efTheMinimumNumberOfDaysForAnItemToBeInventoried.Visible( false );
+ efTheMaximumNumberOfDaysThatTheItemIsInStock.Visible( false );
+ } else if ( selection <> "" and selection = "JIT" ) {
+ efTheMinimumNumberOfDaysForAnItemToBeInventoried.Visible( false );
+ efTheMaximumNumberOfDaysThatTheItemIsInStock.Visible( false );
+ } else {
+ efTheMinimumNumberOfDaysForAnItemToBeInventoried.Visible( true );
+ efTheMaximumNumberOfDaysThatTheItemIsInStock.Visible( true );
+ }
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_Form367/Component_ListBusinessType.def b/_Main/UI/MacroPlannerWebApp/Component_Form367/Component_ListBusinessType.def
new file mode 100644
index 0000000..b0713d9
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_Form367/Component_ListBusinessType.def
@@ -0,0 +1,59 @@
+Quintiq file version 2.0
+Component ListBusinessType
+{
+ #keys: '[414382.0.373071310]'
+ BaseType: 'WebList'
+ Children:
+ [
+ Component DataExtractorBusinessType
+ {
+ #keys: '[414382.0.373071311]'
+ BaseType: 'WebDataExtractor'
+ Properties:
+ [
+ DataType: 'GlobalOTDTable'
+ Source: 'GlobalOTDTable'
+ Taborder: 0
+ Transformation: 'BusinessType'
+ ]
+ }
+ #child: listActionBarPageBusinessType
+ Component DataSetLevelBusinessType
+ {
+ #keys: '[414382.0.373071313]'
+ BaseType: 'WebDataSetLevel'
+ Children:
+ [
+ #child: listContextMenuBusinessType655
+ ]
+ Properties:
+ [
+ Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"BusinessTypeName","title":"BusinessTypeName","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"BusinessTypeName"}}]'
+ ContextMenu: 'listContextMenuBusinessType655'
+ Taborder: 2
+ ]
+ }
+ ]
+ Properties:
+ [
+ Taborder: 0
+ ]
+ ResponseDefinitions:
+ [
+ DelegatedResponseDefinition OnClick id:Responsedef_ListBusinessType_WebMenu_OnClick
+ {
+ #keys: '[414382.0.377975283]'
+ Initiator: 'WebMenu'
+ IsInherited: false
+ ResponseType: 'OnClick'
+ Arguments:
+ [
+ ResponseDefinitionArgument selection
+ {
+ #keys: '[1051.0.24454044]'
+ Binding: 'this.Selection()'
+ }
+ ]
+ }
+ ]
+}
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_Form367/Component_listActionBarPageBusinessType\043675.def" "b/_Main/UI/MacroPlannerWebApp/Component_Form367/Component_listActionBarPageBusinessType\043675.def"
new file mode 100644
index 0000000..f8612f8
--- /dev/null
+++ "b/_Main/UI/MacroPlannerWebApp/Component_Form367/Component_listActionBarPageBusinessType\043675.def"
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+Component listActionBarPageBusinessType
+{
+ #keys: '[414382.0.373071312]'
+ BaseType: 'listActionBarPage'
+ Properties:
+ [
+ Taborder: 1
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_Form367/Component_listContextMenuBusinessType655.def b/_Main/UI/MacroPlannerWebApp/Component_Form367/Component_listContextMenuBusinessType655.def
new file mode 100644
index 0000000..30edf41
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_Form367/Component_listContextMenuBusinessType655.def
@@ -0,0 +1,46 @@
+Quintiq file version 2.0
+Component listContextMenuBusinessType655
+{
+ #keys: '[414382.0.373071314]'
+ BaseType: 'listContextMenu'
+ Children:
+ [
+ Component MenuNew
+ {
+ #keys: '[414382.0.374151049]'
+ BaseType: 'WebMenu'
+ Properties:
+ [
+ Image: 'ADD2'
+ Taborder: 3
+ Title: 'New'
+ ]
+ }
+ Component MenuEdit
+ {
+ #keys: '[414382.0.373031364]'
+ BaseType: 'WebMenu'
+ Properties:
+ [
+ Image: 'PENCIL'
+ Taborder: 4
+ Title: 'Edit'
+ ]
+ }
+ Component MenuDelete
+ {
+ #keys: '[414382.0.374361100]'
+ BaseType: 'WebMenu'
+ Properties:
+ [
+ Image: 'DELETE'
+ Taborder: 5
+ Title: 'Delete'
+ ]
+ }
+ ]
+ Properties:
+ [
+ Taborder: 0
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_Form367/Response_ListBusinessType_MenuDelete_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_Form367/Response_ListBusinessType_MenuDelete_OnClick.def
new file mode 100644
index 0000000..c5aa30a
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_Form367/Response_ListBusinessType_MenuDelete_OnClick.def
@@ -0,0 +1,19 @@
+Quintiq file version 2.0
+#parent: ListBusinessType
+Response OnClick (
+ BusinessType selection
+) id:Response_ListBusinessType_MenuDelete_OnClick
+{
+ #keys: '[414382.0.378330518]'
+ CanBindMultiple: false
+ DefinitionID => /ListBusinessType/Responsedef_ListBusinessType_WebMenu_OnClick
+ GroupServerCalls: true
+ Initiator: 'MenuDelete'
+ QuillAction
+ {
+ Body:
+ [*
+ selection.Delete();
+ *]
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_Form367/Response_ListBusinessType_MenuEdit_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_Form367/Response_ListBusinessType_MenuEdit_OnClick.def
new file mode 100644
index 0000000..aaecca8
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_Form367/Response_ListBusinessType_MenuEdit_OnClick.def
@@ -0,0 +1,20 @@
+Quintiq file version 2.0
+#parent: ListBusinessType
+Response OnClick (
+ BusinessType selection
+) id:Response_ListBusinessType_MenuEdit_OnClick
+{
+ #keys: '[414382.0.378121511]'
+ CanBindMultiple: false
+ DefinitionID => /ListBusinessType/Responsedef_ListBusinessType_WebMenu_OnClick
+ GroupServerCalls: true
+ Initiator: 'MenuEdit'
+ QuillAction
+ {
+ Body:
+ [*
+ dlg := construct( DialogBusinessType );
+ dlg.Edit( selection );
+ *]
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_Form367/Response_ListBusinessType_MenuNew_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_Form367/Response_ListBusinessType_MenuNew_OnClick.def
new file mode 100644
index 0000000..f81f38b
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_Form367/Response_ListBusinessType_MenuNew_OnClick.def
@@ -0,0 +1,18 @@
+Quintiq file version 2.0
+#parent: ListBusinessType
+Response OnClick () id:Response_ListBusinessType_MenuNew_OnClick
+{
+ #keys: '[414382.0.377975353]'
+ CanBindMultiple: false
+ DefinitionID => /ListBusinessType/Responsedef_ListBusinessType_WebMenu_OnClick
+ GroupServerCalls: true
+ Initiator: 'MenuNew'
+ QuillAction
+ {
+ Body:
+ [*
+ dlg := construct( DialogBusinessType );
+ dlg.New( GlobalOTDTable );
+ *]
+ }
+}
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_Form367/_ROOT_Component_FormBusinessType\043367.def" "b/_Main/UI/MacroPlannerWebApp/Component_Form367/_ROOT_Component_FormBusinessType\043367.def"
new file mode 100644
index 0000000..e23342a
--- /dev/null
+++ "b/_Main/UI/MacroPlannerWebApp/Component_Form367/_ROOT_Component_FormBusinessType\043367.def"
@@ -0,0 +1,16 @@
+Quintiq file version 2.0
+#root
+#parent: MacroPlannerWebApp
+OrphanComponent FormBusinessType
+{
+ #keys: '[414382.0.367630242]'
+ BaseType: 'WebForm'
+ Children:
+ [
+ #child: ListBusinessType
+ ]
+ Properties:
+ [
+ Title: 'Business Type'
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder/Component_ListFillingCapacityOrder.def b/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder/Component_ListFillingCapacityOrder.def
new file mode 100644
index 0000000..d951132
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder/Component_ListFillingCapacityOrder.def
@@ -0,0 +1,60 @@
+Quintiq file version 2.0
+Component ListFillingCapacityOrder
+{
+ #keys: '[414382.0.397311976]'
+ BaseType: 'WebList'
+ Children:
+ [
+ Component DataExtractorFillingCapacityOrder
+ {
+ #keys: '[414382.0.397311977]'
+ BaseType: 'WebDataExtractor'
+ Properties:
+ [
+ DataType: 'MacroPlan'
+ FixedFilter: 'not object.IsFilling()'
+ Source: 'MacroPlan'
+ Taborder: 0
+ Transformation: 'FillingCapacityOrder'
+ ]
+ }
+ #child: listActionBarPageFillingCapacityOrder
+ Component DataSetLevelFillingCapacityOrder
+ {
+ #keys: '[414382.0.397311982]'
+ BaseType: 'WebDataSetLevel'
+ Children:
+ [
+ #child: listContextMenuFillingCapacityOrder
+ ]
+ Properties:
+ [
+ Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"VerNo","title":"VerNo","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"VerNo"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ProductID","title":"ProductID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ProductID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"BusinessType","title":"BusinessType","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"BusinessType"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"SalesSegmentName","title":"SalesSegmentName","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"SalesSegmentName"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"StockingPointID","title":"StockingPointID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"StockingPointID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Customer","title":"Customer","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Customer"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Quantity","title":"Quantity","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Quantity"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"UnitOfMeasureName","title":"UnitOfMeasureName","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"UnitOfMeasureName"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"PanelBigSheetQuantity","title":"PanelBigSheetQuantity","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"PanelBigSheetQuantity"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"SalesAmount","title":"SalesAmount","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"SalesAmount"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ForecastDemandDate","title":"ForecastDemandDate","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ForecastDemandDate"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"DemandDate","title":"DemandDate","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"DemandDate"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"OrderType","title":"OrderType","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"OrderType"}}]'
+ ContextMenu: 'listContextMenuFillingCapacityOrder'
+ Taborder: 2
+ ]
+ }
+ ]
+ Properties:
+ [
+ Taborder: 0
+ ]
+ ResponseDefinitions:
+ [
+ DelegatedResponseDefinition OnClick id:Responsedef_ListFillingCapacityOrder_WebMenu_OnClick
+ {
+ #keys: '[414382.0.401230580]'
+ Initiator: 'WebMenu'
+ IsInherited: false
+ ResponseType: 'OnClick'
+ Arguments:
+ [
+ ResponseDefinitionArgument selection
+ {
+ #keys: '[1099.0.7418521]'
+ Binding: 'this.Selection()'
+ }
+ ]
+ }
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder/Component_listActionBarPageFillingCapacityOrder.def b/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder/Component_listActionBarPageFillingCapacityOrder.def
new file mode 100644
index 0000000..ec644c5
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder/Component_listActionBarPageFillingCapacityOrder.def
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+Component listActionBarPageFillingCapacityOrder
+{
+ #keys: '[414382.0.397311979]'
+ BaseType: 'listActionBarPage'
+ Properties:
+ [
+ Taborder: 1
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder/Component_listContextMenuFillingCapacityOrder.def b/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder/Component_listContextMenuFillingCapacityOrder.def
new file mode 100644
index 0000000..42e181a
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder/Component_listContextMenuFillingCapacityOrder.def
@@ -0,0 +1,57 @@
+Quintiq file version 2.0
+Component listContextMenuFillingCapacityOrder
+{
+ #keys: '[414382.0.397311984]'
+ BaseType: 'listContextMenu'
+ Children:
+ [
+ Component MenuNew
+ {
+ #keys: '[414382.0.401230548]'
+ BaseType: 'WebMenu'
+ Properties:
+ [
+ Image: 'ADD2'
+ Taborder: 3
+ Title: 'New'
+ ]
+ }
+ Component MenuEdit id:MenuEdit_100
+ {
+ #keys: '[414382.0.402500725]'
+ BaseType: 'WebMenu'
+ Properties:
+ [
+ Image: 'PENCIL'
+ Taborder: 4
+ Title: 'Edit'
+ ]
+ }
+ Component MenuDelete id:MenuDelete_129
+ {
+ #keys: '[414382.0.402500768]'
+ BaseType: 'WebMenu'
+ Properties:
+ [
+ Image: 'DELETE'
+ Taborder: 5
+ Title: 'Delete'
+ ]
+ }
+ Component MenuSaveScheme
+ {
+ #keys: '[414382.0.409871758]'
+ BaseType: 'WebMenu'
+ Properties:
+ [
+ Image: 'DISK_BLUE'
+ Taborder: 6
+ Title: 'Save Scheme'
+ ]
+ }
+ ]
+ Properties:
+ [
+ Taborder: 0
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder/Response_ListFillingCapacityOrder_MenuDelete_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder/Response_ListFillingCapacityOrder_MenuDelete_OnClick.def
new file mode 100644
index 0000000..243c7c1
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder/Response_ListFillingCapacityOrder_MenuDelete_OnClick.def
@@ -0,0 +1,19 @@
+Quintiq file version 2.0
+#parent: ListFillingCapacityOrder
+Response OnClick (
+ FillingCapacityOrder selection
+) id:Response_ListFillingCapacityOrder_MenuDelete_OnClick
+{
+ #keys: '[414382.0.402561135]'
+ CanBindMultiple: false
+ DefinitionID => /ListFillingCapacityOrder/Responsedef_ListFillingCapacityOrder_WebMenu_OnClick
+ GroupServerCalls: true
+ Initiator: 'MenuDelete'
+ QuillAction
+ {
+ Body:
+ [*
+ selection.Delete();
+ *]
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder/Response_ListFillingCapacityOrder_MenuEdit_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder/Response_ListFillingCapacityOrder_MenuEdit_OnClick.def
new file mode 100644
index 0000000..de377cf
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder/Response_ListFillingCapacityOrder_MenuEdit_OnClick.def
@@ -0,0 +1,20 @@
+Quintiq file version 2.0
+#parent: ListFillingCapacityOrder
+Response OnClick (
+ FillingCapacityOrder selection
+) id:Response_ListFillingCapacityOrder_MenuEdit_OnClick
+{
+ #keys: '[414382.0.404212572]'
+ CanBindMultiple: false
+ DefinitionID => /ListFillingCapacityOrder/Responsedef_ListFillingCapacityOrder_WebMenu_OnClick
+ GroupServerCalls: true
+ Initiator: 'MenuEdit'
+ QuillAction
+ {
+ Body:
+ [*
+ dlg := construct( DialogFillingCapacityOrder );;
+ dlg.Edit( selection);
+ *]
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder/Response_ListFillingCapacityOrder_MenuNew_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder/Response_ListFillingCapacityOrder_MenuNew_OnClick.def
new file mode 100644
index 0000000..1d6970c
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder/Response_ListFillingCapacityOrder_MenuNew_OnClick.def
@@ -0,0 +1,18 @@
+Quintiq file version 2.0
+#parent: ListFillingCapacityOrder
+Response OnClick () id:Response_ListFillingCapacityOrder_MenuNew_OnClick
+{
+ #keys: '[414382.0.402410520]'
+ CanBindMultiple: false
+ DefinitionID => /ListFillingCapacityOrder/Responsedef_ListFillingCapacityOrder_WebMenu_OnClick
+ GroupServerCalls: true
+ Initiator: 'MenuNew'
+ QuillAction
+ {
+ Body:
+ [*
+ dlg := construct( DialogFillingCapacityOrder );
+ dlg.New( MacroPlan);
+ *]
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder/Response_ListFillingCapacityOrder_MenuSaveScheme_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder/Response_ListFillingCapacityOrder_MenuSaveScheme_OnClick.def
new file mode 100644
index 0000000..0dd6b1d
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder/Response_ListFillingCapacityOrder_MenuSaveScheme_OnClick.def
@@ -0,0 +1,19 @@
+Quintiq file version 2.0
+#parent: ListFillingCapacityOrder
+Response OnClick () id:Response_ListFillingCapacityOrder_MenuSaveScheme_OnClick
+{
+ #keys: '[414382.0.410851847]'
+ CanBindMultiple: false
+ DefinitionID => /ListFillingCapacityOrder/Responsedef_ListFillingCapacityOrder_WebMenu_OnClick
+ GroupServerCalls: true
+ Initiator: 'MenuSaveScheme'
+ QuillAction
+ {
+ Body:
+ [*
+ dlg := construct( DialogFillingOrderScheme );
+ dlg.OpenScheme();
+ //dlg.Edit( selection);
+ *]
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder/_ROOT_Component_FormFillingCapacityOrder.def b/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder/_ROOT_Component_FormFillingCapacityOrder.def
new file mode 100644
index 0000000..ebf5356
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder/_ROOT_Component_FormFillingCapacityOrder.def
@@ -0,0 +1,16 @@
+Quintiq file version 2.0
+#root
+#parent: MacroPlannerWebApp
+OrphanComponent FormFillingCapacityOrder
+{
+ #keys: '[414382.0.396111858]'
+ BaseType: 'WebForm'
+ Children:
+ [
+ #child: ListFillingCapacityOrder
+ ]
+ Properties:
+ [
+ Title: 'Filling Capacity Orders'
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder802/Component_ListFillingSchemeDetail.def b/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder802/Component_ListFillingSchemeDetail.def
new file mode 100644
index 0000000..9982fb6
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder802/Component_ListFillingSchemeDetail.def
@@ -0,0 +1,41 @@
+Quintiq file version 2.0
+Component ListFillingSchemeDetail
+{
+ #keys: '[414382.0.434111695]'
+ BaseType: 'WebList'
+ Children:
+ [
+ Component DataExtractorFillingSchemeDetail
+ {
+ #keys: '[414382.0.434111696]'
+ BaseType: 'WebDataExtractor'
+ Properties:
+ [
+ DataType: 'structured[FillingCapacityOrder]'
+ Source: 'DataHolderFillingSchemeDetails'
+ Taborder: 0
+ Transformation: 'Elements'
+ ]
+ }
+ #child: listActionBarPageFillingSchemeDetail
+ Component DataSetLevelFillingSchemeDetail
+ {
+ #keys: '[414382.0.434111701]'
+ BaseType: 'WebDataSetLevel'
+ Children:
+ [
+ #child: listContextMenuFillingSchemeDetail
+ ]
+ Properties:
+ [
+ Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"VerNo","title":"VerNo","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"VerNo"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"BusinessType","title":"BusinessType","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"BusinessType"}}]'
+ ContextMenu: 'listContextMenuFillingSchemeDetail'
+ Taborder: 2
+ ]
+ }
+ ]
+ Properties:
+ [
+ Taborder: 0
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder802/Component_listActionBarPageFillingSchemeDetail.def b/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder802/Component_listActionBarPageFillingSchemeDetail.def
new file mode 100644
index 0000000..25791d7
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder802/Component_listActionBarPageFillingSchemeDetail.def
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+Component listActionBarPageFillingSchemeDetail
+{
+ #keys: '[414382.0.434111698]'
+ BaseType: 'listActionBarPage'
+ Properties:
+ [
+ Taborder: 1
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder802/Component_listContextMenuFillingSchemeDetail.def b/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder802/Component_listContextMenuFillingSchemeDetail.def
new file mode 100644
index 0000000..21ba05d
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder802/Component_listContextMenuFillingSchemeDetail.def
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+Component listContextMenuFillingSchemeDetail
+{
+ #keys: '[414382.0.434111703]'
+ BaseType: 'listContextMenu'
+ Properties:
+ [
+ Taborder: 0
+ ]
+}
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder802/_ROOT_Component_FormFillingSchemeDetail\043802.def" "b/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder802/_ROOT_Component_FormFillingSchemeDetail\043802.def"
new file mode 100644
index 0000000..39f6e98
--- /dev/null
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder802/_ROOT_Component_FormFillingSchemeDetail\043802.def"
@@ -0,0 +1,41 @@
+Quintiq file version 2.0
+#root
+#parent: MacroPlannerWebApp
+OrphanComponent FormFillingSchemeDetail
+{
+ #keys: '[414382.0.424331085]'
+ BaseType: 'WebForm'
+ Children:
+ [
+ #child: ListFillingSchemeDetail
+ Component DataHolderFillingSchemeDetails id:DataHolderFillingSchemeDetails_71
+ {
+ #keys: '[414382.0.438570912]'
+ BaseType: 'WebDataHolder'
+ Databinding: 'structured[FillingCapacityOrder]*'
+ Children:
+ [
+ Component DataExtractorFillingSchemeDetails
+ {
+ #keys: '[414382.0.438691291]'
+ BaseType: 'WebDataExtractor'
+ Properties:
+ [
+ DataType: 'structured[FillingCapacityOrder]'
+ Source: 'FormFillingScheme.DataHolderFillingScheme'
+ Taborder: 0
+ Transformation: 'Elements'
+ ]
+ }
+ ]
+ Properties:
+ [
+ Taborder: 1
+ ]
+ }
+ ]
+ Properties:
+ [
+ Title: 'Filling Capacity Orders'
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityScheme/Component_ListCustomerAndFillingCapacityOrder.def b/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityScheme/Component_ListCustomerAndFillingCapacityOrder.def
new file mode 100644
index 0000000..529f05f
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityScheme/Component_ListCustomerAndFillingCapacityOrder.def
@@ -0,0 +1,59 @@
+Quintiq file version 2.0
+Component ListCustomerAndFillingCapacityOrder
+{
+ #keys: '[414382.0.413740609]'
+ BaseType: 'WebList'
+ Children:
+ [
+ #child: listActionBarPageCustomerAndFillingCapacityOrder
+ Component DataExtractorCustomerAndFillingCapacityOrder
+ {
+ #keys: '[414382.0.413740610]'
+ BaseType: 'WebDataExtractor'
+ Properties:
+ [
+ DataType: 'MacroPlan'
+ Source: 'MacroPlan'
+ Taborder: 0
+ Transformation: 'CustomerAndForecastOrder'
+ ]
+ }
+ Component DataSetLevelCustomerAndFillingCapacityOrder
+ {
+ #keys: '[414382.0.413740615]'
+ BaseType: 'WebDataSetLevel'
+ Children:
+ [
+ #child: listContextMenuCustomerAndFillingCapacityOrder
+ ]
+ Properties:
+ [
+ Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"VerNo","title":"VerNo","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"VerNo"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"OrderID","title":"OrderID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"OrderID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ProductID","title":"ProductID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ProductID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"BusinessType","title":"BusinessType","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"BusinessType"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Customer","title":"Customer","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Customer"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ServiceType","title":"ServiceType","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ServiceType"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Quantity","title":"Quantity","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Quantity"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"UnitOfMeasureName","title":"UnitOfMeasureName","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"UnitOfMeasureName"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"PanelBigSheetQuantity","title":"PanelBigSheetQuantity","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"PanelBigSheetQuantity"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"SalesAmount","title":"SalesAmount","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"SalesAmount"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ForecastDemandDate","title":"ForecastDemandDate","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ForecastDemandDate"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"DemandDate","title":"DemandDate","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"DemandDate"}}]'
+ ContextMenu: 'listContextMenuCustomerAndFillingCapacityOrder'
+ Taborder: 2
+ ]
+ }
+ ]
+ Properties:
+ [
+ Taborder: 0
+ ]
+ ResponseDefinitions:
+ [
+ DelegatedResponseDefinition OnClick id:Responsedef_ListCustomerAndFillingCapacityOrder_WebMenu_OnClick
+ {
+ #keys: '[414382.0.415541555]'
+ Initiator: 'WebMenu'
+ IsInherited: false
+ ResponseType: 'OnClick'
+ Arguments:
+ [
+ ResponseDefinitionArgument selection
+ {
+ #keys: '[1121.0.30421200]'
+ Binding: 'this.Selection()'
+ }
+ ]
+ }
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityScheme/Component_listActionBarPageCustomerAndFillingCapacityOrder.def b/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityScheme/Component_listActionBarPageCustomerAndFillingCapacityOrder.def
new file mode 100644
index 0000000..ac6bc73
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityScheme/Component_listActionBarPageCustomerAndFillingCapacityOrder.def
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+Component listActionBarPageCustomerAndFillingCapacityOrder
+{
+ #keys: '[414382.0.413740612]'
+ BaseType: 'listActionBarPage'
+ Properties:
+ [
+ Taborder: 1
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityScheme/Component_listContextMenuCustomerAndFillingCapacityOrder.def b/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityScheme/Component_listContextMenuCustomerAndFillingCapacityOrder.def
new file mode 100644
index 0000000..01848c5
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityScheme/Component_listContextMenuCustomerAndFillingCapacityOrder.def
@@ -0,0 +1,35 @@
+Quintiq file version 2.0
+Component listContextMenuCustomerAndFillingCapacityOrder
+{
+ #keys: '[414382.0.413740617]'
+ BaseType: 'listContextMenu'
+ Children:
+ [
+ Component MenuFilling
+ {
+ #keys: '[414382.0.414941796]'
+ BaseType: 'WebMenu'
+ Properties:
+ [
+ Image: 'ADD2'
+ Taborder: 3
+ Title: 'Filling'
+ ]
+ }
+ Component MenuTest
+ {
+ #keys: '[414382.0.415603149]'
+ BaseType: 'WebMenu'
+ Properties:
+ [
+ Image: 'ADD2'
+ Taborder: 4
+ Title: 'Test'
+ ]
+ }
+ ]
+ Properties:
+ [
+ Taborder: 0
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityScheme/Method_OpenScheme.def b/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityScheme/Method_OpenScheme.def
new file mode 100644
index 0000000..152a2c0
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityScheme/Method_OpenScheme.def
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+#parent: #root
+Method OpenScheme () id:Method_FormCustomerAndForecastOrder_OpenScheme
+{
+ #keys: '[414382.0.410362701]'
+ Body:
+ [*
+ ApplicationMacroPlanner.ShowFormModal( this );
+ *]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityScheme/Response_ListCustomerAndFillingCapacityOrder_MenuFilling_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityScheme/Response_ListCustomerAndFillingCapacityOrder_MenuFilling_OnClick.def
new file mode 100644
index 0000000..ec8076c
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityScheme/Response_ListCustomerAndFillingCapacityOrder_MenuFilling_OnClick.def
@@ -0,0 +1,20 @@
+Quintiq file version 2.0
+#parent: ListCustomerAndFillingCapacityOrder
+Response OnClick (
+ CustomerAndForecastOrder selection
+) id:Response_ListCustomerAndFillingCapacityOrder_MenuFilling_OnClick
+{
+ #keys: '[414382.0.415301299]'
+ CanBindMultiple: false
+ DefinitionID => /ListCustomerAndFillingCapacityOrder/Responsedef_ListCustomerAndFillingCapacityOrder_WebMenu_OnClick
+ GroupServerCalls: true
+ Initiator: 'MenuFilling'
+ QuillAction
+ {
+ Body:
+ [*
+ dlg := construct( DialogFillingCustomerAndForecast );
+ dlg.Filling( selection);
+ *]
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityScheme/Response_ListCustomerAndFillingCapacityOrder_MenuTest_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityScheme/Response_ListCustomerAndFillingCapacityOrder_MenuTest_OnClick.def
new file mode 100644
index 0000000..f292299
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityScheme/Response_ListCustomerAndFillingCapacityOrder_MenuTest_OnClick.def
@@ -0,0 +1,17 @@
+Quintiq file version 2.0
+#parent: ListCustomerAndFillingCapacityOrder
+Response OnClick () id:Response_ListCustomerAndFillingCapacityOrder_MenuTest_OnClick
+{
+ #keys: '[414382.0.415724061]'
+ CanBindMultiple: false
+ DefinitionID => /ListCustomerAndFillingCapacityOrder/Responsedef_ListCustomerAndFillingCapacityOrder_WebMenu_OnClick
+ GroupServerCalls: true
+ Initiator: 'MenuTest'
+ QuillAction
+ {
+ Body:
+ [*
+ CustomerAndForecastOrder::CreateTestData( MacroPlan);
+ *]
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityScheme/_ROOT_Component_FormCustomerAndForecastOrder.def b/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityScheme/_ROOT_Component_FormCustomerAndForecastOrder.def
new file mode 100644
index 0000000..7a7dea3
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityScheme/_ROOT_Component_FormCustomerAndForecastOrder.def
@@ -0,0 +1,16 @@
+Quintiq file version 2.0
+#root
+#parent: MacroPlannerWebApp
+OrphanComponent FormCustomerAndForecastOrder
+{
+ #keys: '[414382.0.410884055]'
+ BaseType: 'WebForm'
+ Children:
+ [
+ #child: ListCustomerAndFillingCapacityOrder
+ ]
+ Properties:
+ [
+ Title: 'Customer And Forecast Order'
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormFillingScheme/Component_ListFillingScheme.def b/_Main/UI/MacroPlannerWebApp/Component_FormFillingScheme/Component_ListFillingScheme.def
new file mode 100644
index 0000000..30b376c
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormFillingScheme/Component_ListFillingScheme.def
@@ -0,0 +1,59 @@
+Quintiq file version 2.0
+Component ListFillingScheme
+{
+ #keys: '[414382.0.426811656]'
+ BaseType: 'WebList'
+ Children:
+ [
+ Component DataExtractorFillingScheme
+ {
+ #keys: '[414382.0.426811657]'
+ BaseType: 'WebDataExtractor'
+ Properties:
+ [
+ DataType: 'MacroPlan'
+ Source: 'MacroPlan'
+ Taborder: 0
+ Transformation: 'FilllingCapacityOrderScheme'
+ ]
+ }
+ #child: listActionBarPageFillingScheme
+ Component DataSetLevelFillingScheme
+ {
+ #keys: '[414382.0.426811662]'
+ BaseType: 'WebDataSetLevel'
+ Children:
+ [
+ #child: Menurelease
+ ]
+ Properties:
+ [
+ Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"SchemeName","title":"SchemeName","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"SchemeName"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"BusinessType","title":"BusinessType","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"BusinessType"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"SalesSegmentName","title":"SalesSegmentName","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"SalesSegmentName"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Customer","title":"Customer","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Customer"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"SchemeDate","title":"SchemeDate","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"SchemeDate"}}]'
+ ContextMenu: 'Menurelease'
+ Taborder: 2
+ ]
+ }
+ ]
+ Properties:
+ [
+ Taborder: 0
+ ]
+ ResponseDefinitions:
+ [
+ DelegatedResponseDefinition OnClick id:Responsedef_ListFillingScheme_WebMenu_OnClick
+ {
+ #keys: '[414382.0.428592707]'
+ Initiator: 'WebMenu'
+ IsInherited: false
+ ResponseType: 'OnClick'
+ Arguments:
+ [
+ ResponseDefinitionArgument selection
+ {
+ #keys: '[1143.0.45315951]'
+ Binding: 'this.Selection()'
+ }
+ ]
+ }
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormFillingScheme/Component_Menurelease.def b/_Main/UI/MacroPlannerWebApp/Component_FormFillingScheme/Component_Menurelease.def
new file mode 100644
index 0000000..db68912
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormFillingScheme/Component_Menurelease.def
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+Component Menurelease
+{
+ #keys: '[414382.0.426811664]'
+ BaseType: 'listContextMenu'
+ Children:
+ [
+ Component MenuRelease
+ {
+ #keys: '[414382.0.428743342]'
+ BaseType: 'WebMenu'
+ Properties:
+ [
+ Taborder: 3
+ Title: 'Release'
+ ]
+ }
+ ]
+ Properties:
+ [
+ Taborder: 0
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormFillingScheme/Component_listActionBarPageFillingScheme.def b/_Main/UI/MacroPlannerWebApp/Component_FormFillingScheme/Component_listActionBarPageFillingScheme.def
new file mode 100644
index 0000000..14ace1f
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormFillingScheme/Component_listActionBarPageFillingScheme.def
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+Component listActionBarPageFillingScheme
+{
+ #keys: '[414382.0.426811659]'
+ BaseType: 'listActionBarPage'
+ Properties:
+ [
+ Taborder: 1
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormFillingScheme/Response_ListFillingScheme_MenuRelease_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormFillingScheme/Response_ListFillingScheme_MenuRelease_OnClick.def
new file mode 100644
index 0000000..5d50bdf
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormFillingScheme/Response_ListFillingScheme_MenuRelease_OnClick.def
@@ -0,0 +1,24 @@
+Quintiq file version 2.0
+#parent: ListFillingScheme
+Response OnClick (
+ FilllingCapacityOrderScheme selection
+) id:Response_ListFillingScheme_MenuRelease_OnClick
+{
+ #keys: '[414382.0.428592726]'
+ CanBindMultiple: false
+ DefinitionID => /ListFillingScheme/Responsedef_ListFillingScheme_WebMenu_OnClick
+ Initiator: 'MenuRelease'
+ Precondition:
+ [*
+ not selection.IsRelease();
+ *]
+ QuillAction
+ {
+ Body:
+ [*
+ selection.IsRelease(true);
+ FilllingCapacityOrderScheme::ReleaseFillingScheme( MacroPlan,selection);
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormFillingScheme/Response_ListFillingScheme_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormFillingScheme/Response_ListFillingScheme_OnClick.def
new file mode 100644
index 0000000..7b75d26
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormFillingScheme/Response_ListFillingScheme_OnClick.def
@@ -0,0 +1,32 @@
+Quintiq file version 2.0
+#parent: ListFillingScheme
+Response OnClick (
+ FilllingCapacityOrderScheme selection
+) id:Response_ListFillingScheme_OnClick
+{
+ #keys: '[414382.0.426812119]'
+ CanBindMultiple: false
+ DefinitionID: 'Responsedef_WebList_OnClick'
+ QuillAction
+ {
+ Body:
+ [*
+ schemeName := selection.SchemeName();
+ info( "schemeName : " + schemeName );
+ list := selectset( MacroPlan,FillingCapacityOrder,order,order.SchemeName() = selection.SchemeName());
+
+ traverse( list,Elements,e)
+ {
+ info( e.SchemeName() );
+ }
+
+ DataHolderFillingScheme.Data(&list);
+ holderlist := DataHolderFillingScheme.Data();
+ traverse( holderlist,Elements,e)
+ {
+ info( e.SchemeName() );
+ }
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormFillingScheme/_ROOT_Component_FormFillingScheme.def b/_Main/UI/MacroPlannerWebApp/Component_FormFillingScheme/_ROOT_Component_FormFillingScheme.def
new file mode 100644
index 0000000..b95b12f
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormFillingScheme/_ROOT_Component_FormFillingScheme.def
@@ -0,0 +1,22 @@
+Quintiq file version 2.0
+#root
+#parent: MacroPlannerWebApp
+OrphanComponent FormFillingScheme
+{
+ #keys: '[414382.0.426331772]'
+ BaseType: 'WebForm'
+ Children:
+ [
+ #child: ListFillingScheme
+ Component DataHolderFillingScheme
+ {
+ #keys: '[414382.0.437300526]'
+ BaseType: 'WebDataHolder'
+ Databinding: 'structured[FillingCapacityOrder]*'
+ Properties:
+ [
+ Taborder: 1
+ ]
+ }
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormHistoricalFillingCapacityOrder/Component_ListHistoricalFillingCapacityOrder.def b/_Main/UI/MacroPlannerWebApp/Component_FormHistoricalFillingCapacityOrder/Component_ListHistoricalFillingCapacityOrder.def
new file mode 100644
index 0000000..017d092
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormHistoricalFillingCapacityOrder/Component_ListHistoricalFillingCapacityOrder.def
@@ -0,0 +1,41 @@
+Quintiq file version 2.0
+Component ListHistoricalFillingCapacityOrder
+{
+ #keys: '[414382.0.442221219]'
+ BaseType: 'WebList'
+ Children:
+ [
+ Component DataExtractorHistoricalFillingCapacityOrder
+ {
+ #keys: '[414382.0.442221220]'
+ BaseType: 'WebDataExtractor'
+ Properties:
+ [
+ DataType: 'MacroPlan'
+ Source: 'MacroPlan'
+ Taborder: 0
+ Transformation: 'HistoricalFillingCapacityOrder'
+ ]
+ }
+ #child: listActionBarPageHistoricalFillingCapacityOrder
+ Component DataSetLevelHistoricalFillingCapacityOrder
+ {
+ #keys: '[414382.0.442221225]'
+ BaseType: 'WebDataSetLevel'
+ Children:
+ [
+ #child: listContextMenuHistoricalFillingCapacityOrder
+ ]
+ Properties:
+ [
+ Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"VerNo","title":"VerNo","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"VerNo"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"OrderID","title":"OrderID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"OrderID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ProductID","title":"ProductID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ProductID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"OrderType","title":"OrderType","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"OrderType"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"FillingType","title":"FillingType","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"FillingType"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"BusinessType","title":"BusinessType","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"BusinessType"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"StockingPointID","title":"StockingPointID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"StockingPointID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Customer","title":"Customer","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Customer"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Quantity","title":"Quantity","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Quantity"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"RewindsQuantityToReduced","title":"RewindsQuantityToReduced","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"RewindsQuantityToReduced"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"UnitOfMeasureName","title":"UnitOfMeasureName","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"UnitOfMeasureName"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"SalesAmount","title":"SalesAmount","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"SalesAmount"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"OrderDate","title":"OrderDate","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"OrderDate"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ForecastDemandDate","title":"ForecastDemandDate","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ForecastDemandDate"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ProfitabilityLevel","title":"ProfitabilityLevel","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ProfitabilityLevel"}}]'
+ ContextMenu: 'listContextMenuHistoricalFillingCapacityOrder'
+ Taborder: 2
+ ]
+ }
+ ]
+ Properties:
+ [
+ Taborder: 0
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormHistoricalFillingCapacityOrder/Component_listActionBarPageHistoricalFillingCapacityOrder.def b/_Main/UI/MacroPlannerWebApp/Component_FormHistoricalFillingCapacityOrder/Component_listActionBarPageHistoricalFillingCapacityOrder.def
new file mode 100644
index 0000000..65995fb
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormHistoricalFillingCapacityOrder/Component_listActionBarPageHistoricalFillingCapacityOrder.def
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+Component listActionBarPageHistoricalFillingCapacityOrder
+{
+ #keys: '[414382.0.442221222]'
+ BaseType: 'listActionBarPage'
+ Properties:
+ [
+ Taborder: 1
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormHistoricalFillingCapacityOrder/Component_listContextMenuHistoricalFillingCapacityOrder.def b/_Main/UI/MacroPlannerWebApp/Component_FormHistoricalFillingCapacityOrder/Component_listContextMenuHistoricalFillingCapacityOrder.def
new file mode 100644
index 0000000..c1ee9a0
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormHistoricalFillingCapacityOrder/Component_listContextMenuHistoricalFillingCapacityOrder.def
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+Component listContextMenuHistoricalFillingCapacityOrder
+{
+ #keys: '[414382.0.442221227]'
+ BaseType: 'listContextMenu'
+ Properties:
+ [
+ Taborder: 0
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormHistoricalFillingCapacityOrder/_ROOT_Component_FormHistoricalFillingCapacityOrder.def b/_Main/UI/MacroPlannerWebApp/Component_FormHistoricalFillingCapacityOrder/_ROOT_Component_FormHistoricalFillingCapacityOrder.def
new file mode 100644
index 0000000..9a378bc
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormHistoricalFillingCapacityOrder/_ROOT_Component_FormHistoricalFillingCapacityOrder.def
@@ -0,0 +1,12 @@
+Quintiq file version 2.0
+#root
+#parent: MacroPlannerWebApp
+OrphanComponent FormHistoricalFillingCapacityOrder
+{
+ #keys: '[414382.0.441950653]'
+ BaseType: 'WebForm'
+ Children:
+ [
+ #child: ListHistoricalFillingCapacityOrder
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormHistoricalSalesOrders/Component_ListHistoricalSalesOrders.def b/_Main/UI/MacroPlannerWebApp/Component_FormHistoricalSalesOrders/Component_ListHistoricalSalesOrders.def
new file mode 100644
index 0000000..9abf0cb
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormHistoricalSalesOrders/Component_ListHistoricalSalesOrders.def
@@ -0,0 +1,59 @@
+Quintiq file version 2.0
+Component ListHistoricalSalesOrders
+{
+ #keys: '[414382.0.388210753]'
+ BaseType: 'WebList'
+ Children:
+ [
+ Component DataExtractorHistoricalSalesOrders
+ {
+ #keys: '[414382.0.388210754]'
+ BaseType: 'WebDataExtractor'
+ Properties:
+ [
+ DataType: 'MacroPlan'
+ Source: 'MacroPlan'
+ Taborder: 0
+ Transformation: 'HistoricalSalesOrder'
+ ]
+ }
+ #child: listActionBarPageHistoricalSalesOrders
+ Component DataSetLevelHistoricalSalesOrders
+ {
+ #keys: '[414382.0.388210759]'
+ BaseType: 'WebDataSetLevel'
+ Children:
+ [
+ #child: listContextMenuHistoricalSalesOrders
+ ]
+ Properties:
+ [
+ Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"VerNo","title":"VerNo","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"VerNo"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ProductID","title":"ProductID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ProductID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Customer","title":"Customer","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Customer"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Quantity","title":"Quantity","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Quantity"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"UnitOfMeasureName","title":"UnitOfMeasureName","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"UnitOfMeasureName"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"OrderDate","title":"OrderDate","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"OrderDate"}}]'
+ ContextMenu: 'listContextMenuHistoricalSalesOrders'
+ Taborder: 2
+ ]
+ }
+ ]
+ Properties:
+ [
+ Taborder: 0
+ ]
+ ResponseDefinitions:
+ [
+ DelegatedResponseDefinition OnClick id:Responsedef_ListHistoricalSalesOrders_WebMenu_OnClick
+ {
+ #keys: '[414382.0.394390402]'
+ Initiator: 'WebMenu'
+ IsInherited: false
+ ResponseType: 'OnClick'
+ Arguments:
+ [
+ ResponseDefinitionArgument selection
+ {
+ #keys: '[1083.0.17043214]'
+ Binding: 'this.Selection()'
+ }
+ ]
+ }
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormHistoricalSalesOrders/Component_listActionBarPageHistoricalSalesOrders.def b/_Main/UI/MacroPlannerWebApp/Component_FormHistoricalSalesOrders/Component_listActionBarPageHistoricalSalesOrders.def
new file mode 100644
index 0000000..8597dfe
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormHistoricalSalesOrders/Component_listActionBarPageHistoricalSalesOrders.def
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+Component listActionBarPageHistoricalSalesOrders
+{
+ #keys: '[414382.0.388210756]'
+ BaseType: 'listActionBarPage'
+ Properties:
+ [
+ Taborder: 1
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormHistoricalSalesOrders/Component_listContextMenuHistoricalSalesOrders.def b/_Main/UI/MacroPlannerWebApp/Component_FormHistoricalSalesOrders/Component_listContextMenuHistoricalSalesOrders.def
new file mode 100644
index 0000000..08bafce
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormHistoricalSalesOrders/Component_listContextMenuHistoricalSalesOrders.def
@@ -0,0 +1,46 @@
+Quintiq file version 2.0
+Component listContextMenuHistoricalSalesOrders
+{
+ #keys: '[414382.0.388210761]'
+ BaseType: 'listContextMenu'
+ Children:
+ [
+ Component MenuNew id:MenuNew_603
+ {
+ #keys: '[414382.0.394390227]'
+ BaseType: 'WebMenu'
+ Properties:
+ [
+ Image: 'ADD2'
+ Taborder: 3
+ Title: 'New'
+ ]
+ }
+ Component MenuEdit id:MenuEdit_847
+ {
+ #keys: '[414382.0.394390242]'
+ BaseType: 'WebMenu'
+ Properties:
+ [
+ Image: 'PENCIL'
+ Taborder: 4
+ Title: 'Edit'
+ ]
+ }
+ Component MenuDelete id:MenuDelete_646
+ {
+ #keys: '[414382.0.394390257]'
+ BaseType: 'WebMenu'
+ Properties:
+ [
+ Image: 'DELETE'
+ Taborder: 5
+ Title: 'Delete'
+ ]
+ }
+ ]
+ Properties:
+ [
+ Taborder: 0
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormHistoricalSalesOrders/Response_ListHistoricalSalesOrders_MenuDelete_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormHistoricalSalesOrders/Response_ListHistoricalSalesOrders_MenuDelete_OnClick.def
new file mode 100644
index 0000000..c59123e
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormHistoricalSalesOrders/Response_ListHistoricalSalesOrders_MenuDelete_OnClick.def
@@ -0,0 +1,19 @@
+Quintiq file version 2.0
+#parent: ListHistoricalSalesOrders
+Response OnClick (
+ HistoricalSalesOrder selection
+) id:Response_ListHistoricalSalesOrders_MenuDelete_OnClick
+{
+ #keys: '[414382.0.402500799]'
+ CanBindMultiple: false
+ DefinitionID => /ListHistoricalSalesOrders/Responsedef_ListHistoricalSalesOrders_WebMenu_OnClick
+ GroupServerCalls: true
+ Initiator: 'MenuDelete'
+ QuillAction
+ {
+ Body:
+ [*
+ selection.Delete();
+ *]
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormHistoricalSalesOrders/Response_ListHistoricalSalesOrders_MenuEdit_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormHistoricalSalesOrders/Response_ListHistoricalSalesOrders_MenuEdit_OnClick.def
new file mode 100644
index 0000000..6ad44a8
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormHistoricalSalesOrders/Response_ListHistoricalSalesOrders_MenuEdit_OnClick.def
@@ -0,0 +1,20 @@
+Quintiq file version 2.0
+#parent: ListHistoricalSalesOrders
+Response OnClick (
+ FillingCapacityOrder selection
+) id:Response_ListHistoricalSalesOrders_MenuEdit_OnClick
+{
+ #keys: '[414382.0.402531567]'
+ CanBindMultiple: false
+ DefinitionID => /ListHistoricalSalesOrders/Responsedef_ListHistoricalSalesOrders_WebMenu_OnClick
+ GroupServerCalls: true
+ Initiator: 'MenuEdit'
+ QuillAction
+ {
+ Body:
+ [*
+ dlg := construct( DialogHistoricalSalesOrders );
+ dlg.Edit( selection );
+ *]
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormHistoricalSalesOrders/Response_ListHistoricalSalesOrders_MenuNew_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormHistoricalSalesOrders/Response_ListHistoricalSalesOrders_MenuNew_OnClick.def
new file mode 100644
index 0000000..d151663
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormHistoricalSalesOrders/Response_ListHistoricalSalesOrders_MenuNew_OnClick.def
@@ -0,0 +1,26 @@
+Quintiq file version 2.0
+#parent: ListHistoricalSalesOrders
+Response OnClick () id:Response_ListHistoricalSalesOrders_MenuNew_OnClick
+{
+ #keys: '[414382.0.394390488]'
+ CanBindMultiple: false
+ DefinitionID => /ListHistoricalSalesOrders/Responsedef_ListHistoricalSalesOrders_WebMenu_OnClick
+ Initiator: 'MenuNew'
+ QuillAction
+ {
+ Body:
+ [*
+ dlg := construct( DialogHistoricalSalesOrders );
+
+ dlg.dropDownStringListProductID().Strings( HistoricalSalesOrder::GetProductIdString( MacroPlan,"") );
+ info( HistoricalSalesOrder::GetProductIdString( MacroPlan,"") );
+ dlg.dropDownStringListCustomer().Strings( HistoricalSalesOrder::GetCustomerString( MacroPlan,""));
+ dlg.dropDownStringListSalesSegmentName().Strings( HistoricalSalesOrder::GetSalesSegmentString( MacroPlan,""));
+ dlg.dropDownStringListStockPointID().Strings( HistoricalSalesOrder::GetStockingPointString( MacroPlan,""));
+ dlg.dropDownStringListUnitOfMeasureName().Strings( HistoricalSalesOrder::GetUnitOfMeasuresString( MacroPlan,""));
+
+ dlg.New( MacroPlan );
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormHistoricalSalesOrders/_ROOT_Component_FormHistoricalSalesOrders.def b/_Main/UI/MacroPlannerWebApp/Component_FormHistoricalSalesOrders/_ROOT_Component_FormHistoricalSalesOrders.def
new file mode 100644
index 0000000..0b63738
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormHistoricalSalesOrders/_ROOT_Component_FormHistoricalSalesOrders.def
@@ -0,0 +1,16 @@
+Quintiq file version 2.0
+#root
+#parent: MacroPlannerWebApp
+OrphanComponent FormHistoricalSalesOrders
+{
+ #keys: '[414382.0.386940324]'
+ BaseType: 'WebForm'
+ Children:
+ [
+ #child: ListHistoricalSalesOrders
+ ]
+ Properties:
+ [
+ Title: 'Historical Sales Orders'
+ ]
+}
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FormMaterialLabelingAndPlanningStrategy/Component_PanelMaterialExportAndImport\043136.def" "b/_Main/UI/MacroPlannerWebApp/Component_FormMaterialLabelingAndPlanningStrategy/Component_PanelMaterialExportAndImport\043136.def"
index 636f952..7519c89 100644
--- "a/_Main/UI/MacroPlannerWebApp/Component_FormMaterialLabelingAndPlanningStrategy/Component_PanelMaterialExportAndImport\043136.def"
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FormMaterialLabelingAndPlanningStrategy/Component_PanelMaterialExportAndImport\043136.def"
@@ -13,7 +13,7 @@
[
Image: 'EXPORT1'
Label: '鏁版嵁瀵煎嚭'
- Taborder: 1
+ Taborder: 2
]
}
Component ButtonMaterialExportAndImport
@@ -24,7 +24,7 @@
[
Image: 'IMPORT1'
Label: '鏁版嵁瀵煎叆'
- Taborder: 2
+ Taborder: 3
]
}
Component ButtonSynchronizeInventoryTargets
@@ -36,7 +36,17 @@
Image: 'CLOUD_REFRESH'
Label: '鍚屾搴撳瓨鐩爣'
Taborder: 0
- Visible: false
+ ]
+ }
+ Component ButtonPullData
+ {
+ #keys: '[414702.0.199743004]'
+ BaseType: 'WebButton'
+ Properties:
+ [
+ Image: 'TRACTOR'
+ Label: '鎷夊彇鏁版嵁'
+ Taborder: 1
]
}
]
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormMaterialLabelingAndPlanningStrategy/Response_PanelMaterialExportAndImport_136_ButtonPullData_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormMaterialLabelingAndPlanningStrategy/Response_PanelMaterialExportAndImport_136_ButtonPullData_OnClick.def
new file mode 100644
index 0000000..b0f98a4
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormMaterialLabelingAndPlanningStrategy/Response_PanelMaterialExportAndImport_136_ButtonPullData_OnClick.def
@@ -0,0 +1,16 @@
+Quintiq file version 2.0
+#parent: PanelMaterialExportAndImport_136/ButtonPullData
+Response OnClick () id:Response_PanelMaterialExportAndImport_136_ButtonPullData_OnClick
+{
+ #keys: '[414702.0.198246056]'
+ CanBindMultiple: false
+ DefinitionID: 'Responsedef_WebButton_OnClick'
+ QuillAction
+ {
+ Body:
+ [*
+ WebMessageBox::Error( "鏁版嵁婀栬繛鎺ュけ璐�", true );
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormMaterialLabelingAndPlanningStrategy/Response_PanelMaterialExportAndImport_136_ButtonSynchronizeInventoryTargets_.def b/_Main/UI/MacroPlannerWebApp/Component_FormMaterialLabelingAndPlanningStrategy/Response_PanelMaterialExportAndImport_136_ButtonSynchronizeInventoryTargets_.def
index a7731ca..5b1c51b 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormMaterialLabelingAndPlanningStrategy/Response_PanelMaterialExportAndImport_136_ButtonSynchronizeInventoryTargets_.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormMaterialLabelingAndPlanningStrategy/Response_PanelMaterialExportAndImport_136_ButtonSynchronizeInventoryTargets_.def
@@ -5,11 +5,23 @@
#keys: '[414702.0.141615322]'
CanBindMultiple: false
DefinitionID: 'Responsedef_WebButton_OnClick'
+ Precondition:
+ [*
+ flag := not isnull( GlobalOTDTable ) and not isnull( MacroPlan );
+
+ if ( not flag ) {
+ feedback := "褰撳墠娌℃湁婵�娲荤殑鐗堟湰";
+ }
+
+ return flag;
+ *]
QuillAction
{
Body:
[*
- WebMessageBox::Success( "鍚屾鎴愬姛", true );
+ MatAttrSettingAndPlanStrategy::SynchronizeInventoryTargets( GlobalOTDTable, MacroPlan );
+
+ WebMessageBox::Success( "搴撳瓨鐩爣鍚屾鎴愬姛", true );
*]
GroupServerCalls: false
}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormMaterialLabelingAndPlanningStrategy/_ROOT_Component_FormMaterialLabelingAndPlanningStrategy.def b/_Main/UI/MacroPlannerWebApp/Component_FormMaterialLabelingAndPlanningStrategy/_ROOT_Component_FormMaterialLabelingAndPlanningStrategy.def
index 527a380..06483a1 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormMaterialLabelingAndPlanningStrategy/_ROOT_Component_FormMaterialLabelingAndPlanningStrategy.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormMaterialLabelingAndPlanningStrategy/_ROOT_Component_FormMaterialLabelingAndPlanningStrategy.def
@@ -13,6 +13,6 @@
[
Description: '鐗╂枡鏍囩&璁″垝绛栫暐琛ㄥ崟'
Image: 'PAPER_ROLL'
- Title: 'Material labeling&planning strategy'
+ Title: '鐗╂枡鏍囩&璁″垝绛栫暐'
]
}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Component_ListData.def b/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Component_ListData.def
new file mode 100644
index 0000000..1b59d94
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Component_ListData.def
@@ -0,0 +1,59 @@
+Quintiq file version 2.0
+Component ListData
+{
+ #keys: '[414702.0.156121812]'
+ BaseType: 'WebList'
+ Children:
+ [
+ Component DataExtractorData
+ {
+ #keys: '[414702.0.156121813]'
+ BaseType: 'WebDataExtractor'
+ Properties:
+ [
+ DataType: 'MacroPlan'
+ Source: 'MacroPlan'
+ Taborder: 0
+ Transformation: 'PanelMaterial'
+ ]
+ }
+ #child: listActionBarPageData
+ Component DataSetLevelData
+ {
+ #keys: '[414702.0.156121818]'
+ BaseType: 'WebDataSetLevel'
+ Children:
+ [
+ #child: listContextMenuData
+ ]
+ Properties:
+ [
+ Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"PanelModel","title":"PanelModel","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"PanelModel"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"MaterialDescription","title":"MaterialDescription","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"MaterialDescription"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"StartDate","title":"StartDate","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"StartDate"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"DemandQuantity","title":"DemandQuantity","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"DemandQuantity"}}]'
+ ContextMenu: 'listContextMenuData'
+ Taborder: 2
+ ]
+ }
+ ]
+ Properties:
+ [
+ Taborder: 0
+ ]
+ ResponseDefinitions:
+ [
+ DelegatedResponseDefinition OnClick id:Responsedef_ListData_WebMenu_OnClick
+ {
+ #keys: '[414702.0.158084176]'
+ Initiator: 'WebMenu'
+ IsInherited: false
+ ResponseType: 'OnClick'
+ Arguments:
+ [
+ ResponseDefinitionArgument selection
+ {
+ #keys: '[359.0.59836272]'
+ Binding: 'this.Selection()'
+ }
+ ]
+ }
+ ]
+}
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Component_PanelData\043431.def" "b/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Component_PanelData\043431.def"
new file mode 100644
index 0000000..1e7ba58
--- /dev/null
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Component_PanelData\043431.def"
@@ -0,0 +1,14 @@
+Quintiq file version 2.0
+Component PanelData
+{
+ #keys: '[414702.0.153191731]'
+ BaseType: 'WebPanel'
+ Children:
+ [
+ #child: ListData
+ ]
+ Properties:
+ [
+ Taborder: 1
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Component_PanelFunctionButtons.def b/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Component_PanelFunctionButtons.def
new file mode 100644
index 0000000..59898ad
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Component_PanelFunctionButtons.def
@@ -0,0 +1,60 @@
+Quintiq file version 2.0
+Component PanelFunctionButtons
+{
+ #keys: '[414702.0.153162120]'
+ BaseType: 'WebPanel'
+ Children:
+ [
+ Component ButtonRefresh
+ {
+ #keys: '[414702.0.153101807]'
+ BaseType: 'WebButton'
+ Properties:
+ [
+ Image: 'ARROW_CIRCLE2'
+ Label: '鍒锋柊'
+ Taborder: 0
+ ]
+ }
+ Component ButtonSend
+ {
+ #keys: '[414702.0.153101827]'
+ BaseType: 'WebButton'
+ Properties:
+ [
+ Image: 'ANTENNA'
+ Label: '鍙戦��'
+ Taborder: 1
+ ]
+ }
+ Component DropDownStringListBusinessType
+ {
+ #keys: '[414702.0.170431848]'
+ BaseType: 'WebDropDownStringList'
+ Properties:
+ [
+ Label: '浜嬩笟閮ㄩ�夋嫨'
+ Strings: '澶╁崕;涓撴樉;IT;杞﹁浇;TM17;TM18;杩愬姩鍋ュ悍;姹借溅鐢靛瓙'
+ Taborder: 2
+ ]
+ }
+ Component EditFieldAddress
+ {
+ #keys: '[414702.0.203870768]'
+ BaseType: 'WebEditField'
+ Properties:
+ [
+ Label: '鍙戦�佸湴鍧�'
+ Taborder: 3
+ ]
+ }
+ ]
+ Properties:
+ [
+ FixedSize: true
+ MinimumColumns: 1
+ MinimumRows: 1
+ Orientation: 'horizontal'
+ Taborder: 0
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Component_PanelPanelPullPlanReport.def b/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Component_PanelPanelPullPlanReport.def
new file mode 100644
index 0000000..1cf39fa
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Component_PanelPanelPullPlanReport.def
@@ -0,0 +1,15 @@
+Quintiq file version 2.0
+Component PanelPanelPullPlanReport
+{
+ #keys: '[414702.0.153130397]'
+ BaseType: 'WebPanel'
+ Children:
+ [
+ #child: PanelData
+ #child: PanelFunctionButtons
+ ]
+ Properties:
+ [
+ Taborder: 0
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Component_listActionBarPageData.def b/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Component_listActionBarPageData.def
new file mode 100644
index 0000000..8aeee1c
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Component_listActionBarPageData.def
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+Component listActionBarPageData
+{
+ #keys: '[414702.0.156121815]'
+ BaseType: 'listActionBarPage'
+ Properties:
+ [
+ Taborder: 1
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Component_listContextMenuData.def b/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Component_listContextMenuData.def
new file mode 100644
index 0000000..e25d70c
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Component_listContextMenuData.def
@@ -0,0 +1,62 @@
+Quintiq file version 2.0
+Component listContextMenuData
+{
+ #keys: '[414702.0.156121820]'
+ BaseType: 'listContextMenu'
+ Children:
+ [
+ Component MenuCreate
+ {
+ #keys: '[414702.0.156370994]'
+ BaseType: 'WebMenu'
+ Properties:
+ [
+ Image: 'ADD2'
+ Shortcut: 'Ins'
+ Taborder: 3
+ Title: 'Create...'
+ ]
+ }
+ Component MenuEdit
+ {
+ #keys: '[414702.0.156371015]'
+ BaseType: 'WebMenu'
+ Properties:
+ [
+ BindOnDoubleClick: true
+ Image: 'PENCIL'
+ Shortcut: 'Enter'
+ Taborder: 4
+ Title: 'Edit'
+ ]
+ }
+ Component MenuDelete
+ {
+ #keys: '[414702.0.156371036]'
+ BaseType: 'WebMenu'
+ Properties:
+ [
+ Image: 'DELETE'
+ Shortcut: 'Del'
+ Taborder: 5
+ Title: 'Delete'
+ ]
+ }
+ Component MenuSelectAll
+ {
+ #keys: '[414702.0.157843652]'
+ BaseType: 'WebMenu'
+ Properties:
+ [
+ Image: 'DOCUMENT_SELECTION'
+ Shortcut: 'Ctrl+A'
+ Taborder: 6
+ Title: '鍏ㄩ��'
+ ]
+ }
+ ]
+ Properties:
+ [
+ Taborder: 0
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Response_ListData_MenuCreate_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Response_ListData_MenuCreate_OnClick.def
new file mode 100644
index 0000000..4e4e76b
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Response_ListData_MenuCreate_OnClick.def
@@ -0,0 +1,22 @@
+Quintiq file version 2.0
+#parent: ListData
+Response OnClick () id:Response_ListData_MenuCreate_OnClick
+{
+ #keys: '[414702.0.157756457]'
+ CanBindMultiple: false
+ DefinitionID => /ListData/Responsedef_ListData_WebMenu_OnClick
+ Initiator: 'MenuCreate'
+ Precondition:
+ [*
+ return not isnull( MacroPlan );
+ *]
+ QuillAction
+ {
+ Body:
+ [*
+ dlg := construct( DialogCreateEditPanelPullPlanReport );
+ dlg.New();
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Response_ListData_MenuDelete_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Response_ListData_MenuDelete_OnClick.def
new file mode 100644
index 0000000..1961a06
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Response_ListData_MenuDelete_OnClick.def
@@ -0,0 +1,18 @@
+Quintiq file version 2.0
+#parent: ListData
+Response OnClick (
+ PanelMaterial selection
+) id:Response_ListData_MenuDelete_OnClick
+{
+ #keys: '[414702.0.156337739]'
+ DefinitionID => /ListData/Responsedef_ListData_WebMenu_OnClick
+ Initiator: 'MenuDelete'
+ QuillAction
+ {
+ Body:
+ [*
+ selection.Delete();
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Response_ListData_MenuEdit_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Response_ListData_MenuEdit_OnClick.def
new file mode 100644
index 0000000..988dd2d
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Response_ListData_MenuEdit_OnClick.def
@@ -0,0 +1,20 @@
+Quintiq file version 2.0
+#parent: ListData
+Response OnClick (
+ PanelMaterial selection
+) id:Response_ListData_MenuEdit_OnClick
+{
+ #keys: '[414702.0.158297460]'
+ CanBindMultiple: false
+ DefinitionID => /ListData/Responsedef_ListData_WebMenu_OnClick
+ Initiator: 'MenuEdit'
+ QuillAction
+ {
+ Body:
+ [*
+ dlg := construct( DialogCreateEditPanelPullPlanReport );
+ dlg.Edit( selection );
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Response_ListData_MenuSelectAll_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Response_ListData_MenuSelectAll_OnClick.def
new file mode 100644
index 0000000..2bfc384
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Response_ListData_MenuSelectAll_OnClick.def
@@ -0,0 +1,17 @@
+Quintiq file version 2.0
+#parent: ListData
+Response OnClick () id:Response_ListData_MenuSelectAll_OnClick
+{
+ #keys: '[414702.0.158466175]'
+ CanBindMultiple: false
+ DefinitionID => /ListData/Responsedef_ListData_WebMenu_OnClick
+ Initiator: 'MenuSelectAll'
+ QuillAction
+ {
+ Body:
+ [*
+ this.SelectAll();
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Response_PanelFunctionButtons_ButtonRefresh_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Response_PanelFunctionButtons_ButtonRefresh_OnClick.def
new file mode 100644
index 0000000..7b93559
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Response_PanelFunctionButtons_ButtonRefresh_OnClick.def
@@ -0,0 +1,24 @@
+Quintiq file version 2.0
+#parent: PanelFunctionButtons/ButtonRefresh
+Response OnClick () id:Response_PanelFunctionButtons_ButtonRefresh_OnClick
+{
+ #keys: '[414702.0.156301340]'
+ CanBindMultiple: false
+ DefinitionID: 'Responsedef_WebButton_OnClick'
+ Precondition:
+ [*
+ return not isnull( GlobalOTDTable ) and not isnull( MacroPlan );
+ *]
+ QuillAction
+ {
+ Body:
+ [*
+ MacroPlan.PanelMaterial( relflush );
+
+ GlobalOTDTable.RefreshPanelMaterialData( MacroPlan );
+
+ WebMessageBox::Success( "鍒锋柊鎴愬姛锛�", true );
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Response_PanelFunctionButtons_ButtonSend_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Response_PanelFunctionButtons_ButtonSend_OnClick.def
new file mode 100644
index 0000000..c52a5f6
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Response_PanelFunctionButtons_ButtonSend_OnClick.def
@@ -0,0 +1,24 @@
+Quintiq file version 2.0
+#parent: PanelFunctionButtons/ButtonSend
+Response OnClick () id:Response_PanelFunctionButtons_ButtonSend_OnClick
+{
+ #keys: '[414702.0.168500044]'
+ CanBindMultiple: false
+ DefinitionID: 'Responsedef_WebButton_OnClick'
+ Precondition:
+ [*
+ return not isnull( MacroPlan ) and not isnull( DataHolderActiveScenario.Data() );
+ *]
+ QuillAction
+ {
+ Body:
+ [*
+ scenario := DataHolderActiveScenario.Data();
+
+ PanelMaterial::Send( MacroPlan, scenario, DropDownStringListBusinessType.Text(), EditFieldAddress.Text() );
+
+ WebMessageBox::Success( "鍙戦�佹垚鍔燂紒", true );
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/_ROOT_Component_FormPanelPullPlanReport.def b/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/_ROOT_Component_FormPanelPullPlanReport.def
new file mode 100644
index 0000000..99e3212
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/_ROOT_Component_FormPanelPullPlanReport.def
@@ -0,0 +1,17 @@
+Quintiq file version 2.0
+#root
+#parent: MacroPlannerWebApp
+OrphanComponent FormPanelPullPlanReport
+{
+ #keys: '[414702.0.142531280]'
+ BaseType: 'WebForm'
+ Children:
+ [
+ #child: PanelPanelPullPlanReport
+ ]
+ Properties:
+ [
+ Image: 'TABLET_COMPUTER'
+ Title: '闈㈡澘鎷夋枡璁″垝鎶ヨ〃'
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormWorkOrderType/Component_ListWorkOrderType.def b/_Main/UI/MacroPlannerWebApp/Component_FormWorkOrderType/Component_ListWorkOrderType.def
new file mode 100644
index 0000000..033d744
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormWorkOrderType/Component_ListWorkOrderType.def
@@ -0,0 +1,59 @@
+Quintiq file version 2.0
+Component ListWorkOrderType
+{
+ #keys: '[414702.0.144971549]'
+ BaseType: 'WebList'
+ Children:
+ [
+ Component DataExtractorWorkOrderType
+ {
+ #keys: '[414702.0.144971550]'
+ BaseType: 'WebDataExtractor'
+ Properties:
+ [
+ DataType: 'GlobalOTDTable'
+ Source: 'GlobalOTDTable'
+ Taborder: 0
+ Transformation: 'WorkOrderType'
+ ]
+ }
+ #child: listActionBarPageWorkOrderType
+ Component DataSetLevelWorkOrderType
+ {
+ #keys: '[414702.0.144971555]'
+ BaseType: 'WebDataSetLevel'
+ Children:
+ [
+ #child: listContextMenuWorkOrderType
+ ]
+ Properties:
+ [
+ Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ID","title":"ID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"TypeName","title":"TypeName","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"TypeName"}}]'
+ ContextMenu: 'listContextMenuWorkOrderType'
+ Taborder: 2
+ ]
+ }
+ ]
+ Properties:
+ [
+ Taborder: 0
+ ]
+ ResponseDefinitions:
+ [
+ DelegatedResponseDefinition OnClick id:Responsedef_ListWorkOrderType_WebMenu_OnClick
+ {
+ #keys: '[414702.0.145643479]'
+ Initiator: 'WebMenu'
+ IsInherited: false
+ ResponseType: 'OnClick'
+ Arguments:
+ [
+ ResponseDefinitionArgument selection
+ {
+ #keys: '[335.0.42781215]'
+ Binding: 'this.Selection()'
+ }
+ ]
+ }
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormWorkOrderType/Component_listActionBarPageWorkOrderType.def b/_Main/UI/MacroPlannerWebApp/Component_FormWorkOrderType/Component_listActionBarPageWorkOrderType.def
new file mode 100644
index 0000000..9a65131
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormWorkOrderType/Component_listActionBarPageWorkOrderType.def
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+Component listActionBarPageWorkOrderType
+{
+ #keys: '[414702.0.144971552]'
+ BaseType: 'listActionBarPage'
+ Properties:
+ [
+ Taborder: 1
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormWorkOrderType/Component_listContextMenuWorkOrderType.def b/_Main/UI/MacroPlannerWebApp/Component_FormWorkOrderType/Component_listContextMenuWorkOrderType.def
new file mode 100644
index 0000000..3afe0f9
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormWorkOrderType/Component_listContextMenuWorkOrderType.def
@@ -0,0 +1,62 @@
+Quintiq file version 2.0
+Component listContextMenuWorkOrderType
+{
+ #keys: '[414702.0.144971557]'
+ BaseType: 'listContextMenu'
+ Children:
+ [
+ Component MenuCreate
+ {
+ #keys: '[414702.0.142551037]'
+ BaseType: 'WebMenu'
+ Properties:
+ [
+ Image: 'ADD2'
+ Shortcut: 'Ins'
+ Taborder: 3
+ Title: 'Create...'
+ ]
+ }
+ Component MenuEdit
+ {
+ #keys: '[414702.0.142551058]'
+ BaseType: 'WebMenu'
+ Properties:
+ [
+ BindOnDoubleClick: true
+ Image: 'PENCIL'
+ Shortcut: 'Enter'
+ Taborder: 4
+ Title: 'Edit'
+ ]
+ }
+ Component MenuDelete
+ {
+ #keys: '[414702.0.142511388]'
+ BaseType: 'WebMenu'
+ Properties:
+ [
+ Image: 'DELETE'
+ Shortcut: 'Del'
+ Taborder: 5
+ Title: 'Delete'
+ ]
+ }
+ Component MenuSelectAll
+ {
+ #keys: '[414702.0.148555263]'
+ BaseType: 'WebMenu'
+ Properties:
+ [
+ Image: 'DOCUMENT_SELECTION'
+ Shortcut: 'Ctrl+A'
+ Taborder: 6
+ Title: '鍏ㄩ��'
+ ]
+ }
+ ]
+ Properties:
+ [
+ Taborder: 0
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormWorkOrderType/Response_ListWorkOrderType_MenuCreate_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormWorkOrderType/Response_ListWorkOrderType_MenuCreate_OnClick.def
new file mode 100644
index 0000000..a192d2b
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormWorkOrderType/Response_ListWorkOrderType_MenuCreate_OnClick.def
@@ -0,0 +1,18 @@
+Quintiq file version 2.0
+#parent: ListWorkOrderType
+Response OnClick () id:Response_ListWorkOrderType_MenuCreate_OnClick
+{
+ #keys: '[414702.0.142563927]'
+ CanBindMultiple: false
+ DefinitionID => /ListWorkOrderType/Responsedef_ListWorkOrderType_WebMenu_OnClick
+ Initiator: 'MenuCreate'
+ QuillAction
+ {
+ Body:
+ [*
+ dlg := construct( DialogCreateEditWorkOrderType );
+ dlg.NewWorkOrderType( FormWorkOrderType );
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormWorkOrderType/Response_ListWorkOrderType_MenuDelete_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormWorkOrderType/Response_ListWorkOrderType_MenuDelete_OnClick.def
new file mode 100644
index 0000000..95fa342
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormWorkOrderType/Response_ListWorkOrderType_MenuDelete_OnClick.def
@@ -0,0 +1,18 @@
+Quintiq file version 2.0
+#parent: ListWorkOrderType
+Response OnClick (
+ WorkOrderType selection
+) id:Response_ListWorkOrderType_MenuDelete_OnClick
+{
+ #keys: '[414702.0.147250862]'
+ DefinitionID => /ListWorkOrderType/Responsedef_ListWorkOrderType_WebMenu_OnClick
+ Initiator: 'MenuDelete'
+ QuillAction
+ {
+ Body:
+ [*
+ selection.Delete();
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormWorkOrderType/Response_ListWorkOrderType_MenuEdit_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormWorkOrderType/Response_ListWorkOrderType_MenuEdit_OnClick.def
new file mode 100644
index 0000000..a95b2f0
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormWorkOrderType/Response_ListWorkOrderType_MenuEdit_OnClick.def
@@ -0,0 +1,20 @@
+Quintiq file version 2.0
+#parent: ListWorkOrderType
+Response OnClick (
+ WorkOrderType selection
+) id:Response_ListWorkOrderType_MenuEdit_OnClick
+{
+ #keys: '[414702.0.148314929]'
+ CanBindMultiple: false
+ DefinitionID => /ListWorkOrderType/Responsedef_ListWorkOrderType_WebMenu_OnClick
+ Initiator: 'MenuEdit'
+ QuillAction
+ {
+ Body:
+ [*
+ dlg := construct( DialogCreateEditWorkOrderType );
+ dlg.Edit( selection );
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormWorkOrderType/Response_ListWorkOrderType_MenuSelectAll_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormWorkOrderType/Response_ListWorkOrderType_MenuSelectAll_OnClick.def
new file mode 100644
index 0000000..71dd8bd
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormWorkOrderType/Response_ListWorkOrderType_MenuSelectAll_OnClick.def
@@ -0,0 +1,17 @@
+Quintiq file version 2.0
+#parent: ListWorkOrderType
+Response OnClick () id:Response_ListWorkOrderType_MenuSelectAll_OnClick
+{
+ #keys: '[414702.0.147527888]'
+ CanBindMultiple: false
+ DefinitionID => /ListWorkOrderType/Responsedef_ListWorkOrderType_WebMenu_OnClick
+ Initiator: 'MenuSelectAll'
+ QuillAction
+ {
+ Body:
+ [*
+ this.SelectAll();
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormWorkOrderType/_ROOT_Component_FormWorkOrderType.def b/_Main/UI/MacroPlannerWebApp/Component_FormWorkOrderType/_ROOT_Component_FormWorkOrderType.def
new file mode 100644
index 0000000..93e4dc2
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormWorkOrderType/_ROOT_Component_FormWorkOrderType.def
@@ -0,0 +1,17 @@
+Quintiq file version 2.0
+#root
+#parent: MacroPlannerWebApp
+OrphanComponent FormWorkOrderType
+{
+ #keys: '[414702.0.144971495]'
+ BaseType: 'WebForm'
+ Children:
+ [
+ #child: ListWorkOrderType
+ ]
+ Properties:
+ [
+ Image: 'HOUSE'
+ Title: '宸ュ崟绫诲瀷缁存姢'
+ ]
+}
diff --git "a/_Main/UI/MacroPlannerWebApp/Views/\345\241\253\344\272\247\346\226\271\346\241\210\345\210\227\350\241\250.vw" "b/_Main/UI/MacroPlannerWebApp/Views/\345\241\253\344\272\247\346\226\271\346\241\210\345\210\227\350\241\250.vw"
new file mode 100644
index 0000000..da19691
--- /dev/null
+++ "b/_Main/UI/MacroPlannerWebApp/Views/\345\241\253\344\272\247\346\226\271\346\241\210\345\210\227\350\241\250.vw"
@@ -0,0 +1,194 @@
+Quintiq file version 2.0
+{
+ viewcontents
+ {
+ forms
+ {
+ form_FormFillingScheme
+ {
+ title: 'QTIANMA_JITUAN::FormFillingScheme'
+ shown: true
+ componentID: 'QTIANMA_JITUAN::FormFillingScheme'
+ layout
+ {
+ mode: 'open'
+ rowPosition: 1
+ rowSpan: 6
+ columnPosition: 1
+ columnSpan: 4
+ }
+ components
+ {
+ FormFillingScheme_ListFillingScheme
+ {
+ }
+ FormFillingScheme_DataSetLevelFillingScheme
+ {
+ groupDepth: -1
+ column_SchemeName
+ {
+ columnId: 'SchemeName'
+ dataPath: 'SchemeName'
+ dataType: 'string'
+ index: 0
+ subtotals: ''
+ width: 150
+ }
+ column_BusinessType
+ {
+ columnId: 'BusinessType'
+ dataPath: 'BusinessType'
+ dataType: 'string'
+ index: 1
+ subtotals: ''
+ width: 150
+ }
+ column_SalesSegmentName
+ {
+ columnId: 'SalesSegmentName'
+ dataPath: 'SalesSegmentName'
+ dataType: 'string'
+ index: 2
+ subtotals: ''
+ width: 150
+ }
+ column_Customer
+ {
+ columnId: 'Customer'
+ dataPath: 'Customer'
+ dataType: 'string'
+ index: 3
+ subtotals: ''
+ width: 150
+ }
+ column_SchemeDate
+ {
+ columnId: 'SchemeDate'
+ dataPath: 'SchemeDate'
+ dataType: 'date'
+ index: 4
+ subtotals: ''
+ width: 150
+ }
+ }
+ }
+ }
+ form_FormFillingSchemeDetail
+ {
+ title: 'QTIANMA_JITUAN::FormFillingSchemeDetail'
+ shown: true
+ componentID: 'QTIANMA_JITUAN::FormFillingSchemeDetail'
+ layout
+ {
+ mode: 'open'
+ rowPosition: 1
+ rowSpan: 6
+ columnPosition: 5
+ columnSpan: 4
+ }
+ components
+ {
+ FormFillingSchemeDetail_ListFillingSchemeDetail
+ {
+ }
+ FormFillingSchemeDetail_DataSetLevelFillingSchemeDetail
+ {
+ groupDepth: -1
+ column_VerNo
+ {
+ columnId: 'VerNo'
+ dataPath: 'VerNo'
+ dataType: 'string'
+ index: 0
+ subtotals: ''
+ width: 150
+ }
+ column_BusinessType
+ {
+ columnId: 'BusinessType'
+ dataPath: 'BusinessType'
+ dataType: 'string'
+ index: 1
+ subtotals: ''
+ width: 150
+ }
+ }
+ }
+ }
+ form_FormPriorities
+ {
+ title: 'Priorities'
+ shown: true
+ componentID: 'FormPriorities'
+ layout
+ {
+ mode: 'dockright'
+ index: 0
+ }
+ components
+ {
+ FormPriorities_ListPriority
+ {
+ }
+ FormPriorities_DataSetLevelPriority
+ {
+ groupDepth: -1
+ column_All_constraints
+ {
+ columnId: 'All constraints'
+ dataPath: 'All constraints'
+ dataType: 'string'
+ title: 'All constraints'
+ index: 0
+ subtotals: ''
+ width: 33
+ }
+ column_ImgHasSalesDemand
+ {
+ columnId: 'ImgHasSalesDemand'
+ dataPath: 'ImgHasSalesDemand'
+ dataType: 'string'
+ title: 'ImgHasSalesDemand'
+ index: 1
+ subtotals: ''
+ width: 30
+ }
+ column_Name
+ {
+ columnId: 'Name'
+ dataPath: 'Name'
+ dataType: 'string'
+ title: '鍚嶇О'
+ index: 2
+ subtotals: ''
+ width: 95
+ }
+ column_Weight
+ {
+ columnId: 'Weight'
+ dataPath: 'Weight'
+ dataType: 'real'
+ title: '鏉冮噸'
+ index: 3
+ subtotals: ''
+ width: 95
+ }
+ }
+ }
+ }
+ }
+ userconfigurableinformation
+ {
+ }
+ image: ''
+ page: ''
+ group: ''
+ index: 0
+ description: ''
+ }
+ formatversion: 2
+ id: '濉骇鏂规鍒楄〃'
+ name: 'FillingCapacitySchemeList'
+ isglobal: false
+ isroot: true
+}
diff --git a/_Main/UI/MacroPlannerWebApp/_ROOT_Project_MacroPlannerWebApp.qp b/_Main/UI/MacroPlannerWebApp/_ROOT_Project_MacroPlannerWebApp.qp
index cb94597..27e4778 100644
--- a/_Main/UI/MacroPlannerWebApp/_ROOT_Project_MacroPlannerWebApp.qp
+++ b/_Main/UI/MacroPlannerWebApp/_ROOT_Project_MacroPlannerWebApp.qp
@@ -5,7 +5,7 @@
ProjectProperties
{
ApplicationComponentName: 'ApplicationMacroPlanner'
- BuildVersion: '2022.3.0.32'
+ BuildVersion: '2022.3.0.52'
Description: 'Quintiq Macro Planner'
ProjectKind: 'WebClient'
}
diff --git a/_var/_Main/ModelSettings/Common/Dev-21/_ROOT_Role_Dev-21.properties b/_var/_Main/ModelSettings/Common/Dev-21/_ROOT_Role_Dev-21.properties
new file mode 100644
index 0000000..5bf9674
--- /dev/null
+++ b/_var/_Main/ModelSettings/Common/Dev-21/_ROOT_Role_Dev-21.properties
@@ -0,0 +1,532 @@
+#The properties belonging to _meta and _self groups are reserved. Please do not change them. Comments on these properties will not be preserved.
+_meta.application=server
+_meta.kind=Quintiq Property File
+_meta.type=model
+_meta.version.config=1.3
+_self.configsettype=Role
+_self.description=IT
+_self.name=Dev-21
+domainmodel.ediremotedatasourcedefinition.remotestorage.destination=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.destination.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.destination.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.destination.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.exportcim=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.exportcim.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.exportcim.maxcolumnnamelength=0
+domainmodel.ediremotedatasourcedefinition.remotestorage.exportcim.maxtablenamelength=0
+domainmodel.ediremotedatasourcedefinition.remotestorage.exportcim.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.exportcim.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.importcim=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.importcim.connection=DBODBC1
+domainmodel.ediremotedatasourcedefinition.remotestorage.importcim.maxcolumnnamelength=0
+domainmodel.ediremotedatasourcedefinition.remotestorage.importcim.maxtablenamelength=0
+domainmodel.ediremotedatasourcedefinition.remotestorage.importcim.parameters=/datasource=CIM_Carco /owner=dbo /user=quintiq
+domainmodel.ediremotedatasourcedefinition.remotestorage.importcim.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputcampaignsfromexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputcampaignsfromexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputcampaignsfromexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputcampaignsfromexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputcurrenciesfromexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputcurrenciesfromexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputcurrenciesfromexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputcurrenciesfromexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputcurrenciesfrommodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputcurrenciesfrommodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputcurrenciesfrommodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputcurrenciesfrommodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputentitycostsfromexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputentitycostsfromexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputentitycostsfromexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputentitycostsfromexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputentitycostsfrommodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputentitycostsfrommodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputentitycostsfrommodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputentitycostsfrommodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputglobalparametersfromexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputglobalparametersfromexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputglobalparametersfromexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputglobalparametersfromexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputglobalparametersfrommodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputglobalparametersfrommodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputglobalparametersfrommodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputglobalparametersfrommodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputgroupsfromexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputgroupsfromexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputgroupsfromexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputgroupsfromexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputgroupsfrommodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputgroupsfrommodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputgroupsfrommodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputgroupsfrommodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputinventoryspecificationsfromexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputinventoryspecificationsfromexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputinventoryspecificationsfromexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputinventoryspecificationsfromexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputinventoryspecificationsfrommodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputinventoryspecificationsfrommodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputinventoryspecificationsfrommodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputinventoryspecificationsfrommodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputinventorysuppliesfromexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputinventorysuppliesfromexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputinventorysuppliesfromexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputinventorysuppliesfromexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputinventorysuppliesfrommodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputinventorysuppliesfrommodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputinventorysuppliesfrommodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputinventorysuppliesfrommodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputlanesfromexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputlanesfromexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputlanesfromexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputlanesfromexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputlanesfrommodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputlanesfrommodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputlanesfrommodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputlanesfrommodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputperioddefinitionsfromexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputperioddefinitionsfromexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputperioddefinitionsfromexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputperioddefinitionsfromexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputpostponementsandfulfillmentsfromexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputpostponementsandfulfillmentsfromexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputpostponementsandfulfillmentsfromexcel.maxcolumnnamelength=0
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputpostponementsandfulfillmentsfromexcel.maxtablenamelength=0
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputpostponementsandfulfillmentsfromexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputpostponementsandfulfillmentsfromexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputprioritiesfromexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputprioritiesfromexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputprioritiesfromexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputprioritiesfromexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputprioritiesfrommodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputprioritiesfrommodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputprioritiesfrommodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputprioritiesfrommodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputproductsfromexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputproductsfromexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputproductsfromexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputproductsfromexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputproductsfrommodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputproductsfrommodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputproductsfrommodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputproductsfrommodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputrecipesfromexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputrecipesfromexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputrecipesfromexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputrecipesfromexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputroutingsfromexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputroutingsfromexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputroutingsfromexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputroutingsfromexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputroutingsfrommodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputroutingsfrommodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputroutingsfrommodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputroutingsfrommodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputsalesdemandsfromexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputsalesdemandsfromexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputsalesdemandsfromexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputsalesdemandsfromexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputsalesdemandsfrommodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputsalesdemandsfrommodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputsalesdemandsfrommodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputsalesdemandsfrommodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputsalessegmentsfromexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputsalessegmentsfromexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputsalessegmentsfromexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputsalessegmentsfromexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputsalessegmentsfrommodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputsalessegmentsfrommodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputsalessegmentsfrommodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputsalessegmentsfrommodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputshiftpatternsfromexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputshiftpatternsfromexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputshiftpatternsfromexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputshiftpatternsfromexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputshiftpatternsfrommodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputshiftpatternsfrommodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputshiftpatternsfrommodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputshiftpatternsfrommodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputstockingpointcapacitiesfromexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputstockingpointcapacitiesfromexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputstockingpointcapacitiesfromexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputstockingpointcapacitiesfromexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputstockingpointcapacitiesfrommodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputstockingpointcapacitiesfrommodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputstockingpointcapacitiesfrommodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputstockingpointcapacitiesfrommodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputstockingpointsfromexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputstockingpointsfromexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputstockingpointsfromexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputstockingpointsfromexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputstockingpointsfrommodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputstockingpointsfrommodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputstockingpointsfrommodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputstockingpointsfrommodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputsupplyspecificationsfromexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputsupplyspecificationsfromexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputsupplyspecificationsfromexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputsupplyspecificationsfromexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputsupplyspecificationsfrommodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputsupplyspecificationsfrommodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputsupplyspecificationsfrommodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputsupplyspecificationsfrommodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputunitavailabilitiesfromexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputunitavailabilitiesfromexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputunitavailabilitiesfromexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputunitavailabilitiesfromexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputunitavailabilitiesfrommodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputunitavailabilitiesfrommodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputunitavailabilitiesfrommodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputunitavailabilitiesfrommodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputunitcalendarelementsfrommodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputunitcalendarelementsfrommodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputunitcalendarelementsfrommodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputunitcalendarelementsfrommodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputunitcapacitiesfromexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputunitcapacitiesfromexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputunitcapacitiesfromexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputunitcapacitiesfromexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputunitofmeasuresfromexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputunitofmeasuresfromexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputunitofmeasuresfromexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputunitofmeasuresfromexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputunitofmeasuresfrommodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputunitofmeasuresfrommodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputunitofmeasuresfrommodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputunitofmeasuresfrommodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputunitsfromexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputunitsfromexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputunitsfromexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputunitsfromexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputunitsfrommodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputunitsfrommodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputunitsfrommodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.inputunitsfrommodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.localoracle=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.localoracle.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.localoracle.maxcolumnnamelength=0
+domainmodel.ediremotedatasourcedefinition.remotestorage.localoracle.maxtablenamelength=0
+domainmodel.ediremotedatasourcedefinition.remotestorage.localoracle.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.localoracle.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.oracle=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.oracle.connection=dbodbc1
+domainmodel.ediremotedatasourcedefinition.remotestorage.oracle.maxcolumnnamelength=0
+domainmodel.ediremotedatasourcedefinition.remotestorage.oracle.maxtablenamelength=0
+domainmodel.ediremotedatasourcedefinition.remotestorage.oracle.parameters=/datasource=otd /owner=OTD /chardatatypeforstring /characterencoding=UTF-8 /appdatatypeforstring=wchar
+domainmodel.ediremotedatasourcedefinition.remotestorage.oracle.password=1 A205E2668CFBD9365E030C36BB0A4297 730524bf-f9c9-426f-94a0-953687be1178
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputcampaignsfrommodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputcampaignsfrommodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputcampaignsfrommodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputcampaignsfrommodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputcampaignstoexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputcampaignstoexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputcampaignstoexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputcampaignstoexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputcampaignstomodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputcampaignstomodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputcampaignstomodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputcampaignstomodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputcurrenciestoexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputcurrenciestoexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputcurrenciestoexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputcurrenciestoexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputcurrenciestomodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputcurrenciestomodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputcurrenciestomodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputcurrenciestomodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputentitycoststoexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputentitycoststoexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputentitycoststoexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputentitycoststoexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputentitycoststomodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputentitycoststomodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputentitycoststomodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputforecaststoexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputforecaststoexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputforecaststoexcel.maxcolumnnamelength=0
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputforecaststoexcel.maxtablenamelength=0
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputforecaststoexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputforecaststoexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputglobalparameterstomodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputglobalparameterstomodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputglobalparameterstomodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputglobalparameterstomodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputglobalparamterstoexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputglobalparamterstoexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputglobalparamterstoexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputglobalparamterstoexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputgroupstoexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputgroupstoexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputgroupstoexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputgroupstoexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputgroupstomodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputgroupstomodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputgroupstomodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputgroupstomodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputinventoryspecificationstoexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputinventoryspecificationstoexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputinventoryspecificationstoexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputinventoryspecificationstoexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputinventoryspecificationstomodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputinventoryspecificationstomodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputinventoryspecificationstomodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputinventoryspecificationstomodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputinventorysuppliestoexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputinventorysuppliestoexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputinventorysuppliestoexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputinventorysuppliestoexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputinventorysuppliestomodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputinventorysuppliestomodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputinventorysuppliestomodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputinventorysuppliestomodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputlanestoexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputlanestoexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputlanestoexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputlanestoexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputlanestomodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputlanestomodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputlanestomodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputlanestomodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputperioddefinitionsfrommodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputperioddefinitionsfrommodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputperioddefinitionsfrommodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputperioddefinitionsfrommodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputperioddefinitionstoexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputperioddefinitionstoexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputperioddefinitionstoexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputperioddefinitionstoexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputperioddefinitionstomodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputperioddefinitionstomodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputperioddefinitionstomodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputperioddefinitionstomodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputpostponementsandfulfillmentstomodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputpostponementsandfulfillmentstomodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputpostponementsandfulfillmentstomodel.maxcolumnnamelength=0
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputpostponementsandfulfillmentstomodel.maxtablenamelength=0
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputpostponementsandfulfillmentstomodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputpostponementsandfulfillmentstomodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputprioritiestoexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputprioritiestoexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputprioritiestoexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputprioritiestoexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputprioritiestomodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputprioritiestomodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputprioritiestomodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputprioritiestomodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputproductstoexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputproductstoexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputproductstoexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputproductstoexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputproductstomodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputproductstomodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputproductstomodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputproductstomodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputrecipesfrommodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputrecipesfrommodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputrecipesfrommodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputrecipesfrommodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputrecipestoexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputrecipestoexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputrecipestoexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputrecipestoexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputrecipestomodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputrecipestomodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputrecipestomodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputrecipestomodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputroutingstoexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputroutingstoexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputroutingstoexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputroutingstoexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputroutingstomodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputroutingstomodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputroutingstomodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputroutingstomodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputsalesdemandstoexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputsalesdemandstoexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputsalesdemandstoexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputsalesdemandstoexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputsalesdemandstomodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputsalesdemandstomodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputsalesdemandstomodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputsalesdemandstomodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputsalessegmentstoexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputsalessegmentstoexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputsalessegmentstoexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputsalessegmentstoexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputsalessegmentstomodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputsalessegmentstomodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputsalessegmentstomodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputsalessegmentstomodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputshiftpatternstoexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputshiftpatternstoexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputshiftpatternstoexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputshiftpatternstoexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputshiftpatternstomodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputshiftpatternstomodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputshiftpatternstomodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputshiftpatternstomodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputstockingpointcapacitiestoexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputstockingpointcapacitiestoexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputstockingpointcapacitiestoexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputstockingpointcapacitiestoexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputstockingpointcapacitiestomodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputstockingpointcapacitiestomodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputstockingpointcapacitiestomodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputstockingpointcapacitiestomodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputstockingpointstoexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputstockingpointstoexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputstockingpointstoexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputstockingpointstoexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputstockingpointstomodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputstockingpointstomodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputstockingpointstomodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputstockingpointstomodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputsupplyspecificationstoexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputsupplyspecificationstoexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputsupplyspecificationstoexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputsupplyspecificationstoexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputsupplyspecificationstomodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputsupplyspecificationstomodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputsupplyspecificationstomodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputsupplyspecificationstomodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputtransportcapacitiesfrommodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputtransportcapacitiesfrommodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputtransportcapacitiesfrommodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputtransportcapacitiesfrommodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputtransportcapacitiestoexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputtransportcapacitiestoexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputtransportcapacitiestoexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputtransportcapacitiestoexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputunitavailabilitiestoexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputunitavailabilitiestoexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputunitavailabilitiestoexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputunitavailabilitiestoexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputunitavailabilitiestomodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputunitavailabilitiestomodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputunitavailabilitiestomodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputunitavailabilitiestomodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputunitcalendarelementstoexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputunitcalendarelementstoexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputunitcalendarelementstoexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputunitcalendarelementstoexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputunitcapacitiesfrommodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputunitcapacitiesfrommodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputunitcapacitiesfrommodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputunitcapacitiesfrommodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputunitcapacitiestoexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputunitcapacitiestoexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputunitcapacitiestoexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputunitcapacitiestoexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputunitcapacitiestomodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputunitcapacitiestomodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputunitcapacitiestomodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputunitcapacitiestomodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputunitofmeasurestoexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputunitofmeasurestoexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputunitofmeasurestoexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputunitofmeasurestoexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputunitofmeasurestomodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputunitofmeasurestomodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputunitofmeasurestomodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputunitofmeasurestomodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputunitstoexcel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputunitstoexcel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputunitstoexcel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputunitstoexcel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputunitstomodel=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputunitstomodel.connection=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputunitstomodel.parameters=
+domainmodel.ediremotedatasourcedefinition.remotestorage.outputunitstomodel.password=
+domainmodel.ediremotedatasourcedefinition.remotestorage.syncobject=template:domainmodel.ediremotedatasourcedefinition
+domainmodel.ediremotedatasourcedefinition.remotestorage.syncobject.parameters=/datasource=MPERPIntegrationDataSource /owner=dbo /user=quintiq
+domainmodel.fileprovider.qdrive=template:domainmodel.fileprovider.qdrive
+domainmodel.fileprovider.qdrive.enabled=true
+domainmodel.fileprovider.qdrive.readonly=false
+domainmodel.integratorconfig.dsendpoint.q3dspace_3dsendpoint=template:domainmodel.integratorconfig.dsendpoint
+domainmodel.integratorconfig.dsendpoint.q3dspace_3dsendpoint.connectiontimeout=0
+domainmodel.integratorconfig.dsendpoint.q3dspace_3dsendpoint.dspassword=1 D27640F00F09F1085D52409202B71B4E 2a9f48ef-2467-4394-afcb-75e45a1c40d9
+domainmodel.integratorconfig.dsendpoint.q3dspace_3dsendpoint.dsserviceurl=https://vdemopro1342dsy.extranet.3ds.com/3DSpace/resources/v1/model/
+domainmodel.integratorconfig.dsendpoint.q3dspace_3dsendpoint.dsuser=Push
+domainmodel.integratorconfig.dsendpoint.q3dspace_3dsendpoint.maxconnections=10
+domainmodel.integratorconfig.dsendpoint.q3dspace_3dsendpoint.receivecontentcharset=ASCII
+domainmodel.integratorconfig.dsendpoint.q3dspace_3dsendpoint.requesttimeout=60
+domainmodel.integratorconfig.dsendpoint.q3dspace_3dsendpoint.sendingcontentcharset=UTF-8
+domainmodel.integratorconfig.dsendpoint.q3dspace_3dsendpoint.sockettimeout=0
+domainmodel.integratorconfig.dsendpoint.q3dspace_3dsendpoint.trustmanagername=Q3DSpace
+domainmodel.integratorconfig.quintiqendpoint.q3dspace_quintiqendpoint=template:domainmodel.integratorconfig.quintiqendpoint
+domainmodel.integratorconfig.quintiqendpoint.q3dspace_quintiqendpoint.connectiongroupname=SERVER
+domainmodel.integratorconfig.quintiqendpoint.q3dspace_quintiqendpoint.integratorid=Q3DSpace
+domainmodel.integratorconfig.quintiqendpoint.q3dspace_quintiqendpoint.outboundrequesttimeout=60
+domainmodel.mdsstoragedefinitionmanager=template:domainmodel.mdsstoragedefinitionmanager
+domainmodel.mdsstoragedefinitionmanager.audittrailenabled=false
+domainmodel.mdsstoragedefinitionmanager.audittraillocation=
+domainmodel.mdsstoragedefinitionmanager.databaseenabled=false
+domainmodel.mdsstoragedefinitionmanager.datasetstoredatasource=MacroPlanner
+domainmodel.mdsstoragedefinitionmanager.datasetstoreenabled=true
+domainmodel.mdsstoragedefinitionmanager.datasetstoreislocal=false
+domainmodel.mdsstoragedefinitionmanager.dbformat=Legacy
+domainmodel.mdsstoragedefinitionmanager.defaultencryptioncertificate=
+#domainmodel.mdsstoragedefinitionmanager.defaultencryptioncertificate=
+domainmodel.mdsstoragedefinitionmanager.driver=OCI
+domainmodel.mdsstoragedefinitionmanager.dssfilesystemenabled=false
+domainmodel.mdsstoragedefinitionmanager.maxcolumnname=0
+domainmodel.mdsstoragedefinitionmanager.maxtablename=0
+domainmodel.mdsstoragedefinitionmanager.name=dbodbc1
+domainmodel.mdsstoragedefinitionmanager.ociconnectionbasichost=10.110.14.50
+domainmodel.mdsstoragedefinitionmanager.ociconnectionbasicport=1521
+domainmodel.mdsstoragedefinitionmanager.ociconnectionbasicservice=totddb_it
+domainmodel.mdsstoragedefinitionmanager.ociconnectiontnsname=
+domainmodel.mdsstoragedefinitionmanager.ociconnectiontype=Basic
+domainmodel.mdsstoragedefinitionmanager.parameters=/datasource=MacroPlannerInternalDB /user=otdit
+domainmodel.mdsstoragedefinitionmanager.password=1 2A801D084589485925DA39115D5C7855 b91e3007-e230-4ef5-833e-a07edfc8903c
+domainmodel.soapclientinterfacedefinition.interface.libdef_soapclients=template:domainmodel.soapclientinterfacedefinition
+domainmodel.soapclientinterfacedefinition.interface.libdef_soapclients.datasetkind=
+domainmodel.soapclientinterfacedefinition.interface.libdef_soapclients.datasetname=
+domainmodel.soapclientinterfacedefinition.interface.libdef_soapclients.endpoint=
+domainmodel.soapclientinterfacedefinition.interface.libdef_soapclients.groupname=
+domainmodel.soapclientinterfacedefinition.interface.libdef_soapclients.hostname=
+domainmodel.soapclientinterfacedefinition.interface.libdef_soapclients.idescription=
+domainmodel.soapclientinterfacedefinition.interface.libdef_soapclients.password=
+domainmodel.soapclientinterfacedefinition.interface.libdef_soapclients.sslkeystore=
+domainmodel.soapclientinterfacedefinition.interface.libdef_soapclients.timeout=
+domainmodel.soapclientinterfacedefinition.interface.libdef_soapclients.username=
+domainmodel.soapclientinterfacedefinition.interface.sopdsscclientinterfaces=template:domainmodel.soapclientinterfacedefinition
+domainmodel.soapclientinterfacedefinition.interface.sopdsscclientinterfaces.endpoint=
+domainmodel.soapclientinterfacedefinition.interface.sopdsscclientinterfaces.groupname=
+domainmodel.soapclientinterfacedefinition.interface.sopdsscclientinterfaces.idescription=
+domainmodel.soapclientinterfacedefinition.interface.sopdsscclientinterfaces.password=
+domainmodel.soapclientinterfacedefinition.interface.sopdsscclientinterfaces.sslkeystore=
+domainmodel.soapclientinterfacedefinition.interface.sopdsscclientinterfaces.timeout=
+domainmodel.soapclientinterfacedefinition.interface.sopdsscclientinterfaces.username=
+domainmodel.soapclientinterfacedefinition.interface.sopworkflowclients=template:domainmodel.soapclientinterfacedefinition
+domainmodel.soapclientinterfacedefinition.interface.sopworkflowclients.endpoint=
+domainmodel.soapclientinterfacedefinition.interface.sopworkflowclients.groupname=
+domainmodel.soapclientinterfacedefinition.interface.sopworkflowclients.idescription=
+domainmodel.soapclientinterfacedefinition.interface.sopworkflowclients.password=
+domainmodel.soapclientinterfacedefinition.interface.sopworkflowclients.sslkeystore=
+domainmodel.soapclientinterfacedefinition.interface.sopworkflowclients.username=
+domainmodel.soapserverinterfacedefinition.interface.libdef_soapserver=template:domainmodel.soapserverinterfacedefinition
+domainmodel.soapserverinterfacedefinition.interface.libdef_soapserver.groupname=
+domainmodel.soapserverinterfacedefinition.interface.libdef_soapserver.idescription=
+domainmodel.soapserverinterfacedefinition.interface.libdef_soapserver.url=
+domainmodel.soapserverinterfacedefinition.interface.monitoringlibrarysoap=template:domainmodel.soapserverinterfacedefinition
+domainmodel.soapserverinterfacedefinition.interface.monitoringlibrarysoap.encodingstrategy=UseSameAsRequest
+domainmodel.soapserverinterfacedefinition.interface.monitoringlibrarysoap.exporttzoffset=false
+domainmodel.soapserverinterfacedefinition.interface.monitoringlibrarysoap.forssl=false
+domainmodel.soapserverinterfacedefinition.interface.monitoringlibrarysoap.groupname=
+domainmodel.soapserverinterfacedefinition.interface.monitoringlibrarysoap.idescription=
+domainmodel.soapserverinterfacedefinition.interface.monitoringlibrarysoap.securecommunication.protocols=TLSv1,TLSv1.1,TLSv1.2
+domainmodel.soapserverinterfacedefinition.interface.monitoringlibrarysoap.timezone=GMT
+domainmodel.soapserverinterfacedefinition.interface.monitoringlibrarysoap.useoslocaltimezone=true
+domainmodel.soapserverinterfacedefinition.interface.sopdsscserverinterface=template:domainmodel.soapserverinterfacedefinition
+domainmodel.soapserverinterfacedefinition.interface.sopdsscserverinterface.groupname=
+domainmodel.soapserverinterfacedefinition.interface.sopdsscserverinterface.idescription=
+domainmodel.soapserverinterfacedefinition.interface.sopdsscserverinterface.url=
+domainmodel.soapserverinterfacedefinition.interface.sopworkflowserver=template:domainmodel.soapserverinterfacedefinition
+domainmodel.soapserverinterfacedefinition.interface.sopworkflowserver.groupname=
+domainmodel.soapserverinterfacedefinition.interface.sopworkflowserver.idescription=
+domainmodel.soapserverinterfacedefinition.interface.sopworkflowserver.url=
+domainmodel.soapserverinterfacedefinition.interface.utf=template:domainmodel.soapserverinterfacedefinition
+domainmodel.soapserverinterfacedefinition.interface.utf.groupname=
+domainmodel.soapserverinterfacedefinition.interface.utf.idescription=
+user=template:user
+user.increasestartofplanning=false
+user.sizingparameter=false
\ No newline at end of file
diff --git a/_var/_Main/ModelSettings/Common/Development/_ROOT_Role_Development.properties b/_var/_Main/ModelSettings/Common/Development/_ROOT_Role_Development.properties
index 5ecdbaf..0b578d4 100644
--- a/_var/_Main/ModelSettings/Common/Development/_ROOT_Role_Development.properties
+++ b/_var/_Main/ModelSettings/Common/Development/_ROOT_Role_Development.properties
@@ -454,10 +454,50 @@
domainmodel.integratorconfig.dsendpoint.q3dspace_3dsendpoint.sendingcontentcharset=UTF-8
domainmodel.integratorconfig.dsendpoint.q3dspace_3dsendpoint.sockettimeout=0
domainmodel.integratorconfig.dsendpoint.q3dspace_3dsendpoint.trustmanagername=Q3DSpace
+domainmodel.integratorconfig.quintiqendpoint.jtmbrestserver_quintiqendpoint=template:domainmodel.integratorconfig.quintiqendpoint
+domainmodel.integratorconfig.quintiqendpoint.jtmbrestserver_quintiqendpoint.connectiongroupname=SERVER
+domainmodel.integratorconfig.quintiqendpoint.jtmbrestserver_quintiqendpoint.outboundrequesttimeout=60
+domainmodel.integratorconfig.quintiqendpoint.panelmaterialrestserver_quintiqendpoint=template:domainmodel.integratorconfig.quintiqendpoint
+domainmodel.integratorconfig.quintiqendpoint.panelmaterialrestserver_quintiqendpoint.connectiongroupname=SERVER
+domainmodel.integratorconfig.quintiqendpoint.panelmaterialrestserver_quintiqendpoint.outboundrequesttimeout=60
domainmodel.integratorconfig.quintiqendpoint.q3dspace_quintiqendpoint=template:domainmodel.integratorconfig.quintiqendpoint
domainmodel.integratorconfig.quintiqendpoint.q3dspace_quintiqendpoint.connectiongroupname=SERVER
domainmodel.integratorconfig.quintiqendpoint.q3dspace_quintiqendpoint.integratorid=Q3DSpace
domainmodel.integratorconfig.quintiqendpoint.q3dspace_quintiqendpoint.outboundrequesttimeout=60
+domainmodel.integratorconfig.restendpoint.jtmbrestserver_restserver=template:domainmodel.integratorconfig.restendpoint
+domainmodel.integratorconfig.restendpoint.jtmbrestserver_restserver.authenticationparam1=
+domainmodel.integratorconfig.restendpoint.jtmbrestserver_restserver.authenticationparam2=
+domainmodel.integratorconfig.restendpoint.jtmbrestserver_restserver.authenticationtype=None
+domainmodel.integratorconfig.restendpoint.jtmbrestserver_restserver.connectiontimeout=0
+domainmodel.integratorconfig.restendpoint.jtmbrestserver_restserver.contenttype=JSON
+domainmodel.integratorconfig.restendpoint.jtmbrestserver_restserver.enablehttpmessagelogging=true
+domainmodel.integratorconfig.restendpoint.jtmbrestserver_restserver.includerawcontent=false
+domainmodel.integratorconfig.restendpoint.jtmbrestserver_restserver.maxconnections=10
+domainmodel.integratorconfig.restendpoint.jtmbrestserver_restserver.passonvalidationerrors=false
+domainmodel.integratorconfig.restendpoint.jtmbrestserver_restserver.portnumber=8080
+domainmodel.integratorconfig.restendpoint.jtmbrestserver_restserver.proxyportnumber=0
+domainmodel.integratorconfig.restendpoint.jtmbrestserver_restserver.receivecontentcharset=ASCII
+domainmodel.integratorconfig.restendpoint.jtmbrestserver_restserver.requesttimeout=60
+domainmodel.integratorconfig.restendpoint.jtmbrestserver_restserver.restschemaurl="C:\\Users\\hongjli\\Desktop\\integratorrestexample\\openapi.yaml"
+domainmodel.integratorconfig.restendpoint.jtmbrestserver_restserver.sendingcontentcharset=utf-8
+domainmodel.integratorconfig.restendpoint.jtmbrestserver_restserver.sockettimeout=0
+domainmodel.integratorconfig.restendpoint.panelmaterialrestserver_restendpointpanelmaterial=template:domainmodel.integratorconfig.restendpoint
+domainmodel.integratorconfig.restendpoint.panelmaterialrestserver_restendpointpanelmaterial.authenticationparam1=
+domainmodel.integratorconfig.restendpoint.panelmaterialrestserver_restendpointpanelmaterial.authenticationparam2=
+domainmodel.integratorconfig.restendpoint.panelmaterialrestserver_restendpointpanelmaterial.authenticationtype=None
+domainmodel.integratorconfig.restendpoint.panelmaterialrestserver_restendpointpanelmaterial.connectiontimeout=0
+domainmodel.integratorconfig.restendpoint.panelmaterialrestserver_restendpointpanelmaterial.contenttype=JSON
+domainmodel.integratorconfig.restendpoint.panelmaterialrestserver_restendpointpanelmaterial.enablehttpmessagelogging=false
+domainmodel.integratorconfig.restendpoint.panelmaterialrestserver_restendpointpanelmaterial.includerawcontent=false
+domainmodel.integratorconfig.restendpoint.panelmaterialrestserver_restendpointpanelmaterial.maxconnections=10
+domainmodel.integratorconfig.restendpoint.panelmaterialrestserver_restendpointpanelmaterial.passonvalidationerrors=false
+domainmodel.integratorconfig.restendpoint.panelmaterialrestserver_restendpointpanelmaterial.portnumber=8080
+domainmodel.integratorconfig.restendpoint.panelmaterialrestserver_restendpointpanelmaterial.proxyportnumber=0
+domainmodel.integratorconfig.restendpoint.panelmaterialrestserver_restendpointpanelmaterial.receivecontentcharset=ASCII
+domainmodel.integratorconfig.restendpoint.panelmaterialrestserver_restendpointpanelmaterial.requesttimeout=60
+domainmodel.integratorconfig.restendpoint.panelmaterialrestserver_restendpointpanelmaterial.restschemaurl="C:\\Users\\hongjli\\Desktop\\integratorrestexample\\openapi.yaml"
+domainmodel.integratorconfig.restendpoint.panelmaterialrestserver_restendpointpanelmaterial.sendingcontentcharset=utf-8
+domainmodel.integratorconfig.restendpoint.panelmaterialrestserver_restendpointpanelmaterial.sockettimeout=0
domainmodel.mdsstoragedefinitionmanager=template:domainmodel.mdsstoragedefinitionmanager
domainmodel.mdsstoragedefinitionmanager.audittrailenabled=false
domainmodel.mdsstoragedefinitionmanager.audittraillocation=
@@ -475,11 +515,11 @@
domainmodel.mdsstoragedefinitionmanager.name=dbodbc1
domainmodel.mdsstoragedefinitionmanager.ociconnectionbasichost=10.110.14.50
domainmodel.mdsstoragedefinitionmanager.ociconnectionbasicport=1521
-domainmodel.mdsstoragedefinitionmanager.ociconnectionbasicservice=totddb
+domainmodel.mdsstoragedefinitionmanager.ociconnectionbasicservice=totddb_jtmb
domainmodel.mdsstoragedefinitionmanager.ociconnectiontnsname=totddb
domainmodel.mdsstoragedefinitionmanager.ociconnectiontype=Basic
-domainmodel.mdsstoragedefinitionmanager.parameters=/datasource=MacroPlannerInternalDB /user=otd
-domainmodel.mdsstoragedefinitionmanager.password=1 65BA9039C6C6A82BFEAA7408A8F96867 d5a0fc9a-a372-4807-9f03-34bcf85e582d
+domainmodel.mdsstoragedefinitionmanager.parameters=/datasource=MacroPlannerInternalDB /user=OTDJTMBUSER
+domainmodel.mdsstoragedefinitionmanager.password=1 463752FBAC1C9172263ADBF875F4CBF3 d5a0fc9a-a372-4807-9f03-34bcf85e582d
domainmodel.soapclientinterfacedefinition.interface.libdef_soapclients=template:domainmodel.soapclientinterfacedefinition
domainmodel.soapclientinterfacedefinition.interface.libdef_soapclients.datasetkind=
domainmodel.soapclientinterfacedefinition.interface.libdef_soapclients.datasetname=
diff --git "a/_var/_Main/ProjSettings/MacroPlannerWebApp/Views/\345\241\253\344\272\247\346\226\271\346\241\210\345\210\227\350\241\250.vw" "b/_var/_Main/ProjSettings/MacroPlannerWebApp/Views/\345\241\253\344\272\247\346\226\271\346\241\210\345\210\227\350\241\250.vw"
new file mode 100644
index 0000000..b90401b
--- /dev/null
+++ "b/_var/_Main/ProjSettings/MacroPlannerWebApp/Views/\345\241\253\344\272\247\346\226\271\346\241\210\345\210\227\350\241\250.vw"
@@ -0,0 +1,11 @@
+Quintiq file version 2.0
+{
+ viewcontents
+ {
+ }
+ formatversion: 2
+ id: '濉骇鏂规鍒楄〃'
+ name: 'FillingCapacitySchemeList'
+ isglobal: false
+ isroot: false
+}
--
Gitblit v1.9.3