xiaoding721
2023-11-07 879b0d420555704579c76cf3234c61010539d6fc
Merge branch 'dev' into dev_lrs
已修改39个文件
已添加201个文件
已删除11个文件
7606 ■■■■ 文件已修改
_Main/BL/EDI/Broker_GlobalOTDTable_AnnualBudgetData.qbl 80 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/EDI/Broker_GlobalOTDTable_Operation.qbl 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/EDI/Broker_GlobalOTDTable_SummaryOfInboundTransaction.qbl 127 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Relations/Relation_CapacityAndSaleBudgeRunStatus_GlobalOTDSOP_GlobalOTDSOP_CapacityAnd.qbl 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Relations/Relation_Global_MappingSummaryOfInboundTransaction_GlobalOTDTable_GlobalOTDT.qbl 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Relations/Relation_ModulePanelCorrespondence_GlobalOTDSOP_GlobalOTDSOP_ModulePanelCorr.qbl 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Relations/Relation_ModulePanelCorrespondence_Panel_ModulePanelCorrespondence_Module.qbl 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Relations/Relation_PeggingProductInStockingPoint_MP_PeggingProduct_MP_PeggingProduct_M.qbl 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Relations/Relation_PeggingResultProductInStockingPoint_MP_AllChild_PeggingResultProduc.qbl 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Relations/Relation_PeggingResultProductInStockingPoint_MP_Child_PeggingResultProductIn.qbl 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Relations/Relation_PeggingResultProductInStockingPoint_MP_PeggingProductInStockingPoin.qbl 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Relations/Relation_SummaryOfInboundTransaction_GlobalOTDSOP_GlobalOTDSOP_SummaryOfInbo.qbl 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeChartElement/StaticMethod_Create.qbl 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeChartElement/StaticMethod_CreateData.qbl 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeChartElement/StaticMethod_CreateDataByHalfAYear.qbl 42 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeChartElement/StaticMethod_CreateDataByMonth.qbl 42 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeChartElement/StaticMethod_CreateDataByQuarter.qbl 45 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeChartElement/StaticMethod_CreateDataByYear.qbl 38 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeChartElement/StaticMethod_FilterCalculationRows.qbl 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeChartElement/StaticMethod_GetQuantity.qbl 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeChartElement/StaticMethod_SelectGenerateChartRows.qbl 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeCompareItemCell/StaticMethod_CreateData.qbl 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeCompareItemCell/StaticMethod_CreatePanelAllocation.qbl 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeCompareItemCell/StaticMethod_CreatePanelAllocationDataForBudget.qbl 48 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeCompareItemCell/StaticMethod_CreatePanelAllocationDataForScenario.qbl 42 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeCompareItemCell/StaticMethod_CreateSalesVolumeData.qbl 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeCompareItemCell/StaticMethod_CreateSalesVolumeDataForBudget.qbl 49 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeCompareItemCell/StaticMethod_CreateSalesVolumeDataForScenario.qbl 47 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeCompareItemCell/StaticMethod_ExecuteAsyncCapacityAndSaleBudgeCompare.qbl 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeCompareItemCell/StaticMethod_GenerateBasicDataBasedOnFilteringCriteria.qbl 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeCompareItemCell/StaticMethod_GetAnnualSalesQuantity.qbl 62 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeCompareItemCell/StaticMethod_GetPanelAllocationQuantity.qbl 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeCompareItemCell/StaticMethod_GetPanelAllocationQuantityForBudget.qbl 62 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeCompareItemCell/StaticMethod_SetFilterCriteria.qbl 38 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeCompareItemColumn/Attribute_ColumnType.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeCompareItemColumn/Attribute_Month.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeCompareItemColumn/Attribute_ScenarioName.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeCompareItemColumn/Attribute_Year.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeFilterBusinessType/StaticMethod_InitializedData.qbl 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeFilterPlaceOfProductionOfArray/StaticMethod_InitializedData.qbl 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeRunStatus/Attribute_RunSataus.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeRunStatus/_ROOT_Type_CapacityAndSaleBudgeRunStatus.qbl 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_GlobalDTOTable/Method_CreateCapacityAndSaleBudgeTestData#500.qbl 74 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_GlobalDTOTable/Method_InitTestData#12.qbl 40 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_GlobalDTOTable/Method_InitTestData.qbl 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_GlobalDTOTable/Method_InitTestDataByYear.qbl 83 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_GlobalDTOTable/Method_OnAsyncExecuteFailure_GlobalOTDTable_AnnualBudgetData.qbl 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_GlobalDTOTable/Method_OnAsyncExecuteFailure_GlobalOTDTable_SummaryOfInboundTransaction.qbl 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_GlobalDTOTable/Method_OnAsyncExecute_GlobalOTDTable_AnnualBudgetData.qbl 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_GlobalDTOTable/Method_OnAsyncExecute_GlobalOTDTable_SummaryOfInboundTransaction.qbl 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_GlobalDTOTable/Method_SynchronizationAllMappingBrokerAndAPIByOption.qbl 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_GlobalDTOTable/Method_SynchronizeDataToMacroPlan#127.qbl 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_GlobalOTDSOP/Method_AsyncCapacityAndSaleBudgeCompare.qbl 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_GlobalOTDSOP/Method_CapacityAndSaleBudgeChart.qbl 265 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_GlobalOTDSOP/Method_CapacityAndSaleBudgeCompare.qbl 95 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_GlobalOTDSOP/Method_SetCapacityAndSaleBudgeRunStatus.qbl 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_GlobalOTDSOP/StaticMethod_Test.qbl 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_Global_MappingAnnualBudgetData/StaticMethod_CreateData.qbl 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_Global_MappingAnnualBudgetData/StaticMethod_SynchronizeInterfaceData.qbl 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_Global_MappingAnnualBudgetReview/Attribute_Item.qbl 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_Global_MappingAnnualBudgetReview/Attribute_OrganCode.qbl 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_Global_MappingAnnualBudgetReview/Attribute_OrganName.qbl 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_Global_MappingAnnualBudgetReview/Attribute_PlantName.qbl 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_Global_MappingAnnualBudgetReview/Attribute_TransactionDate.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_Global_MappingAnnualBudgetReview/Attribute_TransactionQTY.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_Global_MappingAnnualBudgetReview/StaticMethod_SynchronizeInterfaceData.qbl 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_Global_MappingAnnualBudgetReview/TypeIndex_Global_MappingSummaryOfInboundTransactionTypeIndex.qbl 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_Global_MappingAnnualBudgetReview/_ROOT_Type_Global_MappingSummaryOfInboundTransaction.qbl 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_Global_MappingCurrency_MP/StaticMethod_CreateByAPI.qbl 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MacroPlan/StaticMethod_DoASync#253.qbl 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ModulePanelCorrespondence/Attribute_IsModule.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ModulePanelCorrespondence/Attribute_ModuleProductID.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ModulePanelCorrespondence/Attribute_ModuleStockingPointID.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ModulePanelCorrespondence/Attribute_PanelProductID.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ModulePanelCorrespondence/Attribute_PanelStockingPointID.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ModulePanelCorrespondence/StaticMethod_CreateModule.qbl 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ModulePanelCorrespondence/StaticMethod_CreatePanel.qbl 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ModulePanelCorrespondence/StaticMethod_DeleteModule.qbl 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ModulePanelCorrespondence/StaticMethod_DeletePanel.qbl 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ModulePanelCorrespondence/StaticMethod_PullCapacityAllocationRule.qbl 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ModulePanelCorrespondence/_ROOT_Type_ModulePanelCorrespondence.qbl 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PeggingProductInStockingPoint_MP/Attribute_ProductID.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PeggingProductInStockingPoint_MP/Attribute_StartDate.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PeggingProductInStockingPoint_MP/Attribute_StockingPointID.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PeggingProductInStockingPoint_MP/_ROOT_Type_PeggingProductInStockingPoint_MP.qbl 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PeggingProduct_MP/StaticMethod_Create.qbl 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PeggingProduct_MP/StaticMethod_CreateData.qbl 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PeggingProduct_MP/StaticMethod_CreateDataForProductInStocking_MP.qbl 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PeggingProduct_MP/StaticMethod_CreateDataForSalesDemandBase.qbl 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PeggingResult/StaticMethod_CreateAllGroupChildRelation.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PeggingResult/StaticMethod_CreateData.qbl 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PeggingResult/StaticMethod_GenerateNewSupply.qbl 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PeggingResult/StaticMethod_SetAllChildRelation1#809.qbl 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PeggingResult/StaticMethod_SetAllChildRelation1.qbl 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PeggingResultGroup/_ROOT_Type_PeggingResultGroup.qbl 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PeggingResultProductInStockingPoint_MP/Attribute_ActualFulfillmentQuantity.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PeggingResultProductInStockingPoint_MP/Attribute_FulfillmentQuantity.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PeggingResultProductInStockingPoint_MP/Attribute_NumberOfPlies.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PeggingResultProductInStockingPoint_MP/Attribute_ProductID.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PeggingResultProductInStockingPoint_MP/Attribute_StartDate.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PeggingResultProductInStockingPoint_MP/Attribute_StockingPointID.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PeggingResultProductInStockingPoint_MP/Attribute_SupplyQuantity.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PeggingResultProductInStockingPoint_MP/Attribute_SupplyType.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PeggingResultProductInStockingPoint_MP/Attribute_UnitOfMeasurementName.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PeggingResultProductInStockingPoint_MP/StaticMethod_Create.qbl 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PeggingResultProductInStockingPoint_MP/StaticMethod_CreateAllChildRelation.qbl 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PeggingResultProductInStockingPoint_MP/StaticMethod_CreateData.qbl 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PeggingResultProductInStockingPoint_MP/StaticMethod_GenerateInventorySupply.qbl 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PeggingResultProductInStockingPoint_MP/StaticMethod_GenerateNewSupply.qbl 70 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PeggingResultProductInStockingPoint_MP/StaticMethod_GeneratePeggingResult.qbl 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PeggingResultProductInStockingPoint_MP/StaticMethod_SetAllChildRelation.qbl 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PeggingResultProductInStockingPoint_MP/StaticMethod_SetParentChildRelationship.qbl 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PeggingResultProductInStockingPoint_MP/_ROOT_Type_PeggingResultProductInStockingPoint_MP.qbl 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_SummaryOfInboundTransaction/Attribute_Item.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_SummaryOfInboundTransaction/Attribute_OrganCode.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_SummaryOfInboundTransaction/Attribute_OrganName.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_SummaryOfInboundTransaction/Attribute_PlantName.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_SummaryOfInboundTransaction/Attribute_Total1.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_SummaryOfInboundTransaction/Attribute_Total10.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_SummaryOfInboundTransaction/Attribute_Total11.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_SummaryOfInboundTransaction/Attribute_Total12.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_SummaryOfInboundTransaction/Attribute_Total2.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_SummaryOfInboundTransaction/Attribute_Total3.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_SummaryOfInboundTransaction/Attribute_Total4.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_SummaryOfInboundTransaction/Attribute_Total5.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_SummaryOfInboundTransaction/Attribute_Total6.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_SummaryOfInboundTransaction/Attribute_Total7.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_SummaryOfInboundTransaction/Attribute_Total8.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_SummaryOfInboundTransaction/Attribute_Total9.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_SummaryOfInboundTransaction/StaticMethod_FlushData.qbl 55 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_SummaryOfInboundTransaction/_ROOT_Type_SummaryOfInboundTransaction.qbl 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_cmTestAttempt.def 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_TIANMA_JITUAN_ActionBarGroupScenarioComparisonViews_ButtonAnnualPro.def 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_TIANMA_JITUAN_cmTestAttempt_mnModulePanelCorrespondence_OnClick.def 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudge/Response_pButton_ButtonCreateData_OnClick.def 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudge/Response_pButton_ButtonGenerateTestData_OnClick#19.def 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeChart/Component_ChartCapacityAndSaleBudgeChart.def 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeChart/Response_pFilterCriteria_ButtonCapacityAndSaleBudgeChartTest_OnClick#603.def 27 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeCompare/Component_pButton.def 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeCompare/Method_CreateCapacityAndSaleBudgeCompareData.def 40 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeCompare/Response_dhStatus_OnDataChanged.def 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeCompare/Response_pButton_ButtonCapacityAndSaleBudgeCompare_OnClick#231.def 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeCompare/_ROOT_Component_FormCapacityAndSaleBudgeCompare.def 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeFilterItem/Response_OnCreated.def 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeFilterMonth/Response_OnCreated.def 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeFilterYear/Response_OnCreated.def 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Component_PanelInterfaceGlobal_BrokerExecuteLog#981.def 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Component_PanelInterfaceOption5.def 35 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Component_PanelInterfaceTest.def 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Response_PanelInterfaceTest_ButtonPullInterfaceDataToIntermediateTable_OnCli.def 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/_ROOT_Component_FormInterfaceTest.def 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormModulePanelCorrespondence/Component_ListModuleCorrespondence.def 42 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormModulePanelCorrespondence/Component_ListModulePanelCorrespondence#612.def 75 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormModulePanelCorrespondence/Component_Panel655.def 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormModulePanelCorrespondence/Component_PanelModule.def 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormModulePanelCorrespondence/Component_PanelModule116.def 48 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormModulePanelCorrespondence/Component_PanelPanel.def 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormModulePanelCorrespondence/Component_listActionBarPageModuleCorrespondence.def 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormModulePanelCorrespondence/Component_listActionBarPageModulePanelCorrespondence#1.def 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormModulePanelCorrespondence/Component_listContextMenuModuleCorrespondence.def 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormModulePanelCorrespondence/Component_listContextMenuModulePanelCorrespondence#1.def 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormModulePanelCorrespondence/Response_ListModulePanelCorrespondence_612_MenuSelectAll_OnClick.def 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormModulePanelCorrespondence/Response_ListModulePanelCorrespondence_612_bAddPanel_OnClick.def 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormModulePanelCorrespondence/Response_ListModulePanelCorrespondence_612_bDeletePanel_OnClick.def 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormModulePanelCorrespondence/Response_PanelModule116_bAddModule_OnClick#61.def 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormModulePanelCorrespondence/Response_PanelModule116_bDeleteModule_OnClick#462.def 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormModulePanelCorrespondence/Response_PanelModule116_bPullCapacityAllocationRule_OnClick.def 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormModulePanelCorrespondence/_ROOT_Component_FormModulePanelCorrespondence.def 44 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingAllResult/Component_ListPeggingAllResult.def 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingProductInSalesDemandBase/Component_ListPeggingProductInSalesDemandBase#886.def 60 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingProductInSalesDemandBase/Component_ListPeggingProductInSalesDemandBase.def 60 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingProductInSalesDemandBase/Component_ListStockingPoint.def 42 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingProductInSalesDemandBase/Component_PanelContent.def 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingProductInSalesDemandBase/Component_PanelSalesDemand.def 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingProductInSalesDemandBase/Component_PanelStockingPoint.def 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingProductInSalesDemandBase/Component_listActionBarPagePeggingProductInSalesDemandBase#1.def 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingProductInSalesDemandBase/Component_listActionBarPagePeggingProductInSalesDemandBase.def 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingProductInSalesDemandBase/Component_listActionBarPageStockingPoint.def 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingProductInSalesDemandBase/Component_listContextMenuPeggingProductInSalesDemandBase#1.def 36 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingProductInSalesDemandBase/Component_listContextMenuPeggingProductInSalesDemandBase.def 36 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingProductInSalesDemandBase/Component_listContextMenuStockingPoint.def 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingProductInSalesDemandBase/Response_ListPeggingProductInSalesDemandBase_886_MenuSelectionAll_OnClick.def 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingProductInSalesDemandBase/Response_ListPeggingProductInSalesDemandBase_886_mGeneratePeggingResult_OnCl.def 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingProductInSalesDemandBase/Response_ListPeggingProductInSalesDemandBase_MenuSelectionAll_OnClick.def 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingProductInSalesDemandBase/Response_ListPeggingProductInSalesDemandBase_mGeneratePeggingResult_OnClick.def 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingProductInSalesDemandBase/_ROOT_Component_FormPeggingProductInSalesDemandBase.def 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingProduct_MP/Response_pButton_bCreate_OnClick.def 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_ListPeggingAllResult#103.def 60 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_ListPeggingAllResultProductInStockingPoint_MP.def 42 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_ListPeggingProductInSalesDemandBase.def 60 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_ListPeggingProduct_MP#34.def 59 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_ListPeggingResult.def 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_ListPeggingResultProductInStockingPoint_MP.def 63 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_ListStockingPoint#140.def 60 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_PanelAbove.def 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_PanelBelow.def 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_PanelContent#807.def 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_PanelLeft#865.def 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_PanelPeggingResult570.def 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_PanelRight#520.def 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_PanelSalesDemand#411.def 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_PanelStockingPoint#569.def 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_listActionBarPageBelow.def 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_listActionBarPagePeggingAllResult#1.def 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_listActionBarPagePeggingProductInSalesDemandBase.def 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_listActionBarPagePeggingProduct_MP#1.def 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_listActionBarPagePeggingResult.def 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_listActionBarPageRight.def 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_listActionBarPageStockingPoint#1.def 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_listContextMenuBelow.def 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_listContextMenuPeggingAllResult#1.def 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_listContextMenuPeggingProductInSalesDemandBase.def 36 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_listContextMenuPeggingProduct_MP#1.def 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_listContextMenuPeggingResult.def 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_listContextMenuRight.def 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_listContextMenuStockingPoint#1.def 36 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_pButton#407.def 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Response_ListPeggingAllResult_103_MenuSelectAll_OnClick.def 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Response_ListPeggingProductInSalesDemandBase_MenuSelectionAll508_OnClick.def 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Response_ListPeggingProductInSalesDemandBase_mGeneratePeggingResult_OnClick.def 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Response_ListPeggingProduct_MP_34_MenuSelectionAll852_OnClick.def 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Response_ListPeggingResultProductInStockingPoint_MP_MenuSelectionAll666_OnCl.def 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Response_ListPeggingResult_MenuSelectionAll_OnClick.def 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Response_ListStockingPoint_140_MenuSelectionAll506_OnClick.def 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Response_ListStockingPoint_140_mGeneratePeggingResult266_OnClick.def 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Response_PanelSalesDemand_411_OnActivate.def 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Response_PanelStockingPoint_569_OnActivate.def 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Response_pButton_407_bCreate_OnClick.def 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Response_pButton_407_bRunPeggingAlgorithm_OnClick.def 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/_ROOT_Component_FormPeggingResult.def 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormShowInterfaceData/Component_ListSummaryOfInboundTransaction.def 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormShowInterfaceData/Component_PanelInterfaceDataDisplayContent.def 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormShowInterfaceData/Component_PanelSummaryOfInboundTransaction.def 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormShowInterfaceData/Component_listActionBarPageSummaryOfInboundTransaction.def 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormShowInterfaceData/Component_listContextMenuSummaryOfInboundTransaction.def 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormSummaryOfInboundTransaction/Component_ListSummaryOfInboundTransaction.def 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormSummaryOfInboundTransaction/Component_listActionBarPageSummaryOfInboundTransaction.def 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormSummaryOfInboundTransaction/Component_listContextMenuSummaryOfInboundTransaction.def 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormSummaryOfInboundTransaction/Component_pButton.def 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormSummaryOfInboundTransaction/Response_pButton_bFlushData_OnClick.def 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormSummaryOfInboundTransaction/_ROOT_Component_FormSummaryOfInboundTransaction.def 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormWorkOrderType/Component_ListWorkOrderType713.def 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormWorkOrderType/Component_listActionBarPageWorkOrderType423.def 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormWorkOrderType/Component_listContextMenuWorkOrderType493.def 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormWorkOrderType/_ROOT_Component_FormWorkOrderType.def 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Views/Pegging分析.vw 327 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Views/年度产销复盘.vw 178 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Views/模组_面板关系.vw 194 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_var/_Main/ModelSettings/Common/Live-25/_ROOT_Role_Live-25.properties 575 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_var/_Main/ModelSettings/Common/Live-27/_ROOT_Role_Live-27.properties 575 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_var/_Main/ProjSettings/MacroPlanner/Views/X_分析视图_[414702.1.50321581].vw 525 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/EDI/Broker_GlobalOTDTable_AnnualBudgetData.qbl
@@ -77,7 +77,7 @@
      OthersMayDropTable: true
      OthersMayFlushTable: true
      OthersMayInsertRow: true
      Parameters: '/owner="YUXTEST"'
      Parameters: '/owner="OTD"'
      RecordModificationHintStrategy: 'None'
      EDIODBCLinkColumn BUSINESSSORT
      {
@@ -304,11 +304,6 @@
        OthersMayUpdateColumn: true
        ValueType: String
      }
      EDIODBCLinkColumn PLANTNAME
      {
        OthersMayUpdateColumn: true
        ValueType: String
      }
      EDIODBCLinkColumn PRODUCTID
      {
        OthersMayUpdateColumn: true
@@ -319,17 +314,67 @@
        OthersMayUpdateColumn: true
        ValueType: String
      }
      EDIODBCLinkColumn RESOLUTIONRATIO
      {
        OthersMayUpdateColumn: true
        ValueType: String
      }
      EDIODBCLinkColumn SHIPPINGFORM
      {
        OthersMayUpdateColumn: true
        ValueType: String
      }
      EDIODBCLinkColumn YEARNO
      {
        OthersMayUpdateColumn: true
        ValueType: String
      }
      EDIODBCLinkColumn YIELD1
      {
        OthersMayUpdateColumn: true
        ValueType: String
      }
      EDIODBCLinkColumn YIELD10
      {
        OthersMayUpdateColumn: true
        ValueType: String
      }
      EDIODBCLinkColumn YIELD11
      {
        OthersMayUpdateColumn: true
        ValueType: String
      }
      EDIODBCLinkColumn YIELD12
      {
        OthersMayUpdateColumn: true
        ValueType: String
      }
      EDIODBCLinkColumn YIELD2
      {
        OthersMayUpdateColumn: true
        ValueType: String
      }
      EDIODBCLinkColumn YIELD3
      {
        OthersMayUpdateColumn: true
        ValueType: String
      }
      EDIODBCLinkColumn YIELD4
      {
        OthersMayUpdateColumn: true
        ValueType: String
      }
      EDIODBCLinkColumn YIELD5
      {
        OthersMayUpdateColumn: true
        ValueType: String
      }
      EDIODBCLinkColumn YIELD6
      {
        OthersMayUpdateColumn: true
        ValueType: String
      }
      EDIODBCLinkColumn YIELD7
      {
        OthersMayUpdateColumn: true
        ValueType: String
      }
      EDIODBCLinkColumn YIELD8
      {
        OthersMayUpdateColumn: true
        ValueType: String
      }
      EDIODBCLinkColumn YIELD9
      {
        OthersMayUpdateColumn: true
        ValueType: String
@@ -387,11 +432,8 @@
      EDIColumnMatch { InputColumn: MONTHLYSHEETCAPACITY9 OutputColumn: MonthlySheetCapacity9 }
      EDIColumnMatch { InputColumn: ORGANCODE OutputColumn: OrganCode }
      EDIColumnMatch { InputColumn: ORGANNAME OutputColumn: OrganName }
      EDIColumnMatch { InputColumn: PLANTNAME OutputColumn: PlantName }
      EDIColumnMatch { InputColumn: PRODUCTID OutputColumn: ProductID }
      EDIColumnMatch { InputColumn: PRODUCTLINEANDSPECIFICATION OutputColumn: ProductLineAndSpecification }
      EDIColumnMatch { InputColumn: RESOLUTIONRATIO OutputColumn: ResolutionRatio }
      EDIColumnMatch { InputColumn: SHIPPINGFORM OutputColumn: ShippingForm }
      EDIColumnMatch { InputColumn: YEARNO OutputColumn: YearNo }
    }
  }
_Main/BL/EDI/Broker_GlobalOTDTable_Operation.qbl
@@ -20,10 +20,12 @@
      TypeIndex: GlobalOTDTable_OperationTypeIndex
      EDIMLColumn ActualCapacity { Attribute: ActualCapacity ValueType: Real }
      EDIMLColumn BusinessType { Attribute: BusinessType ValueType: String }
      EDIMLColumn DestinationOrganizationId { Attribute: DestinationOrganizationId ValueType: String }
      EDIMLColumn Line { Attribute: Line ValueType: String }
      EDIMLColumn MaximumQuantity { Attribute: MaximumQuantity ValueType: Number }
      EDIMLColumn MinimumQuantity { Attribute: MinimumQuantity ValueType: Number }
      EDIMLColumn OrganCode { Attribute: OrganCode ValueType: String }
      EDIMLColumn OrganId { Attribute: OrganId ValueType: String }
      EDIMLColumn OrganName { Attribute: OrganName ValueType: String }
      EDIMLColumn PlantName { Attribute: PlantName ValueType: String }
      EDIMLColumn ProcessSection { Attribute: ProcessSection ValueType: String }
@@ -56,6 +58,11 @@
        OthersMayUpdateColumn: true
        ValueType: String
      }
      EDIODBCLinkColumn DESTINATIONORGANIZATIONID
      {
        OthersMayUpdateColumn: true
        ValueType: String
      }
      EDIODBCLinkColumn LINE
      {
        OthersMayUpdateColumn: true
@@ -77,6 +84,11 @@
        ValueType: String
      }
      EDIODBCLinkColumn ORGANNAME
      {
        OthersMayUpdateColumn: true
        ValueType: String
      }
      EDIODBCLinkColumn ORGID
      {
        OthersMayUpdateColumn: true
        ValueType: String
@@ -121,6 +133,7 @@
      OutputTable: Global_MappingOperation
      EDIColumnMatch { InputColumn: ACTUALCAPACITY OutputColumn: ActualCapacity }
      EDIColumnMatch { InputColumn: BUSINESSTYPE OutputColumn: BusinessType }
      EDIColumnMatch { InputColumn: DESTINATIONORGANIZATIONID OutputColumn: DestinationOrganizationId }
      EDIColumnMatch { InputColumn: LINE OutputColumn: Line }
      EDIColumnMatch
      {
@@ -168,6 +181,7 @@
      }
      EDIColumnMatch { InputColumn: ORGANCODE OutputColumn: OrganCode }
      EDIColumnMatch { InputColumn: ORGANNAME OutputColumn: OrganName }
      EDIColumnMatch { InputColumn: ORGID OutputColumn: OrganId }
      EDIColumnMatch { InputColumn: PLANTNAME OutputColumn: PlantName }
      EDIColumnMatch { InputColumn: PROCESSSECTION OutputColumn: ProcessSection }
      EDIColumnMatch { InputColumn: PRODUCTID OutputColumn: ProductID }
_Main/BL/EDI/Broker_GlobalOTDTable_SummaryOfInboundTransaction.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,127 @@
Quintiq file version 2.0
#parent: #root
EDIBroker GlobalOTDTable_SummaryOfInboundTransaction
{
  MDSDefinition: GlobalOTDTable
  TimeZone: 'ACT'
  UseOSTimeZone: false
  EDIModelLink.Destination Destination17
  {
    EDIMLTable Global_MappingSummaryOfInboundTransaction
    {
      PrimaryKeyColumns: Item
      PrimaryKeyColumns: OrganCode
      PrimaryKeyColumns: OrganName
      PrimaryKeyColumns: PlantName
      PrimaryKeyColumns: TransactionDate
      TargetType: Global_MappingSummaryOfInboundTransaction
      TypeIndex: Global_MappingSummaryOfInboundTransactionTypeIndex
      EDIMLColumn Item { Attribute: Item ValueType: String }
      EDIMLColumn OrganCode { Attribute: OrganCode ValueType: String }
      EDIMLColumn OrganName { Attribute: OrganName ValueType: String }
      EDIMLColumn PlantName { Attribute: PlantName ValueType: String }
      EDIMLColumn TransactionDate { Attribute: TransactionDate ValueType: Date }
      EDIMLColumn TransactionQTY { Attribute: TransactionQTY ValueType: Real }
    }
  }
  EDIODBCLink.Source Source16
  {
    DataIntegrityStrategy: 'Disabled'
    SettingsEngineLink: 'domainmodel.ediremotedatasourcedefinition.remotestorage.oracle'
    EDIODBCLinkTable MID_ANNUAL_BUDGET_REVIEW
    {
      OthersMayCreateTable: true
      OthersMayDeleteRow: true
      OthersMayDropTable: true
      OthersMayFlushTable: true
      OthersMayInsertRow: true
      Parameters: '/owner="OTD"'
      RecordModificationHintStrategy: 'None'
      EDIODBCLinkColumn ITEM
      {
        OthersMayUpdateColumn: true
        ValueType: String
      }
      EDIODBCLinkColumn ORGANCODE
      {
        OthersMayUpdateColumn: true
        ValueType: String
      }
      EDIODBCLinkColumn ORGANNAME
      {
        OthersMayUpdateColumn: true
        ValueType: String
      }
      EDIODBCLinkColumn PLANTNAME
      {
        OthersMayUpdateColumn: true
        ValueType: String
      }
      EDIODBCLinkColumn TRANSACTIONDATE
      {
        OthersMayUpdateColumn: true
        ValueType: String
      }
      EDIODBCLinkColumn TRANSACTIONQTY
      {
        OthersMayUpdateColumn: true
        ValueType: String
      }
    }
  }
  EDITransformation.Transformation Transformation16
  {
    EDITableTransformation
    {
      InputTable: MID_ANNUAL_BUDGET_REVIEW
      OutputTable: Global_MappingSummaryOfInboundTransaction
      EDIColumnMatch { InputColumn: ITEM OutputColumn: Item }
      EDIColumnMatch { InputColumn: ORGANCODE OutputColumn: OrganCode }
      EDIColumnMatch { InputColumn: ORGANNAME OutputColumn: OrganName }
      EDIColumnMatch { InputColumn: PLANTNAME OutputColumn: PlantName }
      EDIColumnMatch
      {
        InputColumn: TRANSACTIONDATE
        OutputColumn: TransactionDate
        Converter
        {
          XMLDefinition:
          [*
            <?xml version="1.0" encoding="UTF-16"?>
            <StringToDate xmlns="http://www.quintiq.com/GEB/StringToDate" Key="@1">
              <IsStandard>true</IsStandard>
              <IsISO>false</IsISO>
              <IsCustom>false</IsCustom>
              <ConversionType>0</ConversionType>
              <DateFormatString>DefaultDate</DateFormatString>
              <LocaleString>Chinese (China)</LocaleString>
              <CustomFormatString></CustomFormatString>
            </StringToDate>
          *]
        }
      }
      EDIColumnMatch
      {
        InputColumn: TRANSACTIONQTY
        OutputColumn: TransactionQTY
        Converter
        {
          XMLDefinition:
          [*
            <?xml version="1.0" encoding="UTF-16"?>
            <StringToReal xmlns="http://www.quintiq.com/GEB/StringToReal" Key="@1">
              <IsStandard>true</IsStandard>
              <IsISO>false</IsISO>
              <IsCustom>false</IsCustom>
              <ConversionType>0</ConversionType>
              <NumericFormatString>Standard</NumericFormatString>
              <LocaleString>Chinese (China)</LocaleString>
              <CurrencyString></CurrencyString>
              <CustomFormatString></CustomFormatString>
            </StringToReal>
          *]
        }
      }
    }
  }
}
_Main/BL/Relations/Relation_CapacityAndSaleBudgeRunStatus_GlobalOTDSOP_GlobalOTDSOP_CapacityAnd.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
Quintiq file version 2.0
#parent: #root
Relation CapacityAndSaleBudgeRunStatus_GlobalOTDSOP_GlobalOTDSOP_CapacityAndSaleBudgeRunStatus
{
  #keys: '1[414702.1.385990039]'
  DefaultRelationStrategy
  {
  }
  RelationSide.LeftSide GlobalOTDSOP
  {
    #keys: '3[414702.1.385990041][414702.1.385990040][414702.1.385990042]'
    Cardinality: '0to1'
    ObjectDefinition: CapacityAndSaleBudgeRunStatus
    OwningSide: 'Reference'
  }
  RelationSide.RightSide CapacityAndSaleBudgeRunStatus
  {
    #keys: '3[414702.1.385990044][414702.1.385990043][414702.1.385990045]'
    Cardinality: '0to1'
    ObjectDefinition: GlobalOTDSOP
    OwningSide: 'Owned'
  }
}
_Main/BL/Relations/Relation_Global_MappingSummaryOfInboundTransaction_GlobalOTDTable_GlobalOTDT.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
Quintiq file version 2.0
#parent: #root
Relation Global_MappingSummaryOfInboundTransaction_GlobalOTDTable_GlobalOTDTable_Global_MappingSummaryOfInboundTransaction
{
  #keys: '1[414702.1.390426987]'
  DefaultRelationStrategy
  {
  }
  RelationSide.LeftSide GlobalOTDTable
  {
    #keys: '3[414702.1.390426989][414702.1.390426988][414702.1.390426990]'
    Cardinality: '0to1'
    ObjectDefinition: Global_MappingSummaryOfInboundTransaction
    OwningSide: 'Reference'
  }
  RelationSide.RightSide Global_MappingSummaryOfInboundTransaction
  {
    #keys: '3[414702.1.390426992][414702.1.390426991][414702.1.390426993]'
    Cardinality: '1toN'
    ObjectDefinition: GlobalOTDTable
    OwningSide: 'Owned'
  }
}
_Main/BL/Relations/Relation_ModulePanelCorrespondence_GlobalOTDSOP_GlobalOTDSOP_ModulePanelCorr.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
Quintiq file version 2.0
#parent: #root
Relation ModulePanelCorrespondence_GlobalOTDSOP_GlobalOTDSOP_ModulePanelCorrespondence
{
  #keys: '1[414702.1.376546995]'
  DefaultRelationStrategy
  {
  }
  RelationSide.LeftSide GlobalOTDSOP
  {
    #keys: '3[414702.1.376546997][414702.1.376546996][414702.1.376546998]'
    Cardinality: '0to1'
    ObjectDefinition: ModulePanelCorrespondence
    OwningSide: 'Reference'
  }
  RelationSide.RightSide ModulePanelCorrespondence
  {
    #keys: '3[414702.1.376547000][414702.1.376546999][414702.1.376547001]'
    Cardinality: '1toN'
    ObjectDefinition: GlobalOTDSOP
    OwningSide: 'Owned'
  }
}
_Main/BL/Relations/Relation_ModulePanelCorrespondence_Panel_ModulePanelCorrespondence_Module.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
Quintiq file version 2.0
#parent: #root
Relation ModulePanelCorrespondence_Panel_ModulePanelCorrespondence_Module
{
  #keys: '1[414702.1.376547033]'
  DefaultRelationStrategy
  {
  }
  RelationSide.LeftSide Panel
  {
    #keys: '3[414702.1.376547035][414702.1.376547034][414702.1.376547036]'
    Cardinality: '1toN'
    ObjectDefinition: ModulePanelCorrespondence
    OwningSide: 'Reference'
  }
  RelationSide.RightSide Module
  {
    #keys: '3[414702.1.376547038][414702.1.376547037][414702.1.376547039]'
    Cardinality: '0to1'
    ObjectDefinition: ModulePanelCorrespondence
    OwningSide: 'Reference'
  }
}
_Main/BL/Relations/Relation_PeggingProductInStockingPoint_MP_PeggingProduct_MP_PeggingProduct_M.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
Quintiq file version 2.0
#parent: #root
Relation PeggingProductInStockingPoint_MP_PeggingProduct_MP_PeggingProduct_MP_PeggingProductInStockingPoint_MP
{
  #keys: '1[414702.1.364041917]'
  DefaultRelationStrategy
  {
  }
  RelationSide.LeftSide PeggingProduct_MP
  {
    #keys: '3[414702.1.364041919][414702.1.364041918][414702.1.364041920]'
    Cardinality: '0to1'
    ObjectDefinition: PeggingProductInStockingPoint_MP
    OwningSide: 'Reference'
  }
  RelationSide.RightSide PeggingProductInStockingPoint_MP
  {
    #keys: '3[414702.1.364041922][414702.1.364041921][414702.1.364041923]'
    Cardinality: '1toN'
    ObjectDefinition: PeggingProduct_MP
    OwningSide: 'Owned'
  }
}
_Main/BL/Relations/Relation_PeggingResultProductInStockingPoint_MP_AllChild_PeggingResultProduc.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
Quintiq file version 2.0
#parent: #root
Relation PeggingResultProductInStockingPoint_MP_AllChild_PeggingResultProductInStockingPoint_MP_AllParent
{
  #keys: '1[414702.1.364041995]'
  DefaultRelationStrategy
  {
  }
  RelationSide.LeftSide AllChild
  {
    #keys: '3[414702.1.364041997][414702.1.364041996][414702.1.364041998]'
    Cardinality: '1toN'
    ObjectDefinition: PeggingResultProductInStockingPoint_MP
    OwningSide: 'Reference'
  }
  RelationSide.RightSide AllParent
  {
    #keys: '3[414702.1.364042000][414702.1.364041999][414702.1.364042001]'
    Cardinality: '0to1'
    ObjectDefinition: PeggingResultProductInStockingPoint_MP
    OwningSide: 'Reference'
  }
}
_Main/BL/Relations/Relation_PeggingResultProductInStockingPoint_MP_Child_PeggingResultProductIn.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
Quintiq file version 2.0
#parent: #root
Relation PeggingResultProductInStockingPoint_MP_Child_PeggingResultProductInStockingPoint_MP_Parent
{
  #keys: '1[414702.1.364041982]'
  DefaultRelationStrategy
  {
  }
  RelationSide.LeftSide Child
  {
    #keys: '3[414702.1.364041984][414702.1.364041983][414702.1.364041985]'
    Cardinality: '1toN'
    ObjectDefinition: PeggingResultProductInStockingPoint_MP
    OwningSide: 'Reference'
  }
  RelationSide.RightSide Parent
  {
    #keys: '3[414702.1.364041987][414702.1.364041986][414702.1.364041988]'
    Cardinality: '0to1'
    ObjectDefinition: PeggingResultProductInStockingPoint_MP
    OwningSide: 'Reference'
  }
}
_Main/BL/Relations/Relation_PeggingResultProductInStockingPoint_MP_PeggingProductInStockingPoin.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
Quintiq file version 2.0
#parent: #root
Relation PeggingResultProductInStockingPoint_MP_PeggingProductInStockingPoint_MP_PeggingProductInStockingPoint_MP_PeggingResultProductInStockingPoint_MP
{
  #keys: '1[414702.1.364041967]'
  DefaultRelationStrategy
  {
  }
  RelationSide.LeftSide PeggingProductInStockingPoint_MP
  {
    #keys: '3[414702.1.364041969][414702.1.364041968][414702.1.364041970]'
    Cardinality: '0to1'
    ObjectDefinition: PeggingResultProductInStockingPoint_MP
    OwningSide: 'Reference'
  }
  RelationSide.RightSide PeggingResultProductInStockingPoint_MP
  {
    #keys: '3[414702.1.364041972][414702.1.364041971][414702.1.364041973]'
    Cardinality: '1toN'
    ObjectDefinition: PeggingProductInStockingPoint_MP
    OwningSide: 'Owned'
  }
}
_Main/BL/Relations/Relation_SummaryOfInboundTransaction_GlobalOTDSOP_GlobalOTDSOP_SummaryOfInbo.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
Quintiq file version 2.0
#parent: #root
Relation SummaryOfInboundTransaction_GlobalOTDSOP_GlobalOTDSOP_SummaryOfInboundTransaction
{
  #keys: '1[414702.1.391291474]'
  DefaultRelationStrategy
  {
  }
  RelationSide.LeftSide GlobalOTDSOP
  {
    #keys: '3[414702.1.391291476][414702.1.391291475][414702.1.391291477]'
    Cardinality: '0to1'
    ObjectDefinition: SummaryOfInboundTransaction
    OwningSide: 'Reference'
  }
  RelationSide.RightSide SummaryOfInboundTransaction
  {
    #keys: '3[414702.1.391291479][414702.1.391291478][414702.1.391291480]'
    Cardinality: '1toN'
    ObjectDefinition: GlobalOTDSOP
    OwningSide: 'Owned'
  }
}
_Main/BL/Type_CapacityAndSaleBudgeChartElement/StaticMethod_Create.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,18 @@
Quintiq file version 2.0
#parent: #root
StaticMethod Create (
  GlobalOTDSOP this,
  String businessTypeOrPlaceOfProductionOfArray,
  String timeStringAndScenarioName,
  Real quantity
)
{
  TextBody:
  [*
    this.CapacityAndSaleBudgeChartElement( relnew,
                                           BusinessTypeOrPlaceOfProductionOfArray := businessTypeOrPlaceOfProductionOfArray,
                                           TimeStringAndScenarioName := timeStringAndScenarioName,
                                           Quantity := quantity
                                          );
  *]
}
_Main/BL/Type_CapacityAndSaleBudgeChartElement/StaticMethod_CreateData.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,28 @@
Quintiq file version 2.0
#parent: #root
StaticMethod CreateData (
  GlobalOTDSOP this,
  MacroPlans macroPlans,
  CapacityAndSaleBudgeCompareItemRows casbcirs,
  String popoa,
  String groupBy,
  String saleOrCapacity,
  CapacityAndSaleBudgeFilterYears years,
  CapacityAndSaleBudgeFilterMonths months
)
{
  TextBody:
  [*
    //info( "产能/销售额:", saleOrCapacity, "    æ—¶é—´åˆ†ç»„:", groupBy, "    åŸºåœ°/事业部:", popoa );
    if ( groupBy = "å¹´" ) {
      CapacityAndSaleBudgeChartElement::CreateDataByYear( this, macroPlans, casbcirs, popoa, saleOrCapacity, years, months );
    } else if ( groupBy = "月" ) {
      CapacityAndSaleBudgeChartElement::CreateDataByMonth( this, macroPlans, casbcirs, popoa, saleOrCapacity, years, months );
    } else if ( groupBy = "季度" ) {
      CapacityAndSaleBudgeChartElement::CreateDataByQuarter( this, macroPlans, casbcirs, popoa, saleOrCapacity, years, months );
    } else if ( groupBy = "半年" ) {
      CapacityAndSaleBudgeChartElement::CreateDataByHalfAYear( this, macroPlans, casbcirs, popoa, saleOrCapacity, years, months );
    }
  *]
}
_Main/BL/Type_CapacityAndSaleBudgeChartElement/StaticMethod_CreateDataByHalfAYear.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,42 @@
Quintiq file version 2.0
#parent: #root
StaticMethod CreateDataByHalfAYear (
  GlobalOTDSOP this,
  MacroPlans macroPlans,
  CapacityAndSaleBudgeCompareItemRows casbcirs,
  String popoa,
  String saleOrCapacity,
  CapacityAndSaleBudgeFilterYears years,
  CapacityAndSaleBudgeFilterMonths months
)
{
  TextBody:
  [*
    calculationConditions := ifexpr( saleOrCapacity = "产能", "PanelAllocation", "SalesVolume" );
    categories := construct( Strings );
    if ( popoa = "面板基地" ) {
      categories := selectuniquevalues( casbcirs, Elements, tempCASBCIR, true, tempCASBCIR.PlaceOfProductionOfArray() );
    } else if ( popoa = "事业部" ) {
      categories := selectuniquevalues( casbcirs, Elements, tempCASBCIR, true, tempCASBCIR.BusinessType() );
    }
    traverse ( years, Elements, y ) {
      traverse ( categories, Elements, c ) {
        for ( i := 0; i < 2; i ++ ) {
          timeStringAndScenarioName := [String]y.YearNo() + "å¹´" + "-" + ifexpr( i = 0, "上半年", "下半年" ) + "-" + "目标";
          targetMonth               := selectset( months, Elements, tempM, tempM.MonthNo() >= ( ( i * 6 ) + 1  ) and
                                                  tempM.MonthNo() <= ( ( i + 1 ) * 6 ) );
          filterCASBCIR             := CapacityAndSaleBudgeChartElement::FilterCalculationRows( casbcirs, c, popoa );
          quantity                  := CapacityAndSaleBudgeChartElement::GetQuantity( filterCASBCIR, calculationConditions, "", y.YearNo(), targetMonth );
          CapacityAndSaleBudgeChartElement::Create( this, c, timeStringAndScenarioName, quantity );
          traverse ( macroPlans, Elements, mp ) {
            timeStringAndScenarioName := [String]y.YearNo() + "å¹´" + "-" + ifexpr( i = 0, "上半年", "下半年" ) + "-" + mp.ScenarioName();
            quantity                  := CapacityAndSaleBudgeChartElement::GetQuantity( filterCASBCIR, calculationConditions, mp.ScenarioName(), y.YearNo(), targetMonth );
            CapacityAndSaleBudgeChartElement::Create( this, c, timeStringAndScenarioName, quantity );
          }
        }
      }
    }
  *]
}
_Main/BL/Type_CapacityAndSaleBudgeChartElement/StaticMethod_CreateDataByMonth.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,42 @@
Quintiq file version 2.0
#parent: #root
StaticMethod CreateDataByMonth (
  GlobalOTDSOP this,
  MacroPlans macroPlans,
  CapacityAndSaleBudgeCompareItemRows casbcirs,
  String popoa,
  String saleOrCapacity,
  CapacityAndSaleBudgeFilterYears years,
  CapacityAndSaleBudgeFilterMonths months
)
{
  TextBody:
  [*
    calculationConditions := ifexpr( saleOrCapacity = "产能", "PanelAllocation", "SalesVolume" );
    categories := construct( Strings );
    if ( popoa = "面板基地" ) {
      categories := selectuniquevalues( casbcirs, Elements, tempCASBCIR, true, tempCASBCIR.PlaceOfProductionOfArray() );
    } else if ( popoa = "事业部" ) {
      categories := selectuniquevalues( casbcirs, Elements, tempCASBCIR, true, tempCASBCIR.BusinessType() );
    }
    traverse ( years, Elements, y ) {
      traverse ( categories, Elements, c ) {
        traverse ( months, Elements, m ) {
          filterCASBCIR := CapacityAndSaleBudgeChartElement::FilterCalculationRows( casbcirs, c, popoa );
          timeStringAndScenarioName := [String]y.YearNo() + "å¹´" + "-" + [String]m.MonthNo() + "月" + "-" + "目标";
          targetMonths := construct( CapacityAndSaleBudgeFilterMonths );
          targetMonths.Add( m );
          quantity  := CapacityAndSaleBudgeChartElement::GetQuantity( filterCASBCIR, calculationConditions, "", y.YearNo(), targetMonths );
          CapacityAndSaleBudgeChartElement::Create( this, c, timeStringAndScenarioName, quantity );
          traverse ( macroPlans, Elements, mp ) {
            timeStringAndScenarioName := [String]y.YearNo() + "å¹´" + "-" + [String]m.MonthNo() + "月" + "-" + mp.ScenarioName();
            quantity                  := CapacityAndSaleBudgeChartElement::GetQuantity( filterCASBCIR, calculationConditions, mp.ScenarioName(), y.YearNo(), targetMonths );
            CapacityAndSaleBudgeChartElement::Create( this, c, timeStringAndScenarioName, quantity );
          }
        }
      }
    }
  *]
}
_Main/BL/Type_CapacityAndSaleBudgeChartElement/StaticMethod_CreateDataByQuarter.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,45 @@
Quintiq file version 2.0
#parent: #root
StaticMethod CreateDataByQuarter (
  GlobalOTDSOP this,
  MacroPlans macroPlans,
  CapacityAndSaleBudgeCompareItemRows casbcirs,
  String popoa,
  String saleOrCapacity,
  CapacityAndSaleBudgeFilterYears years,
  CapacityAndSaleBudgeFilterMonths months
)
{
  TextBody:
  [*
    calculationConditions := ifexpr( saleOrCapacity = "产能", "PanelAllocation", "SalesVolume" );
    categories := construct( Strings );
    if ( popoa = "面板基地" ) {
      categories := selectuniquevalues( casbcirs, Elements, tempCASBCIR, true, tempCASBCIR.PlaceOfProductionOfArray() );
    } else if ( popoa = "事业部" ) {
      categories := selectuniquevalues( casbcirs, Elements, tempCASBCIR, true, tempCASBCIR.BusinessType() );
    }
    traverse ( years, Elements, y ) {
      traverse ( categories, Elements, c ) {
        for ( i := 1; i < 5; i ++ ) {
          targetMonth := selectset( months, Elements, tempM, tempM.MonthNo() >= ( ( i - 1 ) * 3 + 1  ) and
                                    tempM.MonthNo() <= ( i * 3 ) );
          if ( targetMonth.Size() > 0 ) {
            timeStringAndScenarioName := [String]y.YearNo() + "å¹´" + "-" + "第" + [String]i + "季度" + "-" + "目标";
            info( targetMonth.Size() );
            filterCASBCIR             := CapacityAndSaleBudgeChartElement::FilterCalculationRows( casbcirs, c, popoa );
            quantity                  := CapacityAndSaleBudgeChartElement::GetQuantity( filterCASBCIR, calculationConditions, "", y.YearNo(), targetMonth );
            CapacityAndSaleBudgeChartElement::Create( this, c, timeStringAndScenarioName, quantity );
            traverse ( macroPlans, Elements, mp ) {
              timeStringAndScenarioName := [String]y.YearNo() + "å¹´" + "-" + "第" + [String]i + "季度" + "-" + mp.ScenarioName();
              quantity                  := CapacityAndSaleBudgeChartElement::GetQuantity( filterCASBCIR, calculationConditions, mp.ScenarioName(), y.YearNo(), targetMonth );
              CapacityAndSaleBudgeChartElement::Create( this, c, timeStringAndScenarioName, quantity );
            }
          }
        }
      }
    }
  *]
}
_Main/BL/Type_CapacityAndSaleBudgeChartElement/StaticMethod_CreateDataByYear.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,38 @@
Quintiq file version 2.0
#parent: #root
StaticMethod CreateDataByYear (
  GlobalOTDSOP this,
  MacroPlans macroPlans,
  CapacityAndSaleBudgeCompareItemRows casbcirs,
  String popoa,
  String saleOrCapacity,
  CapacityAndSaleBudgeFilterYears years,
  CapacityAndSaleBudgeFilterMonths months
)
{
  TextBody:
  [*
    calculationConditions := ifexpr( saleOrCapacity = "产能", "PanelAllocation", "SalesVolume" );
    categories := construct( Strings );
    if ( popoa = "面板基地" ) {
      categories := selectuniquevalues( casbcirs, Elements, tempCASBCIR, true, tempCASBCIR.PlaceOfProductionOfArray() );
    } else if ( popoa = "事业部" ) {
      categories := selectuniquevalues( casbcirs, Elements, tempCASBCIR, true, tempCASBCIR.BusinessType() );
    }
    traverse ( years, Elements, y ) {
      traverse ( categories, Elements, c ) {
        timeStringAndScenarioName := [String]y.YearNo() + "å¹´" + "-" + "目标";
        filterCASBCIR             := CapacityAndSaleBudgeChartElement::FilterCalculationRows( casbcirs, c, popoa );
        quantity                  := CapacityAndSaleBudgeChartElement::GetQuantity( filterCASBCIR, calculationConditions, "", y.YearNo(), months );
        CapacityAndSaleBudgeChartElement::Create( this, c, timeStringAndScenarioName, quantity );
        traverse ( macroPlans, Elements, mp ) {
          timeStringAndScenarioName := [String]y.YearNo() + "å¹´" + "-" + mp.ScenarioName();
          quantity                  := CapacityAndSaleBudgeChartElement::GetQuantity( filterCASBCIR, calculationConditions, mp.ScenarioName(), y.YearNo(), months );
          CapacityAndSaleBudgeChartElement::Create( this, c, timeStringAndScenarioName, quantity );
        }
      }
    }
  *]
}
_Main/BL/Type_CapacityAndSaleBudgeChartElement/StaticMethod_FilterCalculationRows.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,21 @@
Quintiq file version 2.0
#parent: #root
StaticMethod FilterCalculationRows (
  CapacityAndSaleBudgeCompareItemRows casbcirs,
  String category,
  String popoa
) as owning CapacityAndSaleBudgeCompareItemRows
{
  TextBody:
  [*
    resultCASBCIR := construct( CapacityAndSaleBudgeCompareItemRows );
    if ( popoa = "面板基地" ) {
      resultCASBCIR := selectset( casbcirs, Elements, tempCASBCIR, tempCASBCIR.PlaceOfProductionOfArray() = category );
    } else if ( popoa = "事业部" ) {
      resultCASBCIR := selectset( casbcirs, Elements, tempCASBCIR, tempCASBCIR.BusinessType() = category );
    }
    return &resultCASBCIR;
  *]
}
_Main/BL/Type_CapacityAndSaleBudgeChartElement/StaticMethod_GetQuantity.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,25 @@
Quintiq file version 2.0
#parent: #root
StaticMethod GetQuantity (
  CapacityAndSaleBudgeCompareItemRows casbcirs,
  String calculationConditions,
  String scenarioName,
  Number year,
  CapacityAndSaleBudgeFilterMonths months
) as Real
{
  TextBody:
  [*
    total := 0.0;
    total := sum( casbcirs, Elements.CapacityAndSaleBudgeCompareItemCell, tempCASBCIC,
                  tempCASBCIC.CapacityAndSaleBudgeCompareItemColumn().ColumnType() = calculationConditions and
                  tempCASBCIC.CapacityAndSaleBudgeCompareItemColumn().ScenarioName() = scenarioName        and
                  tempCASBCIC.CapacityAndSaleBudgeCompareItemColumn().Year() = year                        and
                  exists( months, Elements, tempM, tempM.MonthNo() = tempCASBCIC.CapacityAndSaleBudgeCompareItemColumn().Month() ),
                  [Real]tempCASBCIC.CellContent()
                 );
    return total;
  *]
}
_Main/BL/Type_CapacityAndSaleBudgeChartElement/StaticMethod_SelectGenerateChartRows.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,25 @@
Quintiq file version 2.0
#parent: #root
StaticMethod SelectGenerateChartRows (
  GlobalOTDSOP this,
  owning CapacityAndSaleBudgeFilterItems items,
  owning CapacityAndSaleBudgeFilterPlaceOfProductionOfArrays casbfpopoas,
  owning CapacityAndSaleBudgeFilterBusinessTypes casbfbts,
  owning CapacityAndSaleBudgeFilterYears years,
  owning CapacityAndSaleBudgeFilterMonths months
) as owning CapacityAndSaleBudgeCompareItemRows
{
  TextBody:
  [*
    casbcirs := construct( CapacityAndSaleBudgeCompareItemRows );
    CapacityAndSaleBudgeCompareItemCell::SetFilterCriteria( this, &items, &casbfpopoas, &casbfbts, &years, &months );
    casbcirs := selectset( this, CapacityAndSaleBudgeCompareItemRow, tempCASBCIR,
                           exists( casbfpopoas, Elements, tempCASBFPOPOA, tempCASBFPOPOA.PlaceOfProductionOfArray() = tempCASBCIR.PlaceOfProductionOfArray() ) and
                           exists( casbfbts, Elements, tempCASBFBT, tempCASBFBT.BusinessType() = tempCASBCIR.BusinessType() )
                          );
    return &casbcirs;
  *]
}
_Main/BL/Type_CapacityAndSaleBudgeCompareItemCell/StaticMethod_CreateData.qbl
ÎļþÒÑɾ³ý
_Main/BL/Type_CapacityAndSaleBudgeCompareItemCell/StaticMethod_CreatePanelAllocation.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,18 @@
Quintiq file version 2.0
#parent: #root
StaticMethod CreatePanelAllocation (
  MacroPlans macroPlans,
  const GlobalOTDTable globalOTDTable,
  GlobalOTDSOP this,
  CapacityAndSaleBudgeFilterItems capacityAndSaleBudgeFilterItems,
  CapacityAndSaleBudgeFilterYears years,
  CapacityAndSaleBudgeFilterMonths months
)
{
  TextBody:
  [*
    CapacityAndSaleBudgeCompareItemCell::CreatePanelAllocationDataForBudget( globalOTDTable, this, capacityAndSaleBudgeFilterItems, years, months );
    CapacityAndSaleBudgeCompareItemCell::CreatePanelAllocationDataForScenario( macroPlans, this, capacityAndSaleBudgeFilterItems, years, months );
  *]
}
_Main/BL/Type_CapacityAndSaleBudgeCompareItemCell/StaticMethod_CreatePanelAllocationDataForBudget.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,48 @@
Quintiq file version 2.0
#parent: #root
StaticMethod CreatePanelAllocationDataForBudget (
  const GlobalOTDTable globalOTDTable,
  GlobalOTDSOP this,
  CapacityAndSaleBudgeFilterItems capacityAndSaleBudgeFilterItems,
  CapacityAndSaleBudgeFilterYears years,
  CapacityAndSaleBudgeFilterMonths months
)
{
  TextBody:
  [*
    if ( exists( capacityAndSaleBudgeFilterItems, Elements, tempCASBFI, tempCASBFI.ItemName() = "面板分配量" ) ) {
      columnNo := max( this, CapacityAndSaleBudgeCompareItemColumn, tempCASBCIC, true, tempCASBCIC.ColumnNo() ) + 1;
      traverse ( years, Elements, y ) {
        traverse ( months, Elements, m ) {
          columnMonthName  := "面板分配量" + "-" + [String]y.YearNo() + "å¹´" + "-" + [String]m.MonthNo() + "月" + "-" + "年度预算";
          columnMonth      := this.CapacityAndSaleBudgeCompareItemColumn( relnew, ColumnName := columnMonthName, ColumnNo := columnNo, Year := y.YearNo(), Month := m.MonthNo(), ColumnType := "PanelAllocation" );
          traverse ( this, CapacityAndSaleBudgeCompareItemRow, casbcir ) {
    //        info( "当前行:", casbcir.RowNo(), "    è¡Œç»„织:", casbcir.PlaceOfProductionOfArray(), "    è¡Œäº‹ä¸šéƒ¨ï¼š", casbcir.BusinessType() );
            annualPanelAllocationQuantity := CapacityAndSaleBudgeCompareItemCell::GetPanelAllocationQuantityForBudget( globalOTDTable,
                                                                                                                       y.YearNo(),
                                                                                                                       m.MonthNo(),
                                                                                                                       casbcir.PlaceOfProductionOfArray(),
                                                                                                                       casbcir.BusinessType()
                                                                                                                      );
            monthCell := columnMonth.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]annualPanelAllocationQuantity );
            monthCell.CapacityAndSaleBudgeCompareItemRow( relset, casbcir );
          }
          columnNo++;
        }
        columnYearName  := "面板分配量" + "-" + [String]y.YearNo() + "å¹´" + "-" + "total" + "-" + "年度预算";
        columnYear      := this.CapacityAndSaleBudgeCompareItemColumn( relnew, ColumnName := columnYearName, ColumnNo := columnNo, Year := y.YearNo(), ColumnType := "PanelAllocation" );
        traverse ( this, CapacityAndSaleBudgeCompareItemRow, casbcir  ) {
          annualPanelAllocationQuantity := CapacityAndSaleBudgeCompareItemCell::GetPanelAllocationQuantityForBudget( globalOTDTable,
                                                                                                                     y.YearNo(),
                                                                                                                     0,
                                                                                                                     casbcir.PlaceOfProductionOfArray(),
                                                                                                                     casbcir.BusinessType()
                                                                                                                    );
          yearCell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]annualPanelAllocationQuantity );
          yearCell.CapacityAndSaleBudgeCompareItemRow( relset, casbcir );
        }
      }
    }
  *]
}
_Main/BL/Type_CapacityAndSaleBudgeCompareItemCell/StaticMethod_CreatePanelAllocationDataForScenario.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,42 @@
Quintiq file version 2.0
#parent: #root
StaticMethod CreatePanelAllocationDataForScenario (
  MacroPlans macroPlans,
  GlobalOTDSOP this,
  CapacityAndSaleBudgeFilterItems capacityAndSaleBudgeFilterItems,
  CapacityAndSaleBudgeFilterYears years,
  CapacityAndSaleBudgeFilterMonths months
)
{
  TextBody:
  [*
    if ( exists( capacityAndSaleBudgeFilterItems, Elements, tempCASBFI, tempCASBFI.ItemName() = "面板分配量" ) ) {
      columnNo := max( this, CapacityAndSaleBudgeCompareItemColumn, tempCASBCIC, true, tempCASBCIC.ColumnNo() ) + 1;
      traverse ( macroPlans, Elements, mp ) {
        traverse ( years, Elements, y ) {
          traverse ( months, Elements, m ) {
            columnMonthName  := "面板分配量" + "-" + [String]y.YearNo() + "å¹´" + "-" + [String]m.MonthNo() + "月" + "-" + mp.ScenarioName();
            columnMonth      := this.CapacityAndSaleBudgeCompareItemColumn( relnew, ColumnName := columnMonthName, ColumnNo := columnNo, Year := y.YearNo(), Month := m.MonthNo(), ColumnType := "PanelAllocation", ScenarioName := mp.ScenarioName() );
            traverse ( this, CapacityAndSaleBudgeCompareItemRow, casbcir ) {
              productIDs := selectuniquevalues( casbcir, CapacityAndSaleBudgeCompareItemRowProduct, tempCASBCIRP, true, tempCASBCIRP.ProductCode() );
              total      := CapacityAndSaleBudgeCompareItemCell::GetPanelAllocationQuantity( this, productIDs, y.YearNo(), m.MonthNo() );
              cellMonth  := columnMonth.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]total );
              cellMonth.CapacityAndSaleBudgeCompareItemRow( relset, casbcir );
              columnNo++;
            }
          }
          columnMonthName  := "面板分配量" + "-" + [String]y.YearNo() + "å¹´" + "-" + "total" + "-" + mp.ScenarioName();
          columnYear       := this.CapacityAndSaleBudgeCompareItemColumn( relnew, ColumnName := columnMonthName, ColumnNo := columnNo, Year := y.YearNo(), ColumnType := "PanelAllocation", ScenarioName := mp.ScenarioName() );
          traverse ( this, CapacityAndSaleBudgeCompareItemRow, casbcir ) {
            productIDs := selectuniquevalues( casbcir, CapacityAndSaleBudgeCompareItemRowProduct, tempCASBCIRP, true, tempCASBCIRP.ProductCode() );
            total      := CapacityAndSaleBudgeCompareItemCell::GetPanelAllocationQuantity( this, productIDs, y.YearNo(), 0 );
            cellYear := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]total );
            cellYear.CapacityAndSaleBudgeCompareItemRow( relset, casbcir );
          }
          columnNo++;
        }
      }
    }
  *]
}
_Main/BL/Type_CapacityAndSaleBudgeCompareItemCell/StaticMethod_CreateSalesVolumeData.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,18 @@
Quintiq file version 2.0
#parent: #root
StaticMethod CreateSalesVolumeData (
  MacroPlans macroPlans,
  const GlobalOTDTable globalOTDTable,
  GlobalOTDSOP this,
  CapacityAndSaleBudgeFilterItems capacityAndSaleBudgeFilterItems,
  CapacityAndSaleBudgeFilterYears years,
  CapacityAndSaleBudgeFilterMonths months
)
{
  TextBody:
  [*
    CapacityAndSaleBudgeCompareItemCell::CreateSalesVolumeDataForBudget( globalOTDTable, this, capacityAndSaleBudgeFilterItems, years, months );
    CapacityAndSaleBudgeCompareItemCell::CreateSalesVolumeDataForScenario( macroPlans, this, capacityAndSaleBudgeFilterItems, years, months );
  *]
}
_Main/BL/Type_CapacityAndSaleBudgeCompareItemCell/StaticMethod_CreateSalesVolumeDataForBudget.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,49 @@
Quintiq file version 2.0
#parent: #root
StaticMethod CreateSalesVolumeDataForBudget (
  const GlobalOTDTable globalOTDTable,
  GlobalOTDSOP this,
  CapacityAndSaleBudgeFilterItems capacityAndSaleBudgeFilterItems,
  CapacityAndSaleBudgeFilterYears years,
  CapacityAndSaleBudgeFilterMonths months
)
{
  TextBody:
  [*
    if ( exists( capacityAndSaleBudgeFilterItems, Elements, tempCASBFI, tempCASBFI.ItemName() = "销售额" ) ) {
      columnNo := max( this, CapacityAndSaleBudgeCompareItemColumn, tempCASBCIC, true, tempCASBCIC.ColumnNo() ) + 1;
      traverse ( years, Elements, y ) {
        traverse ( months, Elements, m ) {
          columnMonthName  := "对外销售额" + "-" + [String]y.YearNo() + "å¹´" + "-" + [String]m.MonthNo() + "月" + "-" + "年度预算";
          columnMonth      := this.CapacityAndSaleBudgeCompareItemColumn( relnew, ColumnName := columnMonthName, ColumnNo := columnNo, Year := y.YearNo(), Month := m.MonthNo(), ColumnType := "SalesVolume" );
          traverse ( this, CapacityAndSaleBudgeCompareItemRow, casbcir ) {
    //        info( "当前行:", casbcir.RowNo(), "    è¡Œç»„织:", casbcir.PlaceOfProductionOfArray(), "    è¡Œäº‹ä¸šéƒ¨ï¼š", casbcir.BusinessType() );
            annualSalesQuantity := CapacityAndSaleBudgeCompareItemCell::GetAnnualSalesQuantity( globalOTDTable,
                                                                                                y.YearNo(),
                                                                                                m.MonthNo(),
                                                                                                casbcir.PlaceOfProductionOfArray(),
                                                                                                casbcir.BusinessType()
                                                                                               );
            monthCell := columnMonth.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]annualSalesQuantity );
            monthCell.CapacityAndSaleBudgeCompareItemRow( relset, casbcir );
          }
          columnNo++;
        }
        columnYearName  := "对外销售额" + "-" + [String]y.YearNo() + "å¹´" + "-" + "total" + "-" + "年度预算";
        columnYear      := this.CapacityAndSaleBudgeCompareItemColumn( relnew, ColumnName := columnYearName, ColumnNo := columnNo, Year := y.YearNo(), ColumnType := "SalesVolume" );
        traverse ( this, CapacityAndSaleBudgeCompareItemRow, casbcir  ) {
          annualSalesQuantity := CapacityAndSaleBudgeCompareItemCell::GetAnnualSalesQuantity( globalOTDTable,
                                                                                              y.YearNo(),
                                                                                              0,
                                                                                              casbcir.PlaceOfProductionOfArray(),
                                                                                              casbcir.BusinessType()
                                                                                             );
          yearCell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]annualSalesQuantity );
          yearCell.CapacityAndSaleBudgeCompareItemRow( relset, casbcir );
        }
        columnNo++;
      }
    }
  *]
}
_Main/BL/Type_CapacityAndSaleBudgeCompareItemCell/StaticMethod_CreateSalesVolumeDataForScenario.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,47 @@
Quintiq file version 2.0
#parent: #root
StaticMethod CreateSalesVolumeDataForScenario (
  MacroPlans macroPlans,
  GlobalOTDSOP this,
  CapacityAndSaleBudgeFilterItems capacityAndSaleBudgeFilterItems,
  CapacityAndSaleBudgeFilterYears years,
  CapacityAndSaleBudgeFilterMonths months
)
{
  TextBody:
  [*
    if ( exists( capacityAndSaleBudgeFilterItems, Elements, tempCASBFI, tempCASBFI.ItemName() = "销售额" ) ) {
      columnNo := max( this, CapacityAndSaleBudgeCompareItemColumn, tempCASBCIC, true, tempCASBCIC.ColumnNo() ) + 1;
      traverse ( macroPlans, Elements, mp ) {
        traverse ( years, Elements, y ) {
          traverse ( months, Elements, m ) {
            columnMonthName  := "对外销售额" + "-" + [String]y.YearNo() + "å¹´" + "-" + [String]m.MonthNo() + "月" + "-" + mp.ScenarioName();
            columnMonth      := this.CapacityAndSaleBudgeCompareItemColumn( relnew, ColumnName := columnMonthName, ColumnNo := columnNo, Year := y.YearNo(), Month := m.MonthNo(), ColumnType := "SalesVolume", ScenarioName := mp.ScenarioName() );
            traverse ( this, CapacityAndSaleBudgeCompareItemRow, casbcir ) {
              productIDs := selectuniquevalues( casbcir, CapacityAndSaleBudgeCompareItemRowProduct, tempCASBCIRP, true, tempCASBCIRP.ProductCode() );
              total      := sum( mp, SalesDemand, tempSD, productIDs.Find( tempSD.ProductID() ) >= 0       and
                                                          tempSD.StartDate().Year()  = [Number]y.YearNo()  and
                                                          tempSD.StartDate().Month() = [Number]m.MonthNo(),
                                                          tempSD.Quantity() * tempSD.Price() );
              cellMonth := columnMonth.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]total );
              cellMonth.CapacityAndSaleBudgeCompareItemRow( relset, casbcir );
              columnNo++;
            }
          }
          columnMonthName  := "对外销售额" + "-" + [String]y.YearNo() + "å¹´" + "-" + "total" + "-" + mp.ScenarioName();
          columnYear       := this.CapacityAndSaleBudgeCompareItemColumn( relnew, ColumnName := columnMonthName, ColumnNo := columnNo, Year := y.YearNo(), ColumnType := "SalesVolume", ScenarioName := mp.ScenarioName() );
          traverse ( this, CapacityAndSaleBudgeCompareItemRow, casbcir ) {
            productIDs := selectuniquevalues( casbcir, CapacityAndSaleBudgeCompareItemRowProduct, tempCASBCIRP, true, tempCASBCIRP.ProductCode() );
            total := sum( mp, SalesDemand, tempSD, productIDs.Find( tempSD.ProductID() ) >= 0       and
                                                   tempSD.StartDate().Year()  = [Number]y.YearNo(),
                                                   tempSD.Quantity() * tempSD.Price() );
            cellYear := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]total );
            cellYear.CapacityAndSaleBudgeCompareItemRow( relset, casbcir );
          }
          columnNo++;
        }
      }
    }
  *]
}
_Main/BL/Type_CapacityAndSaleBudgeCompareItemCell/StaticMethod_ExecuteAsyncCapacityAndSaleBudgeCompare.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,12 @@
Quintiq file version 2.0
#parent: #root
StaticMethod ExecuteAsyncCapacityAndSaleBudgeCompare (
  GlobalOTDSOP globalOTDSOP,
  MacroPlans macroPlans
)
{
  TextBody:
  [*
    // hongjli Nov-6-2023 (created)
  *]
}
_Main/BL/Type_CapacityAndSaleBudgeCompareItemCell/StaticMethod_GenerateBasicDataBasedOnFilteringCriteria.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,41 @@
Quintiq file version 2.0
#parent: #root
StaticMethod GenerateBasicDataBasedOnFilteringCriteria (
  GlobalOTDSOP globalOTDSOP,
  const GlobalOTDTable globalOTDTable,
  CapacityAndSaleBudgeFilterItems items,
  CapacityAndSaleBudgeFilterPlaceOfProductionOfArrays casbfpopoas,
  CapacityAndSaleBudgeFilterBusinessTypes casbfbts
)
{
  TextBody:
  [*
    columnPOPOA := globalOTDSOP.CapacityAndSaleBudgeCompareItemColumn( relnew, ColumnName := "面板基地", ColumnNo := 0 );
    columnBT    := globalOTDSOP.CapacityAndSaleBudgeCompareItemColumn( relnew, ColumnName := "事业部", ColumnNo := 1 );
    rowNr := 0;
    //info( "组织基地个数:", casbfpopoas.Size(), "    äº‹ä¸šéƒ¨ä¸ªæ•°ï¼š", casbfbts.Size() );
    traverse ( casbfpopoas, Elements, casbfpopoa ) {
      traverse ( casbfbts, Elements, casbfbt ) {
        targetGlobal_MappingAnnualBudgetData := selectset( globalOTDTable, Global_MappingAnnualBudgetData, tempGMABD, tempGMABD.OrganCode() = casbfpopoa.PlaceOfProductionOfArray() and
                                                           tempGMABD.BusinessType() = casbfbt.BusinessType() );
        if ( targetGlobal_MappingAnnualBudgetData.Size() > 0 ) {
          targetCapacityAndSaleBudgeCompareItemRow := globalOTDSOP.CapacityAndSaleBudgeCompareItemRow( relnew,
                                                      PlaceOfProductionOfArray := casbfpopoa.PlaceOfProductionOfArray(),
                                                      BusinessType             := casbfbt.BusinessType(),
                                                      RowNo                    := rowNr );
          rowNr++;
          traverse ( targetGlobal_MappingAnnualBudgetData, Elements, gmabd ) {
            targetCapacityAndSaleBudgeCompareItemRow.CapacityAndSaleBudgeCompareItemRowProduct( relnew, ProductCode := gmabd.ProductID() );
          }
          cellPOPOA := columnPOPOA.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := casbfpopoa.PlaceOfProductionOfArray() );
          cellBT    := columnBT.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := casbfbt.BusinessType() );
          cellPOPOA.CapacityAndSaleBudgeCompareItemRow( relset, targetCapacityAndSaleBudgeCompareItemRow );
          cellBT.CapacityAndSaleBudgeCompareItemRow( relset, targetCapacityAndSaleBudgeCompareItemRow );
        }
      }
    }
  *]
}
_Main/BL/Type_CapacityAndSaleBudgeCompareItemCell/StaticMethod_GetAnnualSalesQuantity.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,62 @@
Quintiq file version 2.0
#parent: #root
StaticMethod GetAnnualSalesQuantity (
  const GlobalOTDTable globalOTDTable,
  Number year,
  Number month,
  String placeOfProductionOfArray,
  String businessType
) as Real
{
  TextBody:
  [*
    total := 0.0;
    targetGlobal_MappingAnnualBudgetDatas := selectset( globalOTDTable, Global_MappingAnnualBudgetData, tempGMABD,
                                                        tempGMABD.YearNo()       = [String]year             and
                                                        tempGMABD.OrganCode()    = placeOfProductionOfArray and
                                                        tempGMABD.BusinessType() = businessType
                                                       );
    if ( month = 0 ) {
      total := sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySales1() )
             + sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySales2() )
             + sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySales3() )
             + sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySales4() )
             + sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySales5() )
             + sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySales6() )
             + sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySales7() )
             + sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySales8() )
             + sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySales9() )
             + sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySales10() )
             + sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySales11() )
             + sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySales12() );
    } else if ( month = 1 ) {
      total := sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySales1() );
    } else if ( month = 2 ) {
      total := sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySales2() );
    } else if ( month = 3 ) {
      total := sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySales3() );
    } else if ( month = 4 ) {
      total := sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySales4() );
    } else if ( month = 5 ) {
      total := sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySales5() );
    } else if ( month = 6 ) {
      total := sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySales6() );
    } else if ( month = 7 ) {
      total := sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySales7() );
    } else if ( month = 8 ) {
      total := sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySales8() );
    } else if ( month = 9 ) {
      total := sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySales9() );
    } else if ( month = 10 ) {
      total := sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySales10() );
    } else if ( month = 11 ) {
      total := sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySales11() );
    } else if ( month = 12 ) {
      total := sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySales12() );
    }
    return total;
  *]
}
_Main/BL/Type_CapacityAndSaleBudgeCompareItemCell/StaticMethod_GetPanelAllocationQuantity.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,31 @@
Quintiq file version 2.0
#parent: #root
StaticMethod GetPanelAllocationQuantity (
  GlobalOTDSOP globalOTDSOP,
  Strings productIDs,
  Number year,
  Number month
) as Real
{
  TextBody:
  [*
    total := 0.0;
    traverse ( productIDs, Elements, pid ) {
      targetPRPISPMPs := selectset( globalOTDSOP, PeggingProduct_MP.PeggingProductInStockingPoint_MP.PeggingResultProductInStockingPoint_MP, tempPRPISPMP,
                                    tempPRPISPMP.ProductID() = pid and
                                    tempPRPISPMP.NumberOfPlies() = 0 );
      total := total +
               sum( targetPRPISPMPs, Elements.AllChild, tempAC,
                    exists( globalOTDSOP, ModulePanelCorrespondence.Panel, tempP,
                            tempP.Module().ModuleProductID() = pid and
                            tempP.PanelProductID() = tempAC.ProductID() ) and
                    tempAC.StartDate().Year() = year and
                    ifexpr( month <> 0, tempAC.StartDate().Month() = month, true ),
                    tempAC.FulfillmentQuantity()
                   );
    }
    return total;
  *]
}
_Main/BL/Type_CapacityAndSaleBudgeCompareItemCell/StaticMethod_GetPanelAllocationQuantityForBudget.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,62 @@
Quintiq file version 2.0
#parent: #root
StaticMethod GetPanelAllocationQuantityForBudget (
  const GlobalOTDTable globalOTDTable,
  Number year,
  Number month,
  String placeOfProductionOfArray,
  String businessType
) as Real
{
  TextBody:
  [*
    total := 0.0;
    targetGlobal_MappingAnnualBudgetDatas := selectset( globalOTDTable, Global_MappingAnnualBudgetData, tempGMABD,
                                                        tempGMABD.YearNo()       = [String]year             and
                                                        tempGMABD.OrganCode()    = placeOfProductionOfArray and
                                                        tempGMABD.BusinessType() = businessType
                                                       );
    if ( month = 0 ) {
      total := sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySheetCapacity1() )
             + sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySheetCapacity2() )
             + sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySheetCapacity3() )
             + sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySheetCapacity4() )
             + sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySheetCapacity5() )
             + sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySheetCapacity6() )
             + sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySheetCapacity7() )
             + sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySheetCapacity8() )
             + sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySheetCapacity9() )
             + sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySheetCapacity10() )
             + sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySheetCapacity11() )
             + sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySheetCapacity12() );
    } else if ( month = 1 ) {
      total := sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySheetCapacity1() );
    } else if ( month = 2 ) {
      total := sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySheetCapacity2() );
    } else if ( month = 3 ) {
      total := sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySheetCapacity3() );
    } else if ( month = 4 ) {
      total := sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySheetCapacity4() );
    } else if ( month = 5 ) {
      total := sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySheetCapacity5() );
    } else if ( month = 6 ) {
      total := sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySheetCapacity6() );
    } else if ( month = 7 ) {
      total := sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySheetCapacity7() );
    } else if ( month = 8 ) {
      total := sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySheetCapacity8() );
    } else if ( month = 9 ) {
      total := sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySheetCapacity9() );
    } else if ( month = 10 ) {
      total := sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySheetCapacity10() );
    } else if ( month = 11 ) {
      total := sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySheetCapacity11() );
    } else if ( month = 12 ) {
      total := sum( targetGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, true, [Real]tempGMABD.MonthlySheetCapacity12() );
    }
    return total;
  *]
}
_Main/BL/Type_CapacityAndSaleBudgeCompareItemCell/StaticMethod_SetFilterCriteria.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,38 @@
Quintiq file version 2.0
#parent: #root
StaticMethod SetFilterCriteria (
  GlobalOTDSOP this,
  output owning CapacityAndSaleBudgeFilterItems items,
  output owning CapacityAndSaleBudgeFilterPlaceOfProductionOfArrays casbfpopoas,
  output owning CapacityAndSaleBudgeFilterBusinessTypes casbfbts,
  output owning CapacityAndSaleBudgeFilterYears years,
  output owning CapacityAndSaleBudgeFilterMonths months
)
{
  TextBody:
  [*
    if ( items.Size() = 0 ) {
      items := selectset( this, CapacityAndSaleBudgeFilterItem, tempCASBFI, tempCASBFI.ItemName() = "销售额" );
    }
    if ( casbfpopoas.Size() = 0 ) {
      casbfpopoas := selectset( this, CapacityAndSaleBudgeFilterPlaceOfProductionOfArray, tempCASBFPOPOA, true );
    }
    if ( casbfbts.Size() = 0 ) {
      casbfbts := selectset( this, CapacityAndSaleBudgeFilterBusinessType, tempCASBFBT, true );
    }
    if ( years.Size() = 0 ) {
      years := selectset( this, CapacityAndSaleBudgeFilterYear, tempCASBFY, tempCASBFY.YearNo() = Date::ActualDate().Year() );
    } else {
      years := selectsortedset( years, Elements, tempCASBFY, true, tempCASBFY.YearNo() );
    }
    if ( months.Size() = 0 ) {
      months := selectsortedset( this, CapacityAndSaleBudgeFilterMonth, tempCASBFM, true, tempCASBFM.MonthNo() );
    } else {
      months := selectsortedset( months, Elements, tempCASBFM, true, tempCASBFM.MonthNo() );
    }
  *]
}
_Main/BL/Type_CapacityAndSaleBudgeCompareItemColumn/Attribute_ColumnType.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute ColumnType
{
  #keys: '3[414702.1.340387451][414702.1.340387450][414702.1.340387452]'
  ValueType: String
}
_Main/BL/Type_CapacityAndSaleBudgeCompareItemColumn/Attribute_Month.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute Month
{
  #keys: '3[414702.1.339609433][414702.1.339609432][414702.1.339609434]'
  ValueType: Number
}
_Main/BL/Type_CapacityAndSaleBudgeCompareItemColumn/Attribute_ScenarioName.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute ScenarioName
{
  #keys: '3[414702.1.339085005][414702.1.339085004][414702.1.339085006]'
  ValueType: String
}
_Main/BL/Type_CapacityAndSaleBudgeCompareItemColumn/Attribute_Year.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute Year
{
  #keys: '3[414702.1.339609423][414702.1.339609422][414702.1.339609424]'
  ValueType: Number
}
_Main/BL/Type_CapacityAndSaleBudgeFilterBusinessType/StaticMethod_InitializedData.qbl
@@ -9,7 +9,7 @@
  [*
    globalOTDSOP.CapacityAndSaleBudgeFilterBusinessType( relflush );
    
    businessTypes := selectuniquevalues( globalOTDTable, Global_MappingProduct_MP, tempGMPMP, true, tempGMPMP.BusinessType() );
    businessTypes := selectuniquevalues( globalOTDTable, Global_MappingAnnualBudgetData, tempGMABD, true, tempGMABD.BusinessType() );
    
    traverse ( businessTypes, Elements, bt ) {
      globalOTDSOP.CapacityAndSaleBudgeFilterBusinessType( relnew, BusinessType := bt );
_Main/BL/Type_CapacityAndSaleBudgeFilterPlaceOfProductionOfArray/StaticMethod_InitializedData.qbl
@@ -9,7 +9,7 @@
  [*
    globalOTDSOP.CapacityAndSaleBudgeFilterPlaceOfProductionOfArray( relflush );
    
    organCodes := selectuniquevalues( globalOTDTable, Global_MappingOperation, tempGMO, true, tempGMO.OrganCode() );
    organCodes := selectuniquevalues( globalOTDTable, Global_MappingAnnualBudgetData, tempGMABD, true, tempGMABD.OrganCode() );
    
    traverse ( organCodes, Elements, oc ) {
      globalOTDSOP.CapacityAndSaleBudgeFilterPlaceOfProductionOfArray( relnew, PlaceOfProductionOfArray := oc );
_Main/BL/Type_CapacityAndSaleBudgeRunStatus/Attribute_RunSataus.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute RunSataus
{
  #keys: '3[414702.1.385990030][414702.1.385990029][414702.1.385990031]'
  ValueType: Number
}
_Main/BL/Type_CapacityAndSaleBudgeRunStatus/_ROOT_Type_CapacityAndSaleBudgeRunStatus.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,9 @@
Quintiq file version 2.0
#root
#parent: #DomainModel
Type CapacityAndSaleBudgeRunStatus
{
  #keys: '5[414702.1.385990024][414702.1.385990022][0.0.0][414702.1.385990023][414702.1.385990025]'
  BaseType: Object
  StructuredName: 'CapacityAndSaleBudgeRunStatuss'
}
_Main/BL/Type_GlobalDTOTable/Method_CreateCapacityAndSaleBudgeTestData#500.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,74 @@
Quintiq file version 2.0
#parent: #root
Method CreateCapacityAndSaleBudgeTestData (
  GlobalOTDSOP globalOTDSOP,
  const GlobalOTDTable globalOTDTable,
  CapacityAndSaleBudgeFilterYears years,
  Product_MPs product_MPs
)
{
  TextBody:
  [*
    this.Global_MappingAnnualBudgetData( relflush );
    product_MPs := selectset( product_MPs, Elements, tempPMP, tempPMP.IsLeaf() and not tempPMP.IsSystem() );
    if ( years.Size() = 0 ) {
      years := selectset( globalOTDSOP, CapacityAndSaleBudgeFilterYear, tempCASBFY,
                          tempCASBFY.YearNo() = Date::ActualDate().Year()
                         );
    }
    businessTypes             := selectuniquevalues( globalOTDTable, Global_MappingProduct_MP, tempGMPMP, true, tempGMPMP.BusinessType() );
    placeOfProductionOfArrays := selectuniquevalues( globalOTDTable, Global_MappingOperation, tempGMO, true, tempGMO.OrganCode() );
    traverse ( years, Elements, year, businessTypes.Size() > 0 and placeOfProductionOfArrays.Size() > 0 ) {
      traverse ( product_MPs, Elements, pmp ) {
        businessType             := businessTypes.Element( Number::Random( 0, businessTypes.Size() - 1 ) );
        placeOfProductionOfArray := placeOfProductionOfArrays.Element( Number::Random( 0, placeOfProductionOfArrays.Size() - 1 ) );
        mappingAnnualBudget := this.Global_MappingAnnualBudgetData( relnew,
                                                                    ID           := OS::GenerateGUIDAsString(),
                                                                    YearNo       := [String]year.YearNo(),
                                                                    BusinessType := businessType,
                                                                    OrganCode    := placeOfProductionOfArray,
                                                                    ProductID    := pmp.ID()
                                                                   );
        mappingAnnualBudget.MonthlyModCapacity1( [String]Real::Random( 20000.0, 30000.0 ) );
        mappingAnnualBudget.MonthlyModCapacity2( [String]Real::Random( 20000.0, 30000.0 ) );
        mappingAnnualBudget.MonthlyModCapacity3( [String]Real::Random( 20000.0, 30000.0 ) );
        mappingAnnualBudget.MonthlyModCapacity4( [String]Real::Random( 20000.0, 30000.0 ) );
        mappingAnnualBudget.MonthlyModCapacity5( [String]Real::Random( 20000.0, 30000.0 ) );
        mappingAnnualBudget.MonthlyModCapacity6( [String]Real::Random( 20000.0, 30000.0 ) );
        mappingAnnualBudget.MonthlyModCapacity7( [String]Real::Random( 20000.0, 30000.0 ) );
        mappingAnnualBudget.MonthlyModCapacity8( [String]Real::Random( 20000.0, 30000.0 ) );
        mappingAnnualBudget.MonthlyModCapacity9( [String]Real::Random( 20000.0, 30000.0 ) );
        mappingAnnualBudget.MonthlyModCapacity10( [String]Real::Random( 20000.0, 30000.0 ) );
        mappingAnnualBudget.MonthlyModCapacity11( [String]Real::Random( 20000.0, 30000.0 ) );
        mappingAnnualBudget.MonthlyModCapacity12( [String]Real::Random( 20000.0, 30000.0 ) );
        mappingAnnualBudget.MonthlySheetCapacity1(  [String]Real::Random( 20000.0, 30000.0 ) );
        mappingAnnualBudget.MonthlySheetCapacity2(  [String]Real::Random( 20000.0, 30000.0 ) );
        mappingAnnualBudget.MonthlySheetCapacity3(  [String]Real::Random( 20000.0, 30000.0 ) );
        mappingAnnualBudget.MonthlySheetCapacity4(  [String]Real::Random( 20000.0, 30000.0 ) );
        mappingAnnualBudget.MonthlySheetCapacity5(  [String]Real::Random( 20000.0, 30000.0 ) );
        mappingAnnualBudget.MonthlySheetCapacity6(  [String]Real::Random( 20000.0, 30000.0 ) );
        mappingAnnualBudget.MonthlySheetCapacity7(  [String]Real::Random( 20000.0, 30000.0 ) );
        mappingAnnualBudget.MonthlySheetCapacity8(  [String]Real::Random( 20000.0, 30000.0 ) );
        mappingAnnualBudget.MonthlySheetCapacity9(  [String]Real::Random( 20000.0, 30000.0 ) );
        mappingAnnualBudget.MonthlySheetCapacity10(  [String]Real::Random( 20000.0, 30000.0 ) );
        mappingAnnualBudget.MonthlySheetCapacity11(  [String]Real::Random( 20000.0, 30000.0 ) );
        mappingAnnualBudget.MonthlySheetCapacity12(  [String]Real::Random( 20000.0, 30000.0 ) );
        mappingAnnualBudget.MonthlySales1(  [String]Real::Random( 20000.0, 30000.0 ) );
        mappingAnnualBudget.MonthlySales2(  [String]Real::Random( 20000.0, 30000.0 ) );
        mappingAnnualBudget.MonthlySales3(  [String]Real::Random( 20000.0, 30000.0 ) );
        mappingAnnualBudget.MonthlySales4(  [String]Real::Random( 20000.0, 30000.0 ) );
        mappingAnnualBudget.MonthlySales5(  [String]Real::Random( 20000.0, 30000.0 ) );
        mappingAnnualBudget.MonthlySales6(  [String]Real::Random( 20000.0, 30000.0 ) );
        mappingAnnualBudget.MonthlySales7(  [String]Real::Random( 20000.0, 30000.0 ) );
        mappingAnnualBudget.MonthlySales8(  [String]Real::Random( 20000.0, 30000.0 ) );
        mappingAnnualBudget.MonthlySales9(  [String]Real::Random( 20000.0, 30000.0 ) );
        mappingAnnualBudget.MonthlySales10(  [String]Real::Random( 20000.0, 30000.0 ) );
        mappingAnnualBudget.MonthlySales11(  [String]Real::Random( 20000.0, 30000.0 ) );
        mappingAnnualBudget.MonthlySales12(  [String]Real::Random( 20000.0, 30000.0 ) );
      }
    }
  *]
}
_Main/BL/Type_GlobalDTOTable/Method_InitTestData#12.qbl
ÎļþÒÑɾ³ý
_Main/BL/Type_GlobalDTOTable/Method_InitTestData.qbl
ÎļþÒÑɾ³ý
_Main/BL/Type_GlobalDTOTable/Method_InitTestDataByYear.qbl
ÎļþÒÑɾ³ý
_Main/BL/Type_GlobalDTOTable/Method_OnAsyncExecuteFailure_GlobalOTDTable_AnnualBudgetData.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,9 @@
Quintiq file version 2.0
#parent: #root
Method OnAsyncExecuteFailure_GlobalOTDTable_AnnualBudgetData (
  Number errorNo,
  String errorMessage
)
{
  TextBody: 'this.SettingFailureDetails( errorNo, errorMessage, "Global_MappingAnnualBudgetData", "年度预算数据" );'
}
_Main/BL/Type_GlobalDTOTable/Method_OnAsyncExecuteFailure_GlobalOTDTable_SummaryOfInboundTransaction.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,9 @@
Quintiq file version 2.0
#parent: #root
Method OnAsyncExecuteFailure_GlobalOTDTable_SummaryOfInboundTransaction (
  Number errorNo,
  String errorMessage
)
{
  TextBody: 'this.SettingFailureDetails( errorNo, errorMessage, "Global_MappingSummaryOfInboundTransaction", "入库交易汇总" );'
}
_Main/BL/Type_GlobalDTOTable/Method_OnAsyncExecute_GlobalOTDTable_AnnualBudgetData.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,6 @@
Quintiq file version 2.0
#parent: #root
Method OnAsyncExecute_GlobalOTDTable_AnnualBudgetData
{
  TextBody: 'this.SettingSuccessfulDetails( "Global_MappingAnnualBudgetData", "年度预算数据", this.Global_MappingAnnualBudgetData( relsize ) );'
}
_Main/BL/Type_GlobalDTOTable/Method_OnAsyncExecute_GlobalOTDTable_SummaryOfInboundTransaction.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,6 @@
Quintiq file version 2.0
#parent: #root
Method OnAsyncExecute_GlobalOTDTable_SummaryOfInboundTransaction
{
  TextBody: 'this.SettingSuccessfulDetails( "Global_MappingSummaryOfInboundTransaction", "入库交易汇总", this.Global_MappingSummaryOfInboundTransaction( relsize ) );'
}
_Main/BL/Type_GlobalDTOTable/Method_SynchronizationAllMappingBrokerAndAPIByOption.qbl
@@ -21,7 +21,9 @@
  Boolean isCurrency_MP,
  Boolean isCurrencyRate_MP,
  Boolean isLane,
  Boolean isLaneLeg
  Boolean isLaneLeg,
  Boolean isSummaryOfInboundTransaction,
  Boolean isAnnualBudgetData
)
{
  TextBody:
@@ -115,5 +117,13 @@
      Global_BrokerExecuteLog::CreateInOperation( this, "LaneLeg", executionUser );
      this -> Global_MappingLaneLeg::CreateByAPI() -> Exception() -> Global_MappingLaneLeg::OnException( this );
    }
    if ( isSummaryOfInboundTransaction ) {
      Global_MappingSummaryOfInboundTransaction::SynchronizeInterfaceData( this, executionUser, "Global_MappingSummaryOfInboundTransaction" );
    }
    if ( isAnnualBudgetData ) {
      Global_MappingAnnualBudgetData::SynchronizeInterfaceData( this, executionUser, "Global_MappingAnnualBudgetData" );
    }
  *]
}
_Main/BL/Type_GlobalDTOTable/Method_SynchronizeDataToMacroPlan#127.qbl
@@ -44,7 +44,7 @@
      }
    
    if( organcodelist.Size() = 0 ){
      organcodelist := selectvalues( this, Global_MappingOperationBOM, bom,true, bom.OrganCode() );
      organcodelist := selectuniquevalues( this, Global_MappingOperationBOM, bom,true, bom.OrganCode() );
      }
    
    macroPlan.InitialUnitAndStockingPoint();
_Main/BL/Type_GlobalOTDSOP/Method_AsyncCapacityAndSaleBudgeCompare.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,24 @@
Quintiq file version 2.0
#parent: #root
Method AsyncCapacityAndSaleBudgeCompare (
  MacroPlans macroPlans,
  CapacityAndSaleBudgeFilterItems items,
  CapacityAndSaleBudgeFilterPlaceOfProductionOfArrays casbfpopoas,
  CapacityAndSaleBudgeFilterBusinessTypes casbfbts,
  CapacityAndSaleBudgeFilterYears years,
  CapacityAndSaleBudgeFilterMonths months,
  const GlobalOTDTable globalOTDTable
)
{
  TextBody:
  [*
    this -> CapacityAndSaleBudgeCompare( macroPlans,
                                         items,
                                         casbfpopoas,
                                         casbfbts,
                                         years,
                                         months,
                                         globalOTDTable )
         -> SetCapacityAndSaleBudgeRunStatus();
  *]
}
_Main/BL/Type_GlobalOTDSOP/Method_CapacityAndSaleBudgeChart.qbl
@@ -4,272 +4,23 @@
  MacroPlans macroPlans,
  String saleOrCapacity,
  String groupBy,
  String byBusinessTypeOrByOrgCode,
  CapacityAndSaleBudgeFilterBusinessTypes businessTypes,
  CapacityAndSaleBudgeFilterPlaceOfProductionOfArrays placeOfProductionOfArrays,
  CapacityAndSaleBudgeFilterYears years,
  CapacityAndSaleBudgeFilterMonths months,
  String popoa,
  owning CapacityAndSaleBudgeFilterItems items,
  owning CapacityAndSaleBudgeFilterPlaceOfProductionOfArrays placeOfProductionOfArrays,
  owning CapacityAndSaleBudgeFilterBusinessTypes businessTypes,
  owning CapacityAndSaleBudgeFilterYears years,
  owning CapacityAndSaleBudgeFilterMonths months,
  GlobalOTDTable otdTable
)
{
  Description: '按入参处理数据,产生需要的CapacityAndSaleBudgeChartElement'
  TextBody:
  [*
    info( "产能/销售额:", saleOrCapacity, "    æ—¶é—´åˆ†ç»„:", groupBy, "    åŸºåœ°/事业部:", byBusinessTypeOrByOrgCode );
    // å¹´ä»½ä¸é€‰æ—¶å…¨é€‰
    if ( years.Size() = 0 ) {
      years := selectset( this, CapacityAndSaleBudgeFilterYear, tempCASBFY, tempCASBFY.YearNo() = Date::ActualDate().Year() );
    }
    // æœˆä»½ä¸é€‰æ—¶å…¨é€‰
    if ( months.Size() = 0 ) {
      months := selectsortedset( this, CapacityAndSaleBudgeFilterMonth, item, true, item.MonthNo() );
    }
    // ====清理旧数据====
    this.CapacityAndSaleBudgeChartRow( relflush );
    this.CapacityAndSaleBudgeChartElement( relflush );
    
    // ====按面板基地和事业部对产品进行筛选分组====
    targeGlobal_MappingAnnualBudgetDatas := selectset( otdTable, Global_MappingAnnualBudgetData, tempGMABD, true );
    if ( businessTypes.Size() > 0 ) {
      businessTypeStrings := selectuniquevalues( businessTypes, Elements, item, true, item.BusinessType() );
      targeGlobal_MappingAnnualBudgetDatas := selectset( targeGlobal_MappingAnnualBudgetDatas, Elements, item, businessTypeStrings.Find( item.BusinessType() ) > -1 );
    }
    if ( placeOfProductionOfArrays.Size() > 0 ) {
      placeOfProductionOfArrayStrings := selectuniquevalues( placeOfProductionOfArrays, Elements, item, true, item.PlaceOfProductionOfArray() );
      targeGlobal_MappingAnnualBudgetDatas := selectset( targeGlobal_MappingAnnualBudgetDatas, Elements, item, placeOfProductionOfArrayStrings.Find( item.OrganCode() ) > -1 );
    }
    info( "选中的个数:", targeGlobal_MappingAnnualBudgetDatas.Size() );
    casbcirs := CapacityAndSaleBudgeChartElement::SelectGenerateChartRows( this, &items, &placeOfProductionOfArrays, &businessTypes, &years, &months );
    
    traverse ( targeGlobal_MappingAnnualBudgetDatas, Elements, gmabd ) {
      row := CapacityAndSaleBudgeChartRow::CreateIfNotExist( this, gmabd.BusinessType(), gmabd.OrganCode() );
      // è®°å½•每行包含哪些product
      CapacityAndSaleBudgeChartRowProduct::CreateIfNotExist( row, gmabd.ProductID() );
    }
    rows := selectset( this, CapacityAndSaleBudgeChartRow, item, true );
    placeOfProductionOfArrayList := selectuniquevalues( targeGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, tempGMABD.OrganCode() );
    businessTypeList := selectuniquevalues( targeGlobal_MappingAnnualBudgetDatas, Elements, tempGMABD, tempGMABD.BusinessType() );
    // ç”Ÿæˆå›¾è¡¨å…ƒç´ 
    traverse ( years, Elements, year ) {
      if ( byBusinessTypeOrByOrgCode = "面板基地" and groupBy = "å¹´" ) {
        // ç›®æ ‡
        traverse ( placeOfProductionOfArrayList, Elements, placeOfProductionOfArray ) {
          productCodeList := CapacityAndSaleBudgeChartRow::GetProductCodesByPlaceOfProductionOfArray( rows, placeOfProductionOfArray );
          this.CapacityAndSaleBudgeChartElement( relnew,
                                                 TimeStringAndScenarioName := [String]year.YearNo() + "å¹´-目标",
                                                 BusinessTypeOrPlaceOfProductionOfArray := placeOfProductionOfArray,
                                                 Quantity := ifexpr( saleOrCapacity = "销售额",
                                                                     Global_MappingAnnualBudgetData::GetSaleByYear( productCodeList, otdTable, year.YearNo() ),
                                                                     Global_MappingForecast::GetQuantityByYear( productCodeList, otdTable, year.YearNo() ) )
                                                );
          // S&OP
          traverse ( macroPlans, Elements, macroPlan ) {
            this.CapacityAndSaleBudgeChartElement( relnew,
                                                   TimeStringAndScenarioName := [String]year.YearNo() + "å¹´-" + macroPlan.ScenarioName(),
                                                   BusinessTypeOrPlaceOfProductionOfArray := placeOfProductionOfArray,
                                                   Quantity := ifexpr( saleOrCapacity = "销售额",
                                                                       Forecast::GetFulfilledBalanceByYear( productCodeList, macroPlan, year.YearNo() ),
                                                                       Product_MP::GetNewSupplyByYear( productCodeList, macroPlan, year.YearNo() )
                                                                       )
                                                   );
          }
        }
      }
      if ( byBusinessTypeOrByOrgCode = "面板基地" and groupBy = "半年" ) {
        for( halfNo := 1; halfNo <= 2; halfNo := halfNo + 1 ) {
          traverse( placeOfProductionOfArrayList, Elements, placeOfProductionOfArray ) {
            productCodeList := CapacityAndSaleBudgeChartRow::GetProductCodesByPlaceOfProductionOfArray( rows, placeOfProductionOfArray );
            this.CapacityAndSaleBudgeChartElement( relnew,
                                                   TimeStringAndScenarioName := [String]year.YearNo() + "å¹´-" + ifexpr( halfNo = 1, "上", "下" ) + "半年-目标",
                                                   BusinessTypeOrPlaceOfProductionOfArray := placeOfProductionOfArray,
                                                   Quantity := ifexpr( saleOrCapacity = "销售额",
                                                                       Global_MappingAnnualBudgetData::GetSaleByHalfYear( productCodeList, otdTable, year.YearNo(), halfNo ),
                                                                       Global_MappingForecast::GetQuantityByHalfYear( productCodeList, otdTable, year.YearNo(), halfNo ) )
                                                   );
            // S&OP
            traverse( macroPlans, Elements, macroPlan ) {
              this.CapacityAndSaleBudgeChartElement( relnew,
                                                     TimeStringAndScenarioName := [String]year.YearNo() + "å¹´-" + ifexpr( halfNo = 1, "上", "下" ) + "半年-" + macroPlan.ScenarioName(),
                                                     BusinessTypeOrPlaceOfProductionOfArray := placeOfProductionOfArray,
                                                     Quantity := ifexpr( saleOrCapacity = "销售额",
                                                                         Forecast::GetFulfilledBalanceByHalfYear( productCodeList, macroPlan, year.YearNo(), halfNo ),
                                                                         Product_MP::GetNewSupplyByHalfYear( productCodeList, macroPlan, year.YearNo(), halfNo )
                                                                         )
                                                     );
            }
          }
        }
      }
      if ( byBusinessTypeOrByOrgCode = "面板基地" and groupBy = "季度" ) {
        for( seasonNo := 1; seasonNo <= 4; seasonNo := seasonNo + 1 ) {
          traverse( placeOfProductionOfArrayList, Elements, placeOfProductionOfArray ) {
            productCodeList := CapacityAndSaleBudgeChartRow::GetProductCodesByPlaceOfProductionOfArray( rows, placeOfProductionOfArray );
            this.CapacityAndSaleBudgeChartElement( relnew,
                                                   TimeStringAndScenarioName := [String]year.YearNo() + "å¹´-第" + [String]seasonNo + "季度-目标",
                                                   BusinessTypeOrPlaceOfProductionOfArray := placeOfProductionOfArray,
                                                   Quantity := ifexpr( saleOrCapacity = "销售额",
                                                                       Global_MappingAnnualBudgetData::GetSaleBySeason( productCodeList, otdTable, year.YearNo(), seasonNo ),
                                                                       Global_MappingForecast::GetQuantityBySeason( productCodeList, otdTable, year.YearNo(), seasonNo ) )
                                                   );
      //      info( "productCodeList : " + [String]productCodeList.Size() );
            // S&OP
            traverse( macroPlans, Elements, macroPlan ) {
              this.CapacityAndSaleBudgeChartElement( relnew,
                                                     TimeStringAndScenarioName := [String]year.YearNo() + "å¹´-第" + [String]seasonNo + "季度-" + macroPlan.ScenarioName(),
                                                     BusinessTypeOrPlaceOfProductionOfArray := placeOfProductionOfArray,
                                                     Quantity := ifexpr( saleOrCapacity = "销售额",
                                                                         Forecast::GetFulfilledBalanceBySeason( productCodeList, macroPlan, year.YearNo(), seasonNo ) ,
                                                                         Product_MP::GetNewSupplyBySeason( productCodeList, macroPlan, year.YearNo(), seasonNo )
                                                                         )
                                                     );
            }
          }
        }
      }
      if ( byBusinessTypeOrByOrgCode = "面板基地" and groupBy = "月" ) {
        traverse( months, Elements, month ) {
    //      info( "process month start : " + [String]month.MonthNo() );
          monthNoString := ifexpr( month.MonthNo() <= 9, "0" + [String]month.MonthNo(), [String]month.MonthNo() );
          traverse( placeOfProductionOfArrayList, Elements, placeOfProductionOfArray ) {
            productCodeList := CapacityAndSaleBudgeChartRow::GetProductCodesByPlaceOfProductionOfArray( rows, placeOfProductionOfArray );
            this.CapacityAndSaleBudgeChartElement( relnew,
                                                   TimeStringAndScenarioName := [String]year.YearNo() + "å¹´-第" + monthNoString + "月-目标",
                                                   BusinessTypeOrPlaceOfProductionOfArray := placeOfProductionOfArray,
                                                   Quantity := ifexpr( saleOrCapacity = "销售额",
                                                                       Global_MappingAnnualBudgetData::GetSaleByMonth( productCodeList, otdTable, year.YearNo(), month.MonthNo() ),
                                                                       Global_MappingForecast::GetQuantityByMonth( productCodeList, otdTable, year.YearNo(), month.MonthNo() ) )
                                                   );
            // S&OP
            traverse( macroPlans, Elements, macroPlan ) {
              this.CapacityAndSaleBudgeChartElement( relnew,
                                                     TimeStringAndScenarioName := [String]year.YearNo() + "å¹´-第" + monthNoString + "月-" + macroPlan.ScenarioName(),
                                                     BusinessTypeOrPlaceOfProductionOfArray := placeOfProductionOfArray,
                                                     Quantity := ifexpr( saleOrCapacity = "销售额",
                                                                         Forecast::GetFulfilledBalanceByMonth( productCodeList, macroPlan, year.YearNo(), month.MonthNo() ),
                                                                         Product_MP::GetNewSupplyByMonth( productCodeList, macroPlan, year.YearNo(), month.MonthNo() )
                                                                         )
                                                     );
            }
          }
    //      info( "process month end : " + [String]month.MonthNo() );
        }
      }
      if( byBusinessTypeOrByOrgCode = "事业部" and groupBy = "å¹´" ) {
        // ç›®æ ‡
        traverse( businessTypeList, Elements, businessType ) {
          productCodeList := CapacityAndSaleBudgeChartRow::GetProductCodesByBusinessType( rows, businessType );
          this.CapacityAndSaleBudgeChartElement( relnew,
                                                 TimeStringAndScenarioName := [String]year.YearNo() + "å¹´-目标",
                                                 BusinessTypeOrPlaceOfProductionOfArray := businessType,
                                                 Quantity := ifexpr( saleOrCapacity = "销售额",
                                                                     Global_MappingAnnualBudgetData::GetSaleByYear( productCodeList, otdTable, year.YearNo() ),
                                                                     Global_MappingForecast::GetQuantityByYear( productCodeList, otdTable, year.YearNo() ) )
                                                 );
          // S&OP
          traverse( macroPlans, Elements, macroPlan ) {
            this.CapacityAndSaleBudgeChartElement( relnew,
                                                   TimeStringAndScenarioName := [String]year.YearNo() + "å¹´-" + macroPlan.ScenarioName(),
                                                   BusinessTypeOrPlaceOfProductionOfArray := businessType,
                                                   Quantity := ifexpr( saleOrCapacity = "销售额",
                                                                       Forecast::GetFulfilledBalanceByYear( productCodeList, macroPlan, year.YearNo() ) ,
                                                                       Product_MP::GetNewSupplyByYear( productCodeList, macroPlan, year.YearNo() )
                                                                       )
                                                   );
          }
        }
      }
      if ( byBusinessTypeOrByOrgCode = "事业部" and groupBy = "半年" ) {
        for( halfNo := 1; halfNo <= 2; halfNo := halfNo + 1 ) {
          traverse( businessTypeList, Elements, businessType ) {
            productCodeList := CapacityAndSaleBudgeChartRow::GetProductCodesByBusinessType( rows, businessType );
            this.CapacityAndSaleBudgeChartElement( relnew,
                                                   TimeStringAndScenarioName := [String]year.YearNo() + "å¹´-" + ifexpr( halfNo = 1, "上", "下" ) + "半年-目标",
                                                   BusinessTypeOrPlaceOfProductionOfArray := businessType,
                                                   Quantity := ifexpr( saleOrCapacity = "销售额",
                                                                       Global_MappingAnnualBudgetData::GetSaleByHalfYear( productCodeList, otdTable, year.YearNo(), halfNo ),
                                                                       Global_MappingForecast::GetQuantityByHalfYear( productCodeList, otdTable, year.YearNo(), halfNo ) )
                                                   );
            // S&OP
            traverse( macroPlans, Elements, macroPlan ) {
              this.CapacityAndSaleBudgeChartElement( relnew,
                                                     TimeStringAndScenarioName := [String]year.YearNo() + "å¹´-" + ifexpr( halfNo = 1, "上", "下" ) + "半年-" + macroPlan.ScenarioName(),
                                                     BusinessTypeOrPlaceOfProductionOfArray := businessType,
                                                     Quantity := ifexpr( saleOrCapacity = "销售额",
                                                                         Forecast::GetFulfilledBalanceByHalfYear( productCodeList, macroPlan, year.YearNo(), halfNo ) ,
                                                                         Product_MP::GetNewSupplyByHalfYear( productCodeList, macroPlan, year.YearNo(), halfNo )
                                                                         )
                                                     );
            }
          }
        }
      }
      if ( byBusinessTypeOrByOrgCode = "事业部" and groupBy = "季度" ) {
        for( seasonNo := 1; seasonNo <= 4; seasonNo := seasonNo + 1 ) {
    //      debuginfo( "process season start : " + [String]seasonNo );
          traverse( businessTypeList, Elements, businessType ) {
            productCodeList := CapacityAndSaleBudgeChartRow::GetProductCodesByBusinessType( rows, businessType );
            this.CapacityAndSaleBudgeChartElement( relnew,
                                                   TimeStringAndScenarioName := [String]year.YearNo() + "å¹´-第" + [String]seasonNo + "季度-目标",
                                                   BusinessTypeOrPlaceOfProductionOfArray := businessType,
                                                   Quantity := ifexpr( saleOrCapacity = "销售额",
                                                                       Global_MappingAnnualBudgetData::GetSaleBySeason( productCodeList, otdTable, year.YearNo(), seasonNo ),
                                                                       Global_MappingForecast::GetQuantityBySeason( productCodeList, otdTable, year.YearNo(), seasonNo ) )
                                                   );
            // S&OP
            traverse( macroPlans, Elements, macroPlan ) {
              this.CapacityAndSaleBudgeChartElement( relnew,
                                                     TimeStringAndScenarioName := [String]year.YearNo() + "å¹´-第" + [String]seasonNo + "季度-" + macroPlan.ScenarioName(),
                                                     BusinessTypeOrPlaceOfProductionOfArray := businessType,
                                                     Quantity := ifexpr( saleOrCapacity = "销售额",
                                                                         Forecast::GetFulfilledBalanceBySeason( productCodeList, macroPlan, year.YearNo(), seasonNo ),
                                                                         Product_MP::GetNewSupplyBySeason( productCodeList, macroPlan, year.YearNo(), seasonNo )
                                                                         )
                                                     );
            }
          }
    //      info( "process season end : " + [String]seasonNo );
        }
      }
      if ( byBusinessTypeOrByOrgCode = "事业部" and groupBy = "月" ) {
        traverse( months, Elements, month ) {
    //      debuginfo( "process month start : " + [String]month.MonthNo() );
          monthNoString := ifexpr( month.MonthNo() <= 9, "0" + [String]month.MonthNo(), [String]month.MonthNo() );
          traverse( businessTypeList, Elements, businessType ) {
            productCodeList := CapacityAndSaleBudgeChartRow::GetProductCodesByBusinessType( rows, businessType );
            this.CapacityAndSaleBudgeChartElement( relnew,
                                                   TimeStringAndScenarioName := [String]year.YearNo() + "å¹´-第" + monthNoString + "月-目标",
                                                   BusinessTypeOrPlaceOfProductionOfArray := businessType,
                                                   Quantity := ifexpr( saleOrCapacity = "销售额",
                                                                       Global_MappingAnnualBudgetData::GetSaleByMonth( productCodeList, otdTable, year.YearNo(), month.MonthNo() ),
                                                                       Global_MappingForecast::GetQuantityByMonth( productCodeList, otdTable, year.YearNo(), month.MonthNo() ) )
                                                   );
            // S&OP
            traverse( macroPlans, Elements, macroPlan ) {
              this.CapacityAndSaleBudgeChartElement( relnew,
                                                     TimeStringAndScenarioName := [String]year.YearNo() + "å¹´-第" + monthNoString + "月-" + macroPlan.ScenarioName(),
                                                     BusinessTypeOrPlaceOfProductionOfArray := businessType,
                                                     Quantity := ifexpr( saleOrCapacity = "销售额",
                                                                         Forecast::GetFulfilledBalanceByMonth( productCodeList, macroPlan, year.YearNo(), month.MonthNo() ) ,
                                                                         Product_MP::GetNewSupplyByMonth( productCodeList, macroPlan, year.YearNo(), month.MonthNo() )
                                                                         )
                                                     );
            }
          }
    //      debuginfo( "process month end : " + [String]month.MonthNo() );
        }
      }
    }
    ////info( "CapacityAndSaleBudgeChartElement : " + [String]selectset( this, CapacityAndSaleBudgeChartElement, item, true ).Size() );
    ////traverse( this, CapacityAndSaleBudgeChartRow, row ) {
    ////  info( "==↓==" );
    ////  info( row.BusinessType() );
    ////  info( row.PlaceOfProductionOfArray() );
    ////  elements := selectset( row, CapacityAndSaleBudgeChartRowProduct, cell, true );
    ////  info( elements.Size() );
    ////  info( row.GetProductCodes().Concatenate( " | " ) );
    ////  info( "==↑==" );
    ////}
    CapacityAndSaleBudgeChartElement::CreateData( this, macroPlans, casbcirs, popoa, groupBy, saleOrCapacity, years, months );
  *]
}
_Main/BL/Type_GlobalOTDSOP/Method_CapacityAndSaleBudgeCompare.qbl
@@ -3,87 +3,52 @@
Method CapacityAndSaleBudgeCompare (
  MacroPlans macroPlans,
  CapacityAndSaleBudgeFilterItems items,
  CapacityAndSaleBudgeFilterPlaceOfProductionOfArrays casbfpopoas,
  CapacityAndSaleBudgeFilterBusinessTypes casbfbts,
  CapacityAndSaleBudgeFilterYears years,
  CapacityAndSaleBudgeFilterMonths months,
  const GlobalOTDTable globalOTDTable
)
) as stream[GlobalOTDSOP]
{
  Description: 'todo : mappingParent改为mpSync, random删了'
  TextBody:
  [*
    if ( years.Size() = 0 ) {
      years := selectset( this, CapacityAndSaleBudgeFilterYear, tempCASBFY, tempCASBFY.YearNo() = Date::ActualDate().Year() );
    }
    if ( months.Size() = 0 ) {
      months := selectsortedset( this, CapacityAndSaleBudgeFilterMonth, item, item.MonthNo() );
    }
    this.CapacityAndSaleBudgeCompareItemRow( relflush );
    this.CapacityAndSaleBudgeCompareItemColumn( relflush );
    
    CapacityAndSaleBudgeCompareItemCell::CreateData( globalOTDTable, this );
    if ( CapacityAndSaleBudgeFilterItem::Contains( items, "面板分配量" ) ) {
      traverse ( years, Elements, year ) {
        CapacityAndSaleBudgeCompareItemCell::CreatePanelAllocationBudget( this, months, year, globalOTDTable );
        CapacityAndSaleBudgeCompareItemCell::CreatePanelAllocationByScenario( macroPlans, this, months, year );
      }
    //CapacityAndSaleBudgeCompareItemCell::SetFilterCriteria( this, &items, &casbfpopoas, &casbfbts, &years, &months );
    //---------------------------------------------------------------------------
    if ( items.Size() = 0 ) {
      items := selectset( this, CapacityAndSaleBudgeFilterItem, tempCASBFI, tempCASBFI.ItemName() = "销售额" );
    }
    
    if ( CapacityAndSaleBudgeFilterItem::Contains( items, "销售额" ) ) {
      traverse ( years, Elements, year ) {
        CapacityAndSaleBudgeCompareItemCell::CreateSalesVolume( this, months, year, globalOTDTable );
        CapacityAndSaleBudgeCompareItemCell::CreateSalesVolumeByScenario( macroPlans, this, months, year );
      }
    if ( casbfpopoas.Size() = 0 ) {
      casbfpopoas := selectset( this, CapacityAndSaleBudgeFilterPlaceOfProductionOfArray, tempCASBFPOPOA, true );
    }
    
    // å¤§å¼ ç›ˆåˆ©é¢
    //traverse ( years, Elements, year ) {
    //  // åŽ†å²æ•°æ®
    //  columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "大张盈利额-" + [String]year.YearNo() + "å¹´-年度预算" );
    //  traverse ( this, CapacityAndSaleBudgeCompareItemRow, row ) {
    //    cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]Number::Random( 0, 0 ) );
    //    cell.CapacityAndSaleBudgeCompareItemRow( relset, row );
    //  }
    //  // S&OP数据
    //  traverse( macroPlans, Elements, macroPlan ) {
    //    columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "大张盈利额-" + [String]year.YearNo() + "å¹´-" + macroPlan.ScenarioName() );
    //    traverse( this, CapacityAndSaleBudgeCompareItemRow, row ) {
    //      cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]Number::Random( 0, 0 ) );
    //      cell.CapacityAndSaleBudgeCompareItemRow( relset, row );
    //    }
    //  }
    //}
    //// äº§å“ç›ˆåˆ©é¢
    //traverse ( years, Elements, year ) {
    //  // åŽ†å²æ•°æ®
    //  columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "产品盈利额-" + [String]year.YearNo() + "å¹´-年度预算" );
    //  traverse ( this, CapacityAndSaleBudgeCompareItemRow, row ) {
    //    cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]Number::Random( 0, 0 ) );
    //    cell.CapacityAndSaleBudgeCompareItemRow( relset, row );
    //  }
    //  // S&OP数据
    //  traverse ( macroPlans, Elements, macroPlan ) {
    //    columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "产品盈利额-" + [String]year.YearNo() + "å¹´-" + macroPlan.ScenarioName() );
    //    traverse ( this, CapacityAndSaleBudgeCompareItemRow, row ) {
    //      // todo
    //      cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]Number::Random( 0, 0 ) );
    //      cell.CapacityAndSaleBudgeCompareItemRow( relset, row );
    //    }
    //  }
    //}
    if ( casbfbts.Size() = 0 ) {
      casbfbts := selectset( this, CapacityAndSaleBudgeFilterBusinessType, tempCASBFBT, true );
    }
    
    // è®¾ç½®rowNo和columnNo
    rowNo := 1;
    rowSorted := selectsortedset( this, CapacityAndSaleBudgeCompareItemRow, item, item.PlaceOfProductionOfArray() + "_" + item.BusinessType() );
    traverse( rowSorted, Elements, item ) {
      item.RowNo( rowNo );
      rowNo := rowNo + 1;
    if ( years.Size() = 0 ) {
      years := selectset( this, CapacityAndSaleBudgeFilterYear, tempCASBFY, tempCASBFY.YearNo() = Date::ActualDate().Year() );
    } else {
      years := selectsortedset( years, Elements, tempCASBFY, true, tempCASBFY.YearNo() );
    }
    columnNo := 1;
    traverse( this, CapacityAndSaleBudgeCompareItemColumn, item ) {
      item.ColumnNo( columnNo );
      columnNo := columnNo + 1;
    if ( months.Size() = 0 ) {
      months := selectsortedset( this, CapacityAndSaleBudgeFilterMonth, tempCASBFM, true, tempCASBFM.MonthNo() );
    } else {
      months := selectsortedset( months, Elements, tempCASBFM, true, tempCASBFM.MonthNo() );
    }
    //---------------------------------------------------------------------------
    CapacityAndSaleBudgeCompareItemCell::GenerateBasicDataBasedOnFilteringCriteria( this, globalOTDTable, items, casbfpopoas, casbfbts );
    CapacityAndSaleBudgeCompareItemCell::CreateSalesVolumeData( macroPlans, globalOTDTable, this, items, years, months );
    CapacityAndSaleBudgeCompareItemCell::CreatePanelAllocation( macroPlans, globalOTDTable, this, items, years, months );
    return emit( this );
  *]
}
_Main/BL/Type_GlobalOTDSOP/Method_SetCapacityAndSaleBudgeRunStatus.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
#parent: #root
Method SetCapacityAndSaleBudgeRunStatus
{
  TextBody:
  [*
    this.CapacityAndSaleBudgeRunStatus( relflush );
    this.CapacityAndSaleBudgeRunStatus( relnew, RunSataus := 0 );
  *]
}
_Main/BL/Type_GlobalOTDSOP/StaticMethod_Test.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,14 @@
Quintiq file version 2.0
#parent: #root
StaticMethod Test (
  GlobalOTDSOP this,
  MacroPlans macroPlans,
  owning CapacityAndSaleBudgeFilterItems items,
  owning CapacityAndSaleBudgeFilterPlaceOfProductionOfArrays casbfpopoas,
  owning CapacityAndSaleBudgeFilterBusinessTypes casbfbts,
  owning CapacityAndSaleBudgeFilterYears years,
  owning CapacityAndSaleBudgeFilterMonths months,
  const GlobalOTDTable globalOTDTable
)
{
}
_Main/BL/Type_Global_MappingAnnualBudgetData/StaticMethod_CreateData.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,9 @@
Quintiq file version 2.0
#parent: #root
StaticMethod CreateData (
  GlobalOTDTable this,
  String executionUser
)
{
  TextBody: 'Global_MappingAnnualBudgetData::SynchronizeInterfaceData( this, executionUser, "Global_MappingAnnualBudgetData" );'
}
_Main/BL/Type_Global_MappingAnnualBudgetData/StaticMethod_SynchronizeInterfaceData.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,18 @@
Quintiq file version 2.0
#parent: #root
StaticMethod SynchronizeInterfaceData (
  GlobalOTDTable globalOTDTable,
  String executionUser,
  String brokerName
)
{
  TextBody:
  [*
    globalOTDTable.Global_MappingAnnualBudgetData( relflush );
    isCanRun := Global_BrokerExecuteLog::CanRun( globalOTDTable, brokerName );
    if ( not isCanRun ) {
      Global_BrokerExecuteLog::CreateInOperation( globalOTDTable, brokerName, executionUser );
      globalOTDTable.GlobalOTDTable_AnnualBudgetData().AsyncExecute();
    }
  *]
}
_Main/BL/Type_Global_MappingAnnualBudgetReview/Attribute_Item.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,9 @@
Quintiq file version 2.0
#parent: #root
Attribute Item
{
  #keys: '3[414702.1.390427039][414702.1.390427038][414702.1.390427040]'
  Description: '物料'
  IsReadOnly: true
  ValueType: String
}
_Main/BL/Type_Global_MappingAnnualBudgetReview/Attribute_OrganCode.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,9 @@
Quintiq file version 2.0
#parent: #root
Attribute OrganCode
{
  #keys: '3[414702.1.390427006][414702.1.390427005][414702.1.390427007]'
  Description: '组织编码'
  IsReadOnly: true
  ValueType: String
}
_Main/BL/Type_Global_MappingAnnualBudgetReview/Attribute_OrganName.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,9 @@
Quintiq file version 2.0
#parent: #root
Attribute OrganName
{
  #keys: '3[414702.1.390427016][414702.1.390427015][414702.1.390427017]'
  Description: '组织名称'
  IsReadOnly: true
  ValueType: String
}
_Main/BL/Type_Global_MappingAnnualBudgetReview/Attribute_PlantName.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,9 @@
Quintiq file version 2.0
#parent: #root
Attribute PlantName
{
  #keys: '3[414702.1.390427026][414702.1.390427025][414702.1.390427027]'
  Description: '工厂名称'
  IsReadOnly: true
  ValueType: String
}
_Main/BL/Type_Global_MappingAnnualBudgetReview/Attribute_TransactionDate.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute TransactionDate
{
  #keys: '3[414702.1.390427059][414702.1.390427058][414702.1.390427060]'
  IsReadOnly: true
  ValueType: Date
}
_Main/BL/Type_Global_MappingAnnualBudgetReview/Attribute_TransactionQTY.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute TransactionQTY
{
  #keys: '3[414702.1.390427049][414702.1.390427048][414702.1.390427050]'
  Description: '入库数量'
  ValueType: Real
}
_Main/BL/Type_Global_MappingAnnualBudgetReview/StaticMethod_SynchronizeInterfaceData.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,18 @@
Quintiq file version 2.0
#parent: #root
StaticMethod SynchronizeInterfaceData (
  GlobalOTDTable globalOTDTable,
  String executionUser,
  String brokerName
)
{
  TextBody:
  [*
    globalOTDTable.Global_MappingSummaryOfInboundTransaction( relflush );
    isCanRun := Global_BrokerExecuteLog::CanRun( globalOTDTable, brokerName );
    if ( not isCanRun ) {
      Global_BrokerExecuteLog::CreateInOperation( globalOTDTable, brokerName, executionUser );
      globalOTDTable.GlobalOTDTable_SummaryOfInboundTransaction().AsyncExecute();
    }
  *]
}
_Main/BL/Type_Global_MappingAnnualBudgetReview/TypeIndex_Global_MappingSummaryOfInboundTransactionTypeIndex.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,28 @@
Quintiq file version 2.0
#parent: #root
TypeIndex Global_MappingSummaryOfInboundTransactionTypeIndex
{
  Attributes:
  [
    TypeIndexAttribute
    {
      ModelElement: OrganCode
    }
    TypeIndexAttribute
    {
      ModelElement: PlantName
    }
    TypeIndexAttribute
    {
      ModelElement: OrganName
    }
    TypeIndexAttribute
    {
      ModelElement: Item
    }
    TypeIndexAttribute
    {
      ModelElement: TransactionDate
    }
  ]
}
_Main/BL/Type_Global_MappingAnnualBudgetReview/_ROOT_Type_Global_MappingSummaryOfInboundTransaction.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,9 @@
Quintiq file version 2.0
#root
#parent: #DomainModel
Type Global_MappingSummaryOfInboundTransaction
{
  #keys: '5[414702.1.390426984][414702.1.390426982][0.0.0][414702.1.390426983][414702.1.390426985]'
  BaseType: Object
  StructuredName: 'Global_MappingSummaryOfInboundTransactions'
}
_Main/BL/Type_Global_MappingCurrency_MP/StaticMethod_CreateByAPI.qbl
@@ -31,7 +31,8 @@
      globalOTDTable.Global_MappingCurrency_MP( relnew,
                                                ID     := guard( datalist.Get( j ).Get( "id" ).GetString(), "" ),
                                                Name   := guard( datalist.Get( j ).Get( "name" ).GetString(), "" ),
                                                IsBase := guard( datalist.Get( j ).Get( "isbase" ).GetBoolean(), false )
    //                                            IsBase := guard( datalist.Get( j ).Get( "isbase" ).GetBoolean(), false )
                                                IsBase := ifexpr( datalist.Get( j ).Get( "isbase" ).GetString() = "TRUE", true, false )
                                               );
    }
    
_Main/BL/Type_MacroPlan/StaticMethod_DoASync#253.qbl
@@ -22,9 +22,10 @@
    organcodelist := selectvalues( businessType, OrganCode, organ, true, organ.OrganCodeName() );
    
    if( organcodelist.Size() = 0 ){
      organcodelist := selectvalues( globalOTDTable, Global_MappingOperationBOM, bom,true, bom.OrganCode() );
      organcodelist := selectuniquevalues( globalOTDTable, Global_MappingOperationBOM, bom,true, bom.OrganCode() );
      }
    
    info( "Organcode list : " + organcodelist.ToString( "-" ) );
    info( "KeyProduct : " + [String]isKeyProduct )
    info( "Create purchase supply material : " + [String]createPurchaseSupplyMaterial )
    
_Main/BL/Type_ModulePanelCorrespondence/Attribute_IsModule.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute IsModule
{
  #keys: '3[414702.1.376024042][414702.1.376024041][414702.1.376024043]'
  ValueType: Boolean
}
_Main/BL/Type_ModulePanelCorrespondence/Attribute_ModuleProductID.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute ModuleProductID
{
  #keys: '3[414702.1.376547011][414702.1.376547010][414702.1.376547012]'
  ValueType: String
}
_Main/BL/Type_ModulePanelCorrespondence/Attribute_ModuleStockingPointID.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute ModuleStockingPointID
{
  #keys: '3[414702.1.376547021][414702.1.376547020][414702.1.376547022]'
  ValueType: String
}
_Main/BL/Type_ModulePanelCorrespondence/Attribute_PanelProductID.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute PanelProductID
{
  #keys: '3[414702.1.376547074][414702.1.376547073][414702.1.376547075]'
  ValueType: String
}
_Main/BL/Type_ModulePanelCorrespondence/Attribute_PanelStockingPointID.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute PanelStockingPointID
{
  #keys: '3[414702.1.376547084][414702.1.376547083][414702.1.376547085]'
  ValueType: String
}
_Main/BL/Type_ModulePanelCorrespondence/StaticMethod_CreateModule.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,19 @@
Quintiq file version 2.0
#parent: #root
StaticMethod CreateModule (
  GlobalOTDSOP globalOTDSOP,
  ProductInStockingPoint_MPs pisps
)
{
  TextBody:
  [*
    traverse ( pisps, Elements, pisp ) {
      targetModulePanelCorrespondence := select( globalOTDSOP, ModulePanelCorrespondence, tempMPC,
                                                 tempMPC.ModuleProductID() = pisp.ProductID() and
                                                 tempMPC.ModuleStockingPointID() = pisp.StockingPointID() );
      if ( isnull( targetModulePanelCorrespondence ) ) {
        globalOTDSOP.ModulePanelCorrespondence( relnew, ModuleProductID := pisp.ProductID(), ModuleStockingPointID := pisp.StockingPointID(), IsModule := true );
      }
    }
  *]
}
_Main/BL/Type_ModulePanelCorrespondence/StaticMethod_CreatePanel.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
Quintiq file version 2.0
#parent: #root
StaticMethod CreatePanel (
  GlobalOTDSOP globalOTDSOP,
  ModulePanelCorrespondences modulePanelCorrespondences,
  ProductInStockingPoint_MPs pisps
)
{
  TextBody:
  [*
    traverse ( modulePanelCorrespondences, Elements, mpc ) {
      traverse ( pisps, Elements, pisp ) {
        targetPanel := select( mpc, Panel, tempP,
                               tempP.PanelProductID() = pisp.ProductID() and
                               tempP.PanelStockingPointID() = pisp.StockingPointID() );
        if ( isnull( targetPanel ) ) {
          targetPanel := globalOTDSOP.ModulePanelCorrespondence( relnew, PanelProductID := pisp.ProductID(), PanelStockingPointID := pisp.StockingPointID() );
          targetPanel.Module( relset, mpc );
        }
      }
    }
  *]
}
_Main/BL/Type_ModulePanelCorrespondence/StaticMethod_DeleteModule.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,20 @@
Quintiq file version 2.0
#parent: #root
StaticMethod DeleteModule (
  GlobalOTDSOP globalOTDSOP,
  ProductInStockingPoint_MPs pisps
)
{
  TextBody:
  [*
    traverse ( pisps, Elements, pisp ) {
      targetModulePanelCorrespondence := select( globalOTDSOP, ModulePanelCorrespondence, tempMPC,
                                                 tempMPC.ModuleProductID() = pisp.ProductID() and
                                                 tempMPC.ModuleStockingPointID() = pisp.StockingPointID() and
                                                 tempMPC.IsModule() );
      if ( not isnull( targetModulePanelCorrespondence ) ) {
        targetModulePanelCorrespondence.Delete();
      }
    }
  *]
}
_Main/BL/Type_ModulePanelCorrespondence/StaticMethod_DeletePanel.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,21 @@
Quintiq file version 2.0
#parent: #root
StaticMethod DeletePanel (
  ModulePanelCorrespondences modulePanelCorrespondences,
  ProductInStockingPoint_MPs pisps
)
{
  TextBody:
  [*
    traverse ( modulePanelCorrespondences, Elements, mpc ) {
      traverse ( pisps, Elements, pisp ) {
        targetPanel := select( mpc, Panel, tempP,
                               tempP.PanelProductID() = pisp.ProductID() and
                               tempP.PanelStockingPointID() = pisp.StockingPointID() );
        if ( not isnull( targetPanel ) ) {
          targetPanel.Delete();
        }
      }
    }
  *]
}
_Main/BL/Type_ModulePanelCorrespondence/StaticMethod_PullCapacityAllocationRule.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,29 @@
Quintiq file version 2.0
#parent: #root
StaticMethod PullCapacityAllocationRule (
  GlobalOTDSOP globalOTDSOP
)
{
  TextBody:
  [*
    globalOTDSOP.ModulePanelCorrespondence( relflush );
    traverse ( globalOTDSOP, CapacityAllocationResultsRuleConfiguration, carrc ) {
      module := select( globalOTDSOP, ModulePanelCorrespondence, tempMPC,
                        tempMPC.ModuleProductID() = carrc.ModuleMaterialCode() and
                        tempMPC.ModuleStockingPointID() = carrc.StockingPointID() );
      if ( isnull( module ) ) {
        module := globalOTDSOP.ModulePanelCorrespondence( relnew,
                                                          ModuleProductID       := carrc.ModuleMaterialCode(),
                                                          ModuleStockingPointID := carrc.StockingPointID(),
                                                          IsModule              := true );
      }
      isExists := exists( module, Panel, tempP, tempP.PanelProductID() = carrc.PanelMaterialCode() );
      if ( not isExists ) {
        panel := globalOTDSOP.ModulePanelCorrespondence( relnew, PanelProductID := carrc.PanelMaterialCode() );
        panel.Module( relset, module );
      }
    }
  *]
}
_Main/BL/Type_ModulePanelCorrespondence/_ROOT_Type_ModulePanelCorrespondence.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,9 @@
Quintiq file version 2.0
#root
#parent: #DomainModel
Type ModulePanelCorrespondence
{
  #keys: '5[414702.1.376546992][414702.1.376546990][0.0.0][414702.1.376546991][414702.1.376546993]'
  BaseType: Object
  StructuredName: 'ModulePanelCorrespondences'
}
_Main/BL/Type_PeggingProductInStockingPoint_MP/Attribute_ProductID.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute ProductID
{
  #keys: '3[414702.1.364041933][414702.1.364041932][414702.1.364041934]'
  ValueType: String
}
_Main/BL/Type_PeggingProductInStockingPoint_MP/Attribute_StartDate.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute StartDate
{
  #keys: '3[414702.1.364041953][414702.1.364041952][414702.1.364041954]'
  ValueType: Date
}
_Main/BL/Type_PeggingProductInStockingPoint_MP/Attribute_StockingPointID.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute StockingPointID
{
  #keys: '3[414702.1.364041943][414702.1.364041942][414702.1.364041944]'
  ValueType: String
}
_Main/BL/Type_PeggingProductInStockingPoint_MP/_ROOT_Type_PeggingProductInStockingPoint_MP.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,9 @@
Quintiq file version 2.0
#root
#parent: #DomainModel
Type PeggingProductInStockingPoint_MP
{
  #keys: '5[414702.1.364041911][414702.1.364041909][0.0.0][414702.1.364041910][414702.1.364041912]'
  BaseType: Object
  StructuredName: 'PeggingProductInStockingPoint_MPs'
}
_Main/BL/Type_PeggingProduct_MP/StaticMethod_Create.qbl
@@ -2,24 +2,17 @@
#parent: #root
StaticMethod Create (
  GlobalOTDSOP globalOTDSOP,
  Product_MPs product_MPs
)
  String productID
) as PeggingProduct_MP
{
  TextBody:
  [*
    globalOTDSOP.PeggingProduct_MP( relflush );
    targetPeggingProduct_MP := select( globalOTDSOP, PeggingProduct_MP, tempPPMP, tempPPMP.ProductID() = productID );
    
    product_MPs := selectset( product_MPs, Elements, tempPMP, tempPMP.IsLeaf() );
    traverse ( product_MPs, Elements, pmp ) {
      targetPeggingProduct_MP := globalOTDSOP.PeggingProduct_MP( relnew, ProductID := pmp.ID() );
      traverse ( pmp, SalesDemand, sd ) {
        targetPeggingProduct_MP.PeggingProductInSalesDemandBase( relnew,
                                                                 StockingPointID   := sd.StockingPointID(),
                                                                 SalesDemandBaseID := sd.ID(),
                                                                 Quantity          := sd.Quantity(),
                                                                 StartDate         := sd.StartDate() );
      }
    if ( isnull( targetPeggingProduct_MP ) ) {
      targetPeggingProduct_MP := globalOTDSOP.PeggingProduct_MP( relnew, ProductID := productID );
    }
    return targetPeggingProduct_MP;
  *]
}
_Main/BL/Type_PeggingProduct_MP/StaticMethod_CreateData.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,18 @@
Quintiq file version 2.0
#parent: #root
StaticMethod CreateData (
  GlobalOTDSOP globalOTDSOP,
  Product_MPs product_MPs
)
{
  TextBody:
  [*
    globalOTDSOP.PeggingProduct_MP( relflush );
    product_MPs := selectset( product_MPs, Elements, tempPMP, tempPMP.IsLeaf() );
    PeggingProduct_MP::CreateDataForSalesDemandBase( globalOTDSOP, product_MPs );
    PeggingProduct_MP::CreateDataForProductInStocking_MP( globalOTDSOP, product_MPs );
  *]
}
_Main/BL/Type_PeggingProduct_MP/StaticMethod_CreateDataForProductInStocking_MP.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,21 @@
Quintiq file version 2.0
#parent: #root
StaticMethod CreateDataForProductInStocking_MP (
  GlobalOTDSOP globalOTDSOP,
  Product_MPs product_MPs
)
{
  TextBody:
  [*
    traverse ( product_MPs, Elements.ProductInStockingPoint_MP, pisp ) {
      targetPeggingProduct_MP := PeggingProduct_MP::Create( globalOTDSOP, pisp.ProductID() );
    //  traverse ( pisp, ProductInStockingPointInPeriodPlanning.astype( ProductInStockingPointInPeriodPlanningLeaf ), pispippl, not pispippl.IsPeriodFrozen() ) {
        targetPeggingProduct_MP.PeggingProductInStockingPoint_MP( relnew,
                                                                  ProductID       := pisp.ProductID(),
                                                                  StockingPointID := pisp.StockingPointID()
    //                                                              StartDate       := pispippl.Start().Date()
                                                                 );
    //  }
    }
  *]
}
_Main/BL/Type_PeggingProduct_MP/StaticMethod_CreateDataForSalesDemandBase.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,21 @@
Quintiq file version 2.0
#parent: #root
StaticMethod CreateDataForSalesDemandBase (
  GlobalOTDSOP globalOTDSOP,
  Product_MPs product_MPs
)
{
  TextBody:
  [*
    traverse ( product_MPs, Elements, pmp ) {
      targetPeggingProduct_MP := PeggingProduct_MP::Create( globalOTDSOP, pmp.ID() );
      traverse ( pmp, SalesDemand, sd ) {
        targetPeggingProduct_MP.PeggingProductInSalesDemandBase( relnew,
                                                                 StockingPointID   := sd.StockingPointID(),
                                                                 SalesDemandBaseID := sd.ID(),
                                                                 Quantity          := sd.Quantity(),
                                                                 StartDate         := sd.StartDate() );
      }
    }
  *]
}
_Main/BL/Type_PeggingResult/StaticMethod_CreateAllGroupChildRelation.qbl
ÎļþÒÑɾ³ý
_Main/BL/Type_PeggingResult/StaticMethod_CreateData.qbl
@@ -22,7 +22,7 @@
      }
      
      PeggingResult::CreateAllChildRelation( ppisdb );
      PeggingResult::CreateAllGroupChildRelation( ppisdb );
      PeggingResult::SetAllChildRelation1( ppisdb );
    }
  *]
}
_Main/BL/Type_PeggingResult/StaticMethod_GenerateNewSupply.qbl
@@ -34,12 +34,14 @@
    //          ns.ProductInStockingPointInPeriodPlanningLeaf().ProductInStockingPoint_MP().Name() );
        traverse ( pto, DependentDemand, dd, dd.Quantity() > 0 ) {
          traverse ( dd, Fulfillment, f ) {
            fulfillmentQuantity := ( dd.Quantity() / ns.Quantity() ) * fulfillmentQuantity;
            totalSupply := sum( dd, Fulfillment, tempF, tempF.Quantity() );
            orderFulfillmentQuantity := ( f.Quantity() / totalSupply ) * fulfillmentQuantity;
            actualFulfillmentQuantity := f.Quantity();
            smp1 := f.Supply_MP();
            numberOfPlies++;
            fulfillmentQuantity := ( dd.Quantity() / ns.Quantity() ) * fulfillmentQuantity;
    //        info( "--------------------------------------------------------------" );
            PeggingResult::GeneratePeggingResult( peggingProductInSalesDemandBase, numberOfPlies, smp1, actualFulfillmentQuantity, fulfillmentQuantity, childPeggingResult );
            PeggingResult::GeneratePeggingResult( peggingProductInSalesDemandBase, numberOfPlies, smp1, actualFulfillmentQuantity, orderFulfillmentQuantity, childPeggingResult );
            numberOfPlies--;
          }
        }
@@ -53,11 +55,13 @@
    //    info( "车道周期任务    ", "供应时间:", ns.Start().Format( "Y-M2-D2" ), "    å‘¨æœŸä»»åŠ¡KEY:", ptll.Key(), "    ", 
    //          ns.ProductInStockingPointInPeriodPlanningLeaf().ProductInStockingPoint_MP().Name() );
        traverse ( targetDependentDemand, Fulfillment, f ) {
          totalSupply := sum( targetDependentDemand, Fulfillment, tempF, tempF.Quantity() );
          orderFulfillmentQuantity := ( f.Quantity() / totalSupply ) * fulfillmentQuantity;
          actualFulfillmentQuantity := f.Quantity();
          smp1 := f.Supply_MP();
          numberOfPlies++;
    //      info( "--------------------------------------------------------------" );
          PeggingResult::GeneratePeggingResult( peggingProductInSalesDemandBase, numberOfPlies, smp1, actualFulfillmentQuantity, fulfillmentQuantity, childPeggingResult );
          PeggingResult::GeneratePeggingResult( peggingProductInSalesDemandBase, numberOfPlies, smp1, actualFulfillmentQuantity, orderFulfillmentQuantity, childPeggingResult );
          numberOfPlies--;
        }
      }
_Main/BL/Type_PeggingResult/StaticMethod_SetAllChildRelation1#809.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,29 @@
Quintiq file version 2.0
#parent: #root
StaticMethod SetAllChildRelation1 (
  PeggingProductInSalesDemandBase ppisdb
)
{
  TextBody:
  [*
    traverse ( ppisdb, PeggingResult, pr, pr.NumberOfPlies() = 0 ) {
      targetPeggingResults := selectset( pr, AllChild, tempPR, tempPR.SupplyType() = "库存供应" );
      traverse ( targetPeggingResults, Elements, cpr ) {
        targetChild := select( pr, AllChild, tempPR,
                               tempPR.PeggingProductInSalesDemandBase().SalesDemandBaseID() = cpr.PeggingProductInSalesDemandBase().SalesDemandBaseID() and
                               tempPR.ProductID() = cpr.ProductID()                                                                                     and
                               tempPR.StockingPointID() = cpr.StockingPointID()                                                                         and
                               tempPR.StartDate() = cpr.StartDate()                                                                                     and
                               tempPR.SupplyType() <> "库存供应"
                              );
        if ( not isnull( targetChild ) ) {
          info( "库存供应数量:", cpr.SupplyQuantity(), "    å…¶ä»–供应数量:", targetChild.SupplyQuantity() );
          targetChild.SupplyQuantity( targetChild.SupplyQuantity() + cpr.SupplyQuantity() );
          targetChild.FulfillmentQuantity( targetChild.FulfillmentQuantity() + cpr.FulfillmentQuantity() );
          targetChild.SupplyType( targetChild.SupplyType() + " + " + cpr.SupplyType() );
          cpr.Delete();
        }
      }
    }
  *]
}
_Main/BL/Type_PeggingResult/StaticMethod_SetAllChildRelation1.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,9 @@
Quintiq file version 2.0
#parent: #root
StaticMethod SetAllChildRelation1
{
  TextBody:
  [*
    // hongjli Nov-1-2023 (created)
  *]
}
_Main/BL/Type_PeggingResultGroup/_ROOT_Type_PeggingResultGroup.qbl
ÎļþÒÑɾ³ý
_Main/BL/Type_PeggingResultProductInStockingPoint_MP/Attribute_ActualFulfillmentQuantity.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute ActualFulfillmentQuantity
{
  #keys: '3[414702.1.362210027][414702.1.362210026][414702.1.362210028]'
  Description: '实际满足数量'
  ValueType: Real
}
_Main/BL/Type_PeggingResultProductInStockingPoint_MP/Attribute_FulfillmentQuantity.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute FulfillmentQuantity
{
  #keys: '3[414702.1.362210037][414702.1.362210036][414702.1.362210038]'
  Description: '实际需要满足的数量'
  ValueType: Real
}
_Main/BL/Type_PeggingResultProductInStockingPoint_MP/Attribute_NumberOfPlies.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute NumberOfPlies
{
  #keys: '3[414702.1.362210053][414702.1.362210052][414702.1.362210054]'
  ValueType: Number
}
_Main/BL/Type_PeggingResultProductInStockingPoint_MP/Attribute_ProductID.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute ProductID
{
  #keys: '3[414702.1.362210063][414702.1.362210062][414702.1.362210064]'
  ValueType: String
}
_Main/BL/Type_PeggingResultProductInStockingPoint_MP/Attribute_StartDate.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute StartDate
{
  #keys: '3[414702.1.362210073][414702.1.362210072][414702.1.362210074]'
  ValueType: Date
}
_Main/BL/Type_PeggingResultProductInStockingPoint_MP/Attribute_StockingPointID.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute StockingPointID
{
  #keys: '3[414702.1.362210083][414702.1.362210082][414702.1.362210084]'
  ValueType: String
}
_Main/BL/Type_PeggingResultProductInStockingPoint_MP/Attribute_SupplyQuantity.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute SupplyQuantity
{
  #keys: '3[414702.1.362210096][414702.1.362210095][414702.1.362210097]'
  ValueType: Real
}
_Main/BL/Type_PeggingResultProductInStockingPoint_MP/Attribute_SupplyType.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute SupplyType
{
  #keys: '3[414702.1.362210106][414702.1.362210105][414702.1.362210107]'
  ValueType: String
}
_Main/BL/Type_PeggingResultProductInStockingPoint_MP/Attribute_UnitOfMeasurementName.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute UnitOfMeasurementName
{
  #keys: '3[414702.1.362210116][414702.1.362210115][414702.1.362210117]'
  ValueType: String
}
_Main/BL/Type_PeggingResultProductInStockingPoint_MP/StaticMethod_Create.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,31 @@
Quintiq file version 2.0
#parent: #root
StaticMethod Create (
  PeggingProductInStockingPoint_MP peggingProductInStockingPoint_MP,
  String productID,
  String stockingPointID,
  Date startDate,
  Real supplyQuantity,
  Real actualFulfillmentQuantity,
  Real fulfillmentQuantity,
  String supplyType,
  Number numberOfPlies,
  String unitOfMeasurementName
) as PeggingResultProductInStockingPoint_MP
{
  TextBody:
  [*
    peggingResult := peggingProductInStockingPoint_MP.PeggingResultProductInStockingPoint_MP( relnew,
                                                                                              ProductID                 := productID,
                                                                                              StockingPointID           := stockingPointID,
                                                                                              StartDate                 := startDate,
                                                                                              SupplyQuantity            := supplyQuantity,
                                                                                              ActualFulfillmentQuantity := actualFulfillmentQuantity,
                                                                                              FulfillmentQuantity       := fulfillmentQuantity,
                                                                                              SupplyType                := supplyType,
                                                                                              NumberOfPlies             := numberOfPlies,
                                                                                              UnitOfMeasurementName     := unitOfMeasurementName
                                                                                             );
    return peggingResult;
  *]
}
_Main/BL/Type_PeggingResultProductInStockingPoint_MP/StaticMethod_CreateAllChildRelation.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,17 @@
Quintiq file version 2.0
#parent: #root
StaticMethod CreateAllChildRelation (
  PeggingProductInStockingPoint_MP ppisp
)
{
  TextBody:
  [*
    targetPeggingResults := selectset( ppisp, PeggingResultProductInStockingPoint_MP, tempPRPISP, tempPRPISP.NumberOfPlies() = 0 );
    traverse ( targetPeggingResults, Elements, pr ) {
      parentPeggingResult := pr;
      childPeggingResult  := pr;
      PeggingResultProductInStockingPoint_MP::SetAllChildRelation( ppisp, parentPeggingResult, childPeggingResult );
    }
  *]
}
_Main/BL/Type_PeggingResultProductInStockingPoint_MP/StaticMethod_CreateData.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,32 @@
Quintiq file version 2.0
#parent: #root
StaticMethod CreateData (
  PeggingProductInStockingPoint_MPs peggingProductInStockingPoint_MPs,
  const MacroPlan macroPlan
)
{
  TextBody:
  [*
    traverse ( peggingProductInStockingPoint_MPs, Elements, ppispmp ) {
      ppispmp.PeggingResultProductInStockingPoint_MP( relflush );
      targetPISP := select( macroPlan, Product_MP.ProductInStockingPoint_MP, tempPISP,
                            tempPISP.ProductID() = ppispmp.ProductID() and
                            tempPISP.StockingPointID() = ppispmp.StockingPointID()
                           );
      traverse ( targetPISP, ProductInStockingPointInPeriodPlanning.astype( ProductInStockingPointInPeriodPlanningLeaf ), pispippl,
                 not pispippl.IsPeriodFrozen() and pispippl.Supply_MP( relsize ) > 0 ) {
        traverse ( pispippl, Supply_MP, smp, smp.Quantity() > 0 ) {
          PeggingResultProductInStockingPoint_MP::GeneratePeggingResult( ppispmp,
                                                                         0,
                                                                         smp,
                                                                         smp.Quantity(),
                                                                         smp.Quantity(),
                                                                         null( PeggingResultProductInStockingPoint_MP ) );
        }
      }
      PeggingResultProductInStockingPoint_MP::CreateAllChildRelation( ppispmp );
    }
  *]
}
_Main/BL/Type_PeggingResultProductInStockingPoint_MP/StaticMethod_GenerateInventorySupply.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,31 @@
Quintiq file version 2.0
#parent: #root
StaticMethod GenerateInventorySupply (
  PeggingProductInStockingPoint_MP peggingProductInStockingPoint_MP,
  Number numberOfPlies,
  const InventorySupply is,
  Real actualFulfillmentQuantity,
  Real fulfillmentQuantity,
  PeggingResultProductInStockingPoint_MP parentPeggingResultProductInStockingPoint_MP
)
{
  TextBody:
  [*
    //info( "供应类型(InventorySupply)    ", "供应时间:", is.Date().Format( "Y-M2-D2" ), "    ä¾›åº”量:", is.Quantity(),
    //      "    å®žé™…用量:", fulfillmentQuantity, "    ", is.ProductInStockingPoint_MP().Name() );
    pisp := is.ProductInStockingPointInPeriodPlanningLeaf().ProductInStockingPoint_MP();
    childPeggingResultProductInStockingPoint_MP := PeggingResultProductInStockingPoint_MP::Create( peggingProductInStockingPoint_MP,
                                                                                                   pisp.ProductID(),
                                                                                                   pisp.StockingPointID(),
                                                                                                   is.Date(),
                                                                                                   is.Quantity(),
                                                                                                   actualFulfillmentQuantity,
                                                                                                   fulfillmentQuantity,
                                                                                                   "库存供应",
                                                                                                   numberOfPlies,
                                                                                                   pisp.UnitOfMeasureName()
                                                                                                  );
    PeggingResultProductInStockingPoint_MP::SetParentChildRelationship( parentPeggingResultProductInStockingPoint_MP, childPeggingResultProductInStockingPoint_MP );
  *]
}
_Main/BL/Type_PeggingResultProductInStockingPoint_MP/StaticMethod_GenerateNewSupply.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,70 @@
Quintiq file version 2.0
#parent: #root
StaticMethod GenerateNewSupply (
  PeggingProductInStockingPoint_MP peggingProductInStockingPoint_MP,
  Number numberOfPlies,
  const NewSupply ns,
  Real actualFulfillmentQuantity,
  Real fulfillmentQuantity,
  PeggingResultProductInStockingPoint_MP parentPeggingResultProductInStockingPoint_MP
)
{
  TextBody:
  [*
    //info( "供应类型(NewSupply)", "    ä¾›åº”量:", ns.Quantity(), "    æ»¡è¶³ï¼š", fulfillmentQuantity );
    pisp := ns.ProductInStockingPointInPeriodPlanningLeaf().ProductInStockingPoint_MP();
    childPeggingResultProductInStockingPoint_MP := PeggingResultProductInStockingPoint_MP::Create( peggingProductInStockingPoint_MP,
                                                                                                   pisp.ProductID(),
                                                                                                   pisp.StockingPointID(),
                                                                                                   ns.Start().Date(),
                                                                                                   ns.Quantity(),
                                                                                                   actualFulfillmentQuantity,
                                                                                                   fulfillmentQuantity,
                                                                                                   "",
                                                                                                   numberOfPlies,
                                                                                                   pisp.UnitOfMeasureName() );
    PeggingResultProductInStockingPoint_MP::SetParentChildRelationship( parentPeggingResultProductInStockingPoint_MP, childPeggingResultProductInStockingPoint_MP );
    ontype ( ns.PeriodTask_MP() ) {
      PeriodTaskOperation as pto : {
        childPeggingResultProductInStockingPoint_MP.SupplyType( "产线供应" );
    //    info( "操作周期任务    ", "供应时间:", ns.Start().Format( "Y-M2-D2" ), "    å‘¨æœŸä»»åŠ¡KEY:", pto.Key(), "    ",
    //          ns.ProductInStockingPointInPeriodPlanningLeaf().ProductInStockingPoint_MP().Name() );
        traverse ( pto, DependentDemand, dd, dd.Quantity() > 0 ) {
          traverse ( dd, Fulfillment, f ) {
            fulfillmentQuantity := ( dd.Quantity() / ns.Quantity() ) * fulfillmentQuantity;
            totalSupply := sum( dd, Fulfillment, tempF, tempF.Quantity() );
            orderFulfillmentQuantity := ( f.Quantity() / totalSupply ) * fulfillmentQuantity;
            actualFulfillmentQuantity := f.Quantity();
            smp1 := f.Supply_MP();
            numberOfPlies++;
    //        info( "--------------------------------------------------------------" );
            PeggingResultProductInStockingPoint_MP::GeneratePeggingResult( peggingProductInStockingPoint_MP, numberOfPlies, smp1, actualFulfillmentQuantity, orderFulfillmentQuantity, childPeggingResultProductInStockingPoint_MP );
            numberOfPlies--;
          }
        }
      }
      PeriodTaskLaneLeg as ptll : {
        childPeggingResultProductInStockingPoint_MP.SupplyType( "车道供应" );
        targetDependentDemand := select( ptll, DependentDemand, dd,
                                         dd.ProcessInput().ProductInStockingPoint_MP().ProductID() = ns.ProductInStockingPointInPeriodPlanningLeaf().ProductInStockingPoint_MP().ProductID() and
                                         dd.Quantity() = ns.Quantity() );
    //    info( "车道周期任务    ", "供应时间:", ns.Start().Format( "Y-M2-D2" ), "    å‘¨æœŸä»»åŠ¡KEY:", ptll.Key(), "    ",
    //          ns.ProductInStockingPointInPeriodPlanningLeaf().ProductInStockingPoint_MP().Name() );
        traverse ( targetDependentDemand, Fulfillment, f ) {
          totalSupply := sum( targetDependentDemand, Fulfillment, tempF, tempF.Quantity() );
          orderFulfillmentQuantity := ( f.Quantity() / totalSupply ) * fulfillmentQuantity;
          actualFulfillmentQuantity := f.Quantity();
          smp1 := f.Supply_MP();
          numberOfPlies++;
    //      info( "--------------------------------------------------------------" );
          PeggingResultProductInStockingPoint_MP::GeneratePeggingResult( peggingProductInStockingPoint_MP, numberOfPlies, smp1, actualFulfillmentQuantity, orderFulfillmentQuantity, childPeggingResultProductInStockingPoint_MP );
          numberOfPlies--;
        }
      }
    }
  *]
}
_Main/BL/Type_PeggingResultProductInStockingPoint_MP/StaticMethod_GeneratePeggingResult.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,25 @@
Quintiq file version 2.0
#parent: #root
StaticMethod GeneratePeggingResult (
  PeggingProductInStockingPoint_MP peggingProductInStockingPoint_MP,
  Number numberOfPlies,
  const Supply_MP smp,
  Real actualFulfillmentQuantity,
  Real fulfillmentQuantity,
  PeggingResultProductInStockingPoint_MP parentPeggingResultProductInStockingPoint_MP
)
{
  TextBody:
  [*
    //info( "层数:", numberOfPlies );
    ontype ( smp ) {
      NewSupply as ns : {
        PeggingResultProductInStockingPoint_MP::GenerateNewSupply( peggingProductInStockingPoint_MP, numberOfPlies, ns, actualFulfillmentQuantity, fulfillmentQuantity, parentPeggingResultProductInStockingPoint_MP );
      }
      InventorySupply as is : {
        PeggingResultProductInStockingPoint_MP::GenerateInventorySupply( peggingProductInStockingPoint_MP, numberOfPlies, is, actualFulfillmentQuantity, fulfillmentQuantity, parentPeggingResultProductInStockingPoint_MP );
      }
    }
  *]
}
_Main/BL/Type_PeggingResultProductInStockingPoint_MP/StaticMethod_SetAllChildRelation.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,20 @@
Quintiq file version 2.0
#parent: #root
StaticMethod SetAllChildRelation (
  PeggingProductInStockingPoint_MP peggingProductInStockingPoint_MP,
  PeggingResultProductInStockingPoint_MP parentPeggingResultProductInStockingPoint_MP,
  PeggingResultProductInStockingPoint_MP childPeggingResultProductInStockingPoint_MP
)
{
  TextBody:
  [*
    if ( childPeggingResultProductInStockingPoint_MP.Child( relsize ) = 0 ) {
      childPeggingResultProductInStockingPoint_MP.AllParent( relset, parentPeggingResultProductInStockingPoint_MP );
    }
    traverse ( childPeggingResultProductInStockingPoint_MP, Child, pr ) {
      pr.AllParent( relset, parentPeggingResultProductInStockingPoint_MP );
      PeggingResultProductInStockingPoint_MP::SetAllChildRelation( peggingProductInStockingPoint_MP, parentPeggingResultProductInStockingPoint_MP, pr );
    }
  *]
}
_Main/BL/Type_PeggingResultProductInStockingPoint_MP/StaticMethod_SetParentChildRelationship.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,14 @@
Quintiq file version 2.0
#parent: #root
StaticMethod SetParentChildRelationship (
  PeggingResultProductInStockingPoint_MP parentPeggingResultProductInStockingPoint_MP,
  PeggingResultProductInStockingPoint_MP childPeggingResultProductInStockingPoint_MP
)
{
  TextBody:
  [*
    if ( not isnull( parentPeggingResultProductInStockingPoint_MP ) and not isnull( childPeggingResultProductInStockingPoint_MP ) ) {
      childPeggingResultProductInStockingPoint_MP.Parent( relset, parentPeggingResultProductInStockingPoint_MP );
    }
  *]
}
_Main/BL/Type_PeggingResultProductInStockingPoint_MP/_ROOT_Type_PeggingResultProductInStockingPoint_MP.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,9 @@
Quintiq file version 2.0
#root
#parent: #DomainModel
Type PeggingResultProductInStockingPoint_MP
{
  #keys: '5[414702.1.364041964][414702.1.364041962][0.0.0][414702.1.364041963][414702.1.364041965]'
  BaseType: Object
  StructuredName: 'PeggingResultProductInStockingPoint_MPs'
}
_Main/BL/Type_SummaryOfInboundTransaction/Attribute_Item.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute Item
{
  #keys: '3[414702.1.391291493][414702.1.391291492][414702.1.391291494]'
  Description: '物料编码'
  ValueType: String
}
_Main/BL/Type_SummaryOfInboundTransaction/Attribute_OrganCode.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute OrganCode
{
  #keys: '3[414702.1.391291503][414702.1.391291502][414702.1.391291504]'
  Description: '组织编码'
  ValueType: String
}
_Main/BL/Type_SummaryOfInboundTransaction/Attribute_OrganName.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute OrganName
{
  #keys: '3[414702.1.391291513][414702.1.391291512][414702.1.391291514]'
  Description: '组织名称'
  ValueType: String
}
_Main/BL/Type_SummaryOfInboundTransaction/Attribute_PlantName.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute PlantName
{
  #keys: '3[414702.1.391291523][414702.1.391291522][414702.1.391291524]'
  Description: '工厂名称'
  ValueType: String
}
_Main/BL/Type_SummaryOfInboundTransaction/Attribute_Total1.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute Total1
{
  #keys: '3[414702.1.391291539][414702.1.391291538][414702.1.391291540]'
  ValueType: Real
}
_Main/BL/Type_SummaryOfInboundTransaction/Attribute_Total10.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute Total10
{
  #keys: '3[414702.1.391291650][414702.1.391291649][414702.1.391291651]'
  ValueType: Real
}
_Main/BL/Type_SummaryOfInboundTransaction/Attribute_Total11.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute Total11
{
  #keys: '3[414702.1.391291663][414702.1.391291662][414702.1.391291664]'
  ValueType: Real
}
_Main/BL/Type_SummaryOfInboundTransaction/Attribute_Total12.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute Total12
{
  #keys: '3[414702.1.391291673][414702.1.391291672][414702.1.391291674]'
  ValueType: Real
}
_Main/BL/Type_SummaryOfInboundTransaction/Attribute_Total2.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute Total2
{
  #keys: '3[414702.1.391291552][414702.1.391291551][414702.1.391291553]'
  ValueType: Real
}
_Main/BL/Type_SummaryOfInboundTransaction/Attribute_Total3.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute Total3
{
  #keys: '3[414702.1.391291565][414702.1.391291564][414702.1.391291566]'
  ValueType: Real
}
_Main/BL/Type_SummaryOfInboundTransaction/Attribute_Total4.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute Total4
{
  #keys: '3[414702.1.391291575][414702.1.391291574][414702.1.391291576]'
  ValueType: Real
}
_Main/BL/Type_SummaryOfInboundTransaction/Attribute_Total5.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute Total5
{
  #keys: '3[414702.1.391291585][414702.1.391291584][414702.1.391291586]'
  ValueType: Real
}
_Main/BL/Type_SummaryOfInboundTransaction/Attribute_Total6.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute Total6
{
  #keys: '3[414702.1.391291598][414702.1.391291597][414702.1.391291599]'
  ValueType: Real
}
_Main/BL/Type_SummaryOfInboundTransaction/Attribute_Total7.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute Total7
{
  #keys: '3[414702.1.391291611][414702.1.391291610][414702.1.391291612]'
  ValueType: Real
}
_Main/BL/Type_SummaryOfInboundTransaction/Attribute_Total8.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute Total8
{
  #keys: '3[414702.1.391291624][414702.1.391291623][414702.1.391291625]'
  ValueType: Real
}
_Main/BL/Type_SummaryOfInboundTransaction/Attribute_Total9.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute Total9
{
  #keys: '3[414702.1.391291637][414702.1.391291636][414702.1.391291638]'
  ValueType: Real
}
_Main/BL/Type_SummaryOfInboundTransaction/StaticMethod_FlushData.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,55 @@
Quintiq file version 2.0
#parent: #root
StaticMethod FlushData (
  GlobalOTDSOP globalOTDSOP,
  const GlobalOTDTable globalOTDTable
)
{
  TextBody:
  [*
    globalOTDSOP.SummaryOfInboundTransaction( relflush );
    traverse ( globalOTDTable, Global_MappingSummaryOfInboundTransaction, gmsoit ) {
      targetSummaryOfInboundTransaction := select( globalOTDSOP, SummaryOfInboundTransaction, tempSOIBT,
                                                   tempSOIBT.Item()      =  gmsoit.Item()     and
                                                   tempSOIBT.OrganCode() = gmsoit.OrganCode() and
                                                   tempSOIBT.OrganName() = gmsoit.OrganName() and
                                                   tempSOIBT.PlantName() = gmsoit.PlantName() );
      if ( isnull( targetSummaryOfInboundTransaction ) ) {
        targetSummaryOfInboundTransaction := globalOTDSOP.SummaryOfInboundTransaction( relnew, Item      := gmsoit.Item(),
                                                                                               OrganCode := gmsoit.OrganCode(),
                                                                                               OrganName := gmsoit.OrganName(),
                                                                                               PlantName := gmsoit.PlantName()
                                                                                      );
      }
      if ( gmsoit.TransactionDate().Month() = 1 ) {
        targetSummaryOfInboundTransaction.Total1( targetSummaryOfInboundTransaction.Total1() + gmsoit.TransactionQTY() );
      } else if ( gmsoit.TransactionDate().Month() = 2 ) {
        targetSummaryOfInboundTransaction.Total2( targetSummaryOfInboundTransaction.Total2() + gmsoit.TransactionQTY() );
      } else if ( gmsoit.TransactionDate().Month() = 3 ) {
        targetSummaryOfInboundTransaction.Total3( targetSummaryOfInboundTransaction.Total3() + gmsoit.TransactionQTY() );
      } else if ( gmsoit.TransactionDate().Month() = 4 ) {
        targetSummaryOfInboundTransaction.Total4( targetSummaryOfInboundTransaction.Total4() + gmsoit.TransactionQTY() );
      } else if ( gmsoit.TransactionDate().Month() = 5 ) {
        targetSummaryOfInboundTransaction.Total5( targetSummaryOfInboundTransaction.Total5() + gmsoit.TransactionQTY() );
      } else if ( gmsoit.TransactionDate().Month() = 6 ) {
        targetSummaryOfInboundTransaction.Total6( targetSummaryOfInboundTransaction.Total6() + gmsoit.TransactionQTY() );
      } else if ( gmsoit.TransactionDate().Month() = 7 ) {
        targetSummaryOfInboundTransaction.Total7( targetSummaryOfInboundTransaction.Total7() + gmsoit.TransactionQTY() );
      } else if ( gmsoit.TransactionDate().Month() = 8 ) {
        targetSummaryOfInboundTransaction.Total8( targetSummaryOfInboundTransaction.Total8() + gmsoit.TransactionQTY() );
      } else if ( gmsoit.TransactionDate().Month() = 9 ) {
        targetSummaryOfInboundTransaction.Total9( targetSummaryOfInboundTransaction.Total9() + gmsoit.TransactionQTY() );
      } else if ( gmsoit.TransactionDate().Month() = 10 ) {
        targetSummaryOfInboundTransaction.Total10( targetSummaryOfInboundTransaction.Total10() + gmsoit.TransactionQTY() );
      } else if ( gmsoit.TransactionDate().Month() = 11 ) {
        targetSummaryOfInboundTransaction.Total11( targetSummaryOfInboundTransaction.Total11() + gmsoit.TransactionQTY() );
      } else if ( gmsoit.TransactionDate().Month() = 12 ) {
        targetSummaryOfInboundTransaction.Total12( targetSummaryOfInboundTransaction.Total2() + gmsoit.TransactionQTY() );
      }
    }
  *]
}
_Main/BL/Type_SummaryOfInboundTransaction/_ROOT_Type_SummaryOfInboundTransaction.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,9 @@
Quintiq file version 2.0
#root
#parent: #DomainModel
Type SummaryOfInboundTransaction
{
  #keys: '5[414702.1.391291471][414702.1.391291469][0.0.0][414702.1.391291470][414702.1.391291472]'
  BaseType: Object
  StructuredName: 'SummaryOfInboundTransactions'
}
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_cmTestAttempt.def
@@ -103,6 +103,17 @@
        Title: 'Pegging分析'
      ]
    }
    Component mnModulePanelCorrespondence
    {
      #keys: '[414702.1.378230928]'
      BaseType: 'WebMenu'
      Properties:
      [
        Image: 'APPLE'
        Taborder: 9
        Title: '模组&面板关系'
      ]
    }
  ]
  Properties:
  [
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_TIANMA_JITUAN_ActionBarGroupScenarioComparisonViews_ButtonAnnualPro.def
@@ -6,10 +6,6 @@
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebButton_OnClick'
  GroupServerCalls: true
  Precondition:
  [*
  *]
  QuillAction
  {
    Body:
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_TIANMA_JITUAN_cmTestAttempt_mnModulePanelCorrespondence_OnClick.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,16 @@
Quintiq file version 2.0
#parent: cmTestAttempt/mnModulePanelCorrespondence
Response OnClick () id:Response_TIANMA_JITUAN_cmTestAttempt_mnModulePanelCorrespondence_OnClick
{
  #keys: '[414702.1.378281115]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebMenu_OnClick'
  GroupServerCalls: true
  QuillAction
  {
    Body:
    [*
      ApplicationScope.ViewManager().ResetUserViewById( "模组_面板关系", true );
    *]
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudge/Response_pButton_ButtonCreateData_OnClick.def
@@ -7,13 +7,7 @@
  DefinitionID: 'Responsedef_WebButton_OnClick'
  Precondition:
  [*
    flag := true;
    flag := GlobalOTDSOP.CapacityAndSaleBudgeFilterYear( relsize ) > 0                     and
            GlobalOTDSOP.CapacityAndSaleBudgeFilterBusinessType( relsize ) > 0             and
            GlobalOTDSOP.CapacityAndSaleBudgeFilterPlaceOfProductionOfArray( relsize ) > 0;
    return flag;
    return not isnull( GlobalOTDSOP ) and not isnull( GlobalOTDTable );
  *]
  QuillAction
  {
@@ -22,17 +16,16 @@
      option := WebMessageBox::Question( "请选择数据源", "数据湖|测试数据|取消" );
      
      if ( option = 0 ) {
        WebMessageBox::Error( "数据湖暂无数据", true );
        WebMessageBox::Success( "开始拉取中,请查看拉取日志", true );
        Global_MappingAnnualBudgetData::CreateData( GlobalOTDTable, ApplicationMacroPlanner.GetUserName() );
      } else if ( option = 1 ) {
        if ( DataHolderCheckedProduct.Data().Size() = 0 ) {
          WebMessageBox::Error( "请先在左侧导航栏选择要生成测试数据的产品!", true );
        } else {
          GlobalOTDTable.InitTestDataByYear( MacroPlan,
                                             GlobalOTDSOP,
                                             DataHolderCapacityAndSaleBudgeFilterYear.Data(),
                                             DataHolderCapacityAndSaleBudgeFilterBusinessType.Data(),
                                             DataHolderCapacityAndSaleBudgeFilterPlaceOfProductionOfArray.Data(),
                                             DataHolderCheckedProduct.Data() );
          GlobalOTDTable.CreateCapacityAndSaleBudgeTestData( GlobalOTDSOP,
                                                             GlobalOTDTable,
                                                             DataHolderCapacityAndSaleBudgeFilterYear.Data(),
                                                             DataHolderCheckedProduct.Data() );
        }
      }
    *]
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudge/Response_pButton_ButtonGenerateTestData_OnClick#19.def
@@ -13,13 +13,8 @@
  {
    Body:
    [*
      CapacityAndSaleBudgeFilterItem::InitializedData( GlobalOTDSOP );
      CapacityAndSaleBudgeFilterYear::InitializedData( GlobalOTDSOP );
      CapacityAndSaleBudgeFilterMonth::InitializedData( GlobalOTDSOP );
      CapacityAndSaleBudgeFilterBusinessType::InitializedData( GlobalOTDSOP, GlobalOTDTable );
      CapacityAndSaleBudgeFilterPlaceOfProductionOfArray::InitializedData( GlobalOTDSOP, GlobalOTDTable );
      GlobalOTDTable.Global_MappingAnnualBudgetData( relflush );
    *]
    GroupServerCalls: false
  }
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeChart/Component_ChartCapacityAndSaleBudgeChart.def
@@ -81,5 +81,6 @@
  [
    ContextMenu: 'chartContextMenuCapacityAndSaleBudge'
    Taborder: 4
    Title: '年度产销预算复盘'
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeChart/Response_pFilterCriteria_ButtonCapacityAndSaleBudgeChartTest_OnClick#603.def
@@ -9,17 +9,32 @@
  {
    Body:
    [*
      //CapacityAndSaleBudgeChartElement::TestData( GlobalOTDTable );
      targetCapacityAndSaleBudgeFilterItem := selectset( GlobalOTDSOP, CapacityAndSaleBudgeFilterItem, tempCASBFI,
                                                         exists( DataHolderCapacityAndSaleBudgeFilterItem.Data(), Elements, tempCASBFI1, tempCASBFI1 = tempCASBFI ) );
      targetCapacityAndSaleBudgeFilterPlaceOfProductionOfArray := selectset( GlobalOTDSOP, CapacityAndSaleBudgeFilterPlaceOfProductionOfArray, tempCASBFPOPOA,
                                                         exists( DataHolderCapacityAndSaleBudgeFilterPlaceOfProductionOfArray.Data(), Elements, tempCASBFPOPOA1, tempCASBFPOPOA1 = tempCASBFPOPOA ) );
      targetCapacityAndSaleBudgeFilterBusinessType := selectset( GlobalOTDSOP, CapacityAndSaleBudgeFilterBusinessType, tempCASBFBT,
                                                         exists( DataHolderCapacityAndSaleBudgeFilterBusinessType.Data(), Elements, tempCASBFBT1, tempCASBFBT1 = tempCASBFBT ) );
      targetCapacityAndSaleBudgeFilterYear := selectset( GlobalOTDSOP, CapacityAndSaleBudgeFilterYear, tempCASBFY,
                                                         exists( DataHolderCapacityAndSaleBudgeFilterYear.Data(), Elements, tempCASBFY1, tempCASBFY1 = tempCASBFY ) );
      targetCapacityAndSaleBudgeFilterMonth := selectset( GlobalOTDSOP, CapacityAndSaleBudgeFilterMonth, tempCASBFM,
                                                         exists( DataHolderCapacityAndSaleBudgeFilterMonth.Data(), Elements, tempCASBFM1, tempCASBFM1 = tempCASBFM ) );
      
      GlobalOTDSOP.CapacityAndSaleBudgeChart( DataHolderMacroPlansForScenarioComparison.Data(), 
                                              DropDownSaleOrCapacity.Text(),
                                              DropDownTimeGroup.Text(),
                                              DropDownByBusinessTypeOrByOrgCode.Text(),
                                              DataHolderCapacityAndSaleBudgeFilterBusinessType.Data(),
                                              DataHolderCapacityAndSaleBudgeFilterPlaceOfProductionOfArray.Data(),
                                              DataHolderCapacityAndSaleBudgeFilterYear.Data(),
                                              DataHolderCapacityAndSaleBudgeFilterMonth.Data(),
                                              GlobalOTDTable );
                                              &targetCapacityAndSaleBudgeFilterItem,
                                              &targetCapacityAndSaleBudgeFilterPlaceOfProductionOfArray,
                                              &targetCapacityAndSaleBudgeFilterBusinessType,
                                              &targetCapacityAndSaleBudgeFilterYear,
                                              &targetCapacityAndSaleBudgeFilterMonth,
                                              GlobalOTDTable
                                             );
    *]
    GroupServerCalls: false
  }
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeCompare/Component_pButton.def
@@ -27,6 +27,16 @@
        Taborder: 1
      ]
    }
    Component Image116
    {
      #keys: '[414702.1.375948796]'
      BaseType: 'WebImage'
      Properties:
      [
        Image: 'CHECK'
        Taborder: 2
      ]
    }
  ]
  Properties:
  [
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeCompare/Method_CreateCapacityAndSaleBudgeCompareData.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,40 @@
Quintiq file version 2.0
#parent: #root
Method CreateCapacityAndSaleBudgeCompareData () id:Method_FormCapacityAndSaleBudgeCompare_CreateCapacityAndSaleBudgeCompareData
{
  #keys: '[414702.1.376413209]'
  Body:
  [*
    targetCapacityAndSaleBudgeFilterItem := selectset( GlobalOTDSOP, CapacityAndSaleBudgeFilterItem, tempCASBFI,
                                                       exists( DataHolderCapacityAndSaleBudgeFilterItem.Data(), Elements, tempCASBFI1, tempCASBFI1 = tempCASBFI ) );
    targetCapacityAndSaleBudgeFilterPlaceOfProductionOfArray := selectset( GlobalOTDSOP, CapacityAndSaleBudgeFilterPlaceOfProductionOfArray, tempCASBFPOPOA,
                                                       exists( DataHolderCapacityAndSaleBudgeFilterPlaceOfProductionOfArray.Data(), Elements, tempCASBFPOPOA1, tempCASBFPOPOA1 = tempCASBFPOPOA ) );
    targetCapacityAndSaleBudgeFilterBusinessType := selectset( GlobalOTDSOP, CapacityAndSaleBudgeFilterBusinessType, tempCASBFBT,
                                                       exists( DataHolderCapacityAndSaleBudgeFilterBusinessType.Data(), Elements, tempCASBFBT1, tempCASBFBT1 = tempCASBFBT ) );
    targetCapacityAndSaleBudgeFilterYear := selectset( GlobalOTDSOP, CapacityAndSaleBudgeFilterYear, tempCASBFY,
                                                       exists( DataHolderCapacityAndSaleBudgeFilterYear.Data(), Elements, tempCASBFY1, tempCASBFY1 = tempCASBFY ) );
    targetCapacityAndSaleBudgeFilterMonth := selectset( GlobalOTDSOP, CapacityAndSaleBudgeFilterMonth, tempCASBFM,
                                                       exists( DataHolderCapacityAndSaleBudgeFilterMonth.Data(), Elements, tempCASBFM1, tempCASBFM1 = tempCASBFM ) );
    //GlobalOTDSOP.CapacityAndSaleBudgeCompare( DataHolderMacroPlansForScenarioComparison.Data(),
    //                                          targetCapacityAndSaleBudgeFilterItem,
    //                                          targetCapacityAndSaleBudgeFilterPlaceOfProductionOfArray,
    //                                          targetCapacityAndSaleBudgeFilterBusinessType,
    //                                          targetCapacityAndSaleBudgeFilterYear,
    //                                          targetCapacityAndSaleBudgeFilterMonth,
    //                                          GlobalOTDTable );
    GlobalOTDSOP.AsyncCapacityAndSaleBudgeCompare( DataHolderMacroPlansForScenarioComparison.Data(),
                                                   targetCapacityAndSaleBudgeFilterItem,
                                                   targetCapacityAndSaleBudgeFilterPlaceOfProductionOfArray,
                                                   targetCapacityAndSaleBudgeFilterBusinessType,
                                                   targetCapacityAndSaleBudgeFilterYear,
                                                   targetCapacityAndSaleBudgeFilterMonth,
                                                   GlobalOTDTable );
  *]
}
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeCompare/Response_dhStatus_OnDataChanged.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,25 @@
Quintiq file version 2.0
#parent: dhStatus
Response OnDataChanged () id:Response_FormCapacityAndSaleBudgeCompare_dhStatus_OnDataChanged
{
  #keys: '[414702.1.383710704]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebComponent_OnDataChanged'
  QuillAction
  {
    Body:
    [*
      if ( guard( this.Data().RunSataus() = 1, false ) ) {
        ButtonCapacityAndSaleBudgeCompare.Enabled( false, "正在运行" );
        Image116.Image( "MEDIA_PLAY_GREEN" );
      } else if ( guard( this.Data().RunSataus() = 0, false ) ) {
        ButtonCapacityAndSaleBudgeCompare.Enabled( true, "正在运行" );
        Image116.Image( "CHECK" );
      } else {
        ButtonCapacityAndSaleBudgeCompare.Enabled( true, "正在运行" );
        Image116.Image( "CHECK" );
      }
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeCompare/Response_pButton_ButtonCapacityAndSaleBudgeCompare_OnClick#231.def
@@ -9,11 +9,13 @@
  {
    Body:
    [*
      GlobalOTDSOP.CapacityAndSaleBudgeCompare( DataHolderMacroPlansForScenarioComparison.Data(),
                                                DataHolderCapacityAndSaleBudgeFilterItem.Data(),
                                                DataHolderCapacityAndSaleBudgeFilterYear.Data(),
                                                DataHolderCapacityAndSaleBudgeFilterMonth.Data(),
                                                GlobalOTDTable );
      GlobalOTDSOP.CapacityAndSaleBudgeRunStatus( relflush );
      GlobalOTDSOP.CapacityAndSaleBudgeRunStatus( relnew, RunSataus := 1 );
      Form.CreateCapacityAndSaleBudgeCompareData();
      //GlobalOTDSOP.CapacityAndSaleBudgeRunStatus( relflush );
      //GlobalOTDSOP.CapacityAndSaleBudgeRunStatus( relnew, RunStatus := 0 );
    *]
    GroupServerCalls: false
  }
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeCompare/_ROOT_Component_FormCapacityAndSaleBudgeCompare.def
@@ -9,6 +9,31 @@
  [
    #child: MatrixEditorCapacityAndSaleBudgeCompare
    #child: pButton
    Component dhStatus
    {
      #keys: '[414702.1.386200525]'
      BaseType: 'WebDataHolder'
      Databinding: 'CapacityAndSaleBudgeRunStatus'
      Children:
      [
        Component deStatus
        {
          #keys: '[414702.1.386200546]'
          BaseType: 'WebDataExtractor'
          Properties:
          [
            DataType: 'GlobalOTDSOP'
            Source: 'GlobalOTDSOP'
            Taborder: 0
            Transformation: 'CapacityAndSaleBudgeRunStatus'
          ]
        }
      ]
      Properties:
      [
        Taborder: 2
      ]
    }
  ]
  Properties:
  [
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeFilterItem/Response_OnCreated.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,16 @@
Quintiq file version 2.0
#parent: #root
Response OnCreated () id:Response_FormCapacityAndSaleBudgeFilterItem_OnCreated
{
  #keys: '[414702.1.353022415]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebComponent_OnCreated'
  QuillAction
  {
    Body:
    [*
      CapacityAndSaleBudgeFilterItem::InitializedData( GlobalOTDSOP );
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeFilterMonth/Response_OnCreated.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,16 @@
Quintiq file version 2.0
#parent: #root
Response OnCreated () id:Response_FormCapacityAndSaleBudgeFilterMonth_OnCreated
{
  #keys: '[414702.1.353022171]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebComponent_OnCreated'
  QuillAction
  {
    Body:
    [*
      CapacityAndSaleBudgeFilterMonth::InitializedData( GlobalOTDSOP );
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeFilterYear/Response_OnCreated.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,16 @@
Quintiq file version 2.0
#parent: #root
Response OnCreated () id:Response_FormCapacityAndSaleBudgeFilterYear_OnCreated
{
  #keys: '[414702.1.353022002]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebComponent_OnCreated'
  QuillAction
  {
    Body:
    [*
      CapacityAndSaleBudgeFilterYear::InitializedData( GlobalOTDSOP );
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Component_PanelInterfaceGlobal_BrokerExecuteLog#981.def
@@ -9,6 +9,6 @@
  ]
  Properties:
  [
    Taborder: 6
    Taborder: 7
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Component_PanelInterfaceOption5.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,35 @@
Quintiq file version 2.0
Component PanelInterfaceOption5
{
  #keys: '[414702.1.387670593]'
  BaseType: 'WebPanel'
  Children:
  [
    Component CheckboxSummaryOfInboundTransaction
    {
      #keys: '[414702.1.387622319]'
      BaseType: 'WebCheckbox'
      Properties:
      [
        Label: 'SummaryOfInboundTransaction'
        Taborder: 0
      ]
    }
    Component CheckAnnualBudgetData
    {
      #keys: '[414702.1.400711162]'
      BaseType: 'WebCheckbox'
      Properties:
      [
        Label: 'AnnualBudgetData'
        Taborder: 1
      ]
    }
  ]
  Properties:
  [
    FixedSize: true
    Orientation: 'horizontal'
    Taborder: 5
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Component_PanelInterfaceTest.def
@@ -32,6 +32,6 @@
  [
    FixedSize: true
    Orientation: 'horizontal'
    Taborder: 5
    Taborder: 6
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Response_PanelInterfaceTest_ButtonPullInterfaceDataToIntermediateTable_OnCli.def
@@ -41,7 +41,9 @@
                                                                    CheckboxCurrency_MP.Checked(),
                                                                    CheckboxCurrencyRate_MP.Checked(),
                                                                    CheckboxLane.Checked(),
                                                                    CheckboxLaneLeg.Checked() );
                                                                    CheckboxLaneLeg.Checked(),
                                                                    CheckboxSummaryOfInboundTransaction.Checked(),
                                                                    CheckAnnualBudgetData.Checked() );
    *]
    GroupServerCalls: false
  }
_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/_ROOT_Component_FormInterfaceTest.def
@@ -30,9 +30,10 @@
      Databinding: 'Scenario'
      Properties:
      [
        Taborder: 7
        Taborder: 8
      ]
    }
    #child: PanelInterfaceOption5
  ]
  Properties:
  [
_Main/UI/MacroPlannerWebApp/Component_FormModulePanelCorrespondence/Component_ListModuleCorrespondence.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,42 @@
Quintiq file version 2.0
Component ListModuleCorrespondence
{
  #keys: '[414702.1.377958446]'
  BaseType: 'WebList'
  Children:
  [
    Component DataExtractorModuleCorrespondence
    {
      #keys: '[414702.1.377958447]'
      BaseType: 'WebDataExtractor'
      Properties:
      [
        DataType: 'ModulePanelCorrespondence'
        ExtractionMode: 'Selected'
        Source: 'ListModulePanelCorrespondence'
        Taborder: 0
        Transformation: 'Panel'
      ]
    }
    #child: listActionBarPageModuleCorrespondence
    Component DataSetLevelModuleCorrespondence
    {
      #keys: '[414702.1.377958452]'
      BaseType: 'WebDataSetLevel'
      Children:
      [
        #child: listContextMenuModuleCorrespondence
      ]
      Properties:
      [
        Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"PanelProductID","title":"面板产品ID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"PanelProductID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"PanelStockingPointID","title":"面板库存点ID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"PanelStockingPointID"}}]'
        ContextMenu: 'listContextMenuModuleCorrespondence'
        Taborder: 2
      ]
    }
  ]
  Properties:
  [
    Taborder: 1
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormModulePanelCorrespondence/Component_ListModulePanelCorrespondence#612.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,75 @@
Quintiq file version 2.0
Component ListModulePanelCorrespondence id:ListModulePanelCorrespondence_612
{
  #keys: '[414702.1.376801881]'
  BaseType: 'WebList'
  Children:
  [
    Component DataExtractorModulePanelCorrespondence
    {
      #keys: '[414702.1.376801882]'
      BaseType: 'WebDataExtractor'
      Properties:
      [
        DataType: 'GlobalOTDSOP'
        FixedFilter: 'object.IsModule()'
        Source: 'GlobalOTDSOP'
        Taborder: 0
        Transformation: 'ModulePanelCorrespondence'
      ]
    }
    #child: listActionBarPageModulePanelCorrespondence_1
    Component DataSetLevelModulePanelCorrespondence
    {
      #keys: '[414702.1.376801884]'
      BaseType: 'WebDataSetLevel'
      Children:
      [
        #child: listContextMenuModulePanelCorrespondence_1
      ]
      Properties:
      [
        Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ModuleProductID","title":"模组产品ID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ModuleProductID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ModuleStockingPointID","title":"模组库存点ID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ModuleStockingPointID"}}]'
        ContextMenu: 'listContextMenuModulePanelCorrespondence'
        Taborder: 2
      ]
    }
  ]
  Properties:
  [
    Taborder: 1
  ]
  ResponseDefinitions:
  [
    DelegatedResponseDefinition OnClick id:Responsedef_ListModulePanelCorrespondence_612_WebButton_OnClick
    {
      #keys: '[414702.1.379607377]'
      Initiator: 'WebButton'
      IsInherited: false
      ResponseType: 'OnClick'
      Arguments:
      [
        ResponseDefinitionArgument selection
        {
          #keys: '[749.0.26546720]'
          Binding: 'this.Selection()'
        }
      ]
    }
    DelegatedResponseDefinition OnClick id:Responsedef_ListModulePanelCorrespondence_612_WebMenu_OnClick
    {
      #keys: '[414702.1.379530536]'
      Initiator: 'WebMenu'
      IsInherited: false
      ResponseType: 'OnClick'
      Arguments:
      [
        ResponseDefinitionArgument selection
        {
          #keys: '[749.0.41950766]'
          Binding: 'this.Selection()'
        }
      ]
    }
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormModulePanelCorrespondence/Component_Panel655.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,37 @@
Quintiq file version 2.0
Component Panel655
{
  #keys: '[414702.1.380172392]'
  BaseType: 'WebPanel'
  Children:
  [
    Component bAddPanel id:bAddPanel_662
    {
      #keys: '[414702.1.381249855]'
      BaseType: 'WebButton'
      Properties:
      [
        Image: 'ADD'
        Label: '添加面板'
        Taborder: 0
      ]
    }
    Component bDeletePanel id:bDeletePanel_254
    {
      #keys: '[414702.1.381203006]'
      BaseType: 'WebButton'
      Properties:
      [
        Image: 'DELETE2'
        Label: '删除模组'
        Taborder: 1
      ]
    }
  ]
  Properties:
  [
    FixedSize: true
    Orientation: 'horizontal'
    Taborder: 0
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormModulePanelCorrespondence/Component_PanelModule.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,15 @@
Quintiq file version 2.0
Component PanelModule
{
  #keys: '[414702.1.377900594]'
  BaseType: 'WebPanel'
  Children:
  [
    #child: ListModulePanelCorrespondence_612
    #child: PanelModule116
  ]
  Properties:
  [
    Taborder: 0
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormModulePanelCorrespondence/Component_PanelModule116.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,48 @@
Quintiq file version 2.0
Component PanelModule116
{
  #keys: '[414702.1.380132983]'
  BaseType: 'WebPanel'
  Children:
  [
    Component bAddModule id:bAddModule_100
    {
      #keys: '[414702.1.381202718]'
      BaseType: 'WebButton'
      Properties:
      [
        Image: 'ADD'
        Label: '添加模组'
        Taborder: 0
      ]
    }
    Component bDeleteModule id:bDeleteModule_801
    {
      #keys: '[414702.1.381202749]'
      BaseType: 'WebButton'
      Properties:
      [
        Image: 'DELETE2'
        Label: '删除模组'
        Taborder: 1
      ]
    }
    Component bPullCapacityAllocationRule
    {
      #keys: '[414702.1.402246903]'
      BaseType: 'WebButton'
      Properties:
      [
        Image: 'THICK_ARROW_DOWN_LIGHT_BLUE'
        Label: '拉取产能分配规则'
        Taborder: 2
      ]
    }
  ]
  Properties:
  [
    FixedSize: true
    Orientation: 'horizontal'
    Taborder: 0
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormModulePanelCorrespondence/Component_PanelPanel.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,15 @@
Quintiq file version 2.0
Component PanelPanel
{
  #keys: '[414702.1.376861496]'
  BaseType: 'WebPanel'
  Children:
  [
    #child: ListModuleCorrespondence
    #child: Panel655
  ]
  Properties:
  [
    Taborder: 1
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormModulePanelCorrespondence/Component_listActionBarPageModuleCorrespondence.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
Component listActionBarPageModuleCorrespondence
{
  #keys: '[414702.1.377958449]'
  BaseType: 'listActionBarPage'
  Properties:
  [
    Taborder: 1
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormModulePanelCorrespondence/Component_listActionBarPageModulePanelCorrespondence#1.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
Component listActionBarPageModulePanelCorrespondence id:listActionBarPageModulePanelCorrespondence_1
{
  #keys: '[414702.1.376801883]'
  BaseType: 'listActionBarPage'
  Properties:
  [
    Taborder: 1
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormModulePanelCorrespondence/Component_listContextMenuModuleCorrespondence.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
Component listContextMenuModuleCorrespondence
{
  #keys: '[414702.1.377958454]'
  BaseType: 'listContextMenu'
  Properties:
  [
    Taborder: 0
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormModulePanelCorrespondence/Component_listContextMenuModulePanelCorrespondence#1.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,25 @@
Quintiq file version 2.0
Component listContextMenuModulePanelCorrespondence id:listContextMenuModulePanelCorrespondence_1
{
  #keys: '[414702.1.376801885]'
  BaseType: 'listContextMenu'
  Children:
  [
    Component MenuSelectAll id:MenuSelectAll_958
    {
      #keys: '[414702.1.379687162]'
      BaseType: 'WebMenu'
      Properties:
      [
        Image: 'SELECTION'
        Shortcut: 'Ctrl+A'
        Taborder: 3
        Title: '全选'
      ]
    }
  ]
  Properties:
  [
    Taborder: 0
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormModulePanelCorrespondence/Response_ListModulePanelCorrespondence_612_MenuSelectAll_OnClick.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,17 @@
Quintiq file version 2.0
#parent: ListModulePanelCorrespondence_612
Response OnClick () id:Response_ListModulePanelCorrespondence_612_MenuSelectAll_OnClick
{
  #keys: '[414702.1.378245513]'
  CanBindMultiple: false
  DefinitionID => /ListModulePanelCorrespondence_612/Responsedef_ListModulePanelCorrespondence_612_WebMenu_OnClick
  Initiator: 'MenuSelectAll'
  QuillAction
  {
    Body:
    [*
      this.SelectAll();
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormModulePanelCorrespondence/Response_ListModulePanelCorrespondence_612_bAddPanel_OnClick.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,19 @@
Quintiq file version 2.0
#parent: ListModulePanelCorrespondence_612
Response OnClick (
  structured[ModulePanelCorrespondence] selection
) id:Response_ListModulePanelCorrespondence_612_bAddPanel_OnClick
{
  #keys: '[414702.1.379686642]'
  CanBindMultiple: false
  DefinitionID => /ListModulePanelCorrespondence_612/Responsedef_ListModulePanelCorrespondence_612_WebButton_OnClick
  Initiator: 'bAddPanel'
  QuillAction
  {
    Body:
    [*
      ModulePanelCorrespondence::CreatePanel( GlobalOTDSOP, selection, DataHolderSelectedProductInStocking_MP.Data() );
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormModulePanelCorrespondence/Response_ListModulePanelCorrespondence_612_bDeletePanel_OnClick.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,19 @@
Quintiq file version 2.0
#parent: ListModulePanelCorrespondence_612
Response OnClick (
  structured[ModulePanelCorrespondence] selection
) id:Response_ListModulePanelCorrespondence_612_bDeletePanel_OnClick
{
  #keys: '[414702.1.381349481]'
  CanBindMultiple: false
  DefinitionID => /ListModulePanelCorrespondence_612/Responsedef_ListModulePanelCorrespondence_612_WebButton_OnClick
  Initiator: 'bDeletePanel'
  QuillAction
  {
    Body:
    [*
      ModulePanelCorrespondence::DeletePanel( selection, DataHolderSelectedProductInStocking_MP.Data() );
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormModulePanelCorrespondence/Response_PanelModule116_bAddModule_OnClick#61.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,16 @@
Quintiq file version 2.0
#parent: PanelModule116/bAddModule_100
Response OnClick () id:Response_PanelModule_bAddModule_OnClick_61
{
  #keys: '[414702.1.381202717]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebButton_OnClick'
  QuillAction
  {
    Body:
    [*
      ModulePanelCorrespondence::CreateModule( GlobalOTDSOP, DataHolderSelectedProductInStocking_MP.Data() );
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormModulePanelCorrespondence/Response_PanelModule116_bDeleteModule_OnClick#462.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,16 @@
Quintiq file version 2.0
#parent: PanelModule116/bDeleteModule_801
Response OnClick () id:Response_PanelModule_bDeleteModule_OnClick_462
{
  #keys: '[414702.1.381202748]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebButton_OnClick'
  QuillAction
  {
    Body:
    [*
      ModulePanelCorrespondence::DeleteModule( GlobalOTDSOP, DataHolderSelectedProductInStocking_MP.Data() );
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormModulePanelCorrespondence/Response_PanelModule116_bPullCapacityAllocationRule_OnClick.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,16 @@
Quintiq file version 2.0
#parent: PanelModule116/bPullCapacityAllocationRule
Response OnClick () id:Response_PanelModule116_bPullCapacityAllocationRule_OnClick
{
  #keys: '[414702.1.400703767]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebButton_OnClick'
  QuillAction
  {
    Body:
    [*
      ModulePanelCorrespondence::PullCapacityAllocationRule( GlobalOTDSOP );
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormModulePanelCorrespondence/_ROOT_Component_FormModulePanelCorrespondence.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,44 @@
Quintiq file version 2.0
#root
#parent: MacroPlannerWebApp
OrphanComponent FormModulePanelCorrespondence
{
  #keys: '[414702.1.377988264]'
  BaseType: 'WebForm'
  Children:
  [
    #child: PanelModule
    #child: PanelPanel
    Component DataHolderSelectedProductInStocking_MP
    {
      #keys: '[414702.1.378291666]'
      BaseType: 'WebDataHolder'
      Databinding: 'structured[ProductInStockingPoint_MP]*'
      Children:
      [
        Component DataExtractor666
        {
          #keys: '[414702.1.378291704]'
          BaseType: 'WebDataExtractor'
          Properties:
          [
            DataType: 'ProductInStockingPoint_MP'
            ExtractionMode: 'Selected'
            Source: 'FormProductInStockingPoints.ListProductInStockingPointsForProductsView'
            Taborder: 0
          ]
        }
      ]
      Properties:
      [
        Taborder: 2
      ]
    }
  ]
  Properties:
  [
    Image: 'BRUSH2'
    Orientation: 'horizontal'
    Title: '模组&面板对应关系'
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingAllResult/Component_ListPeggingAllResult.def
@@ -29,7 +29,7 @@
      ]
      Properties:
      [
        Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"PeggingProductInSalesDemandBase.SalesDemandBaseID","title":"订单ID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"PeggingProductInSalesDemandBase.SalesDemandBaseID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ProductID","title":"产品ID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ProductID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"StockingPointID","title":"库存点ID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"StockingPointID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"StartDate","title":"开始时间","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"StartDate"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"SupplyQuantity","title":"供应数量","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"SupplyQuantity"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"FulfillmentQuantity","title":"实际需要数量","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"FulfillmentQuantity"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"SupplyType","title":"供应类型","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"SupplyType"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"UnitOfMeasurementName","title":"单位","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"UnitOfMeasurementName"}}]'
        Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"PeggingProductInSalesDemandBase.SalesDemandBaseID","title":"订单ID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"PeggingProductInSalesDemandBase.SalesDemandBaseID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ProductID","title":"产品ID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ProductID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"StockingPointID","title":"库存点ID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"StockingPointID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"StartDate","title":"开始时间","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"StartDate"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"SupplyQuantity","title":"供应数量","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"SupplyQuantity"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ActualFulfillmentQuantity","title":"实际需要数量","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ActualFulfillmentQuantity"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"FulfillmentQuantity","title":"订单需要数量","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"FulfillmentQuantity"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"SupplyType","title":"供应类型","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"SupplyType"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"UnitOfMeasurementName","title":"单位","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"UnitOfMeasurementName"}}]'
        ContextMenu: 'listContextMenuPeggingAllResult'
        Taborder: 2
      ]
_Main/UI/MacroPlannerWebApp/Component_FormPeggingProductInSalesDemandBase/Component_ListPeggingProductInSalesDemandBase#886.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,60 @@
Quintiq file version 2.0
Component ListPeggingProductInSalesDemandBase id:ListPeggingProductInSalesDemandBase_886
{
  #keys: '[414702.1.361001747]'
  BaseType: 'WebList'
  Children:
  [
    Component DataExtractorPeggingProductInSalesDemandBase
    {
      #keys: '[414702.1.361001748]'
      BaseType: 'WebDataExtractor'
      Properties:
      [
        DataType: 'PeggingProduct_MP'
        ExtractionMode: 'Selected'
        Source: 'FormPeggingProduct_MP.ListPeggingProduct_MP'
        Taborder: 0
        Transformation: 'PeggingProductInSalesDemandBase'
      ]
    }
    #child: listActionBarPagePeggingProductInSalesDemandBase_1
    Component DataSetLevelPeggingProductInSalesDemandBase
    {
      #keys: '[414702.1.361001750]'
      BaseType: 'WebDataSetLevel'
      Children:
      [
        #child: listContextMenuPeggingProductInSalesDemandBase_1
      ]
      Properties:
      [
        Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"SalesDemandBaseID","title":"订单ID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"SalesDemandBaseID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"StockingPointID","title":"库存点ID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"StockingPointID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Quantity","title":"数量","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Quantity"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"StartDate","title":"开始时间","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"StartDate"}}]'
        ContextMenu: 'listContextMenuPeggingProductInSalesDemandBase'
        Taborder: 2
      ]
    }
  ]
  Properties:
  [
    Taborder: 0
  ]
  ResponseDefinitions:
  [
    DelegatedResponseDefinition OnClick id:Responsedef_ListPeggingProductInSalesDemandBase_886_WebMenu_OnClick
    {
      #keys: '[414702.1.361001742]'
      Initiator: 'WebMenu'
      IsInherited: false
      ResponseType: 'OnClick'
      Arguments:
      [
        ResponseDefinitionArgument selection
        {
          #keys: '[619.0.10848847]'
          Binding: 'this.Selection()'
        }
      ]
    }
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingProductInSalesDemandBase/Component_ListPeggingProductInSalesDemandBase.def
ÎļþÒÑɾ³ý
_Main/UI/MacroPlannerWebApp/Component_FormPeggingProductInSalesDemandBase/Component_ListStockingPoint.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,42 @@
Quintiq file version 2.0
Component ListStockingPoint
{
  #keys: '[414702.1.361033206]'
  BaseType: 'WebList'
  Children:
  [
    Component DataExtractorStockingPoint
    {
      #keys: '[414702.1.361033207]'
      BaseType: 'WebDataExtractor'
      Properties:
      [
        DataType: 'PeggingProduct_MP'
        ExtractionMode: 'Selected'
        Source: 'FormPeggingProduct_MP.ListPeggingProduct_MP'
        Taborder: 0
        Transformation: 'PeggingProductInStockingPoint_MP'
      ]
    }
    #child: listActionBarPageStockingPoint
    Component DataSetLevelStockingPoint
    {
      #keys: '[414702.1.361033212]'
      BaseType: 'WebDataSetLevel'
      Children:
      [
        #child: listContextMenuStockingPoint
      ]
      Properties:
      [
        Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ProductID","title":"产品ID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ProductID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"StockingPointID","title":"库存点","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"StockingPointID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"StartDate","title":"开始时间","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"StartDate"}}]'
        ContextMenu: 'listContextMenuStockingPoint'
        Taborder: 2
      ]
    }
  ]
  Properties:
  [
    Taborder: 0
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingProductInSalesDemandBase/Component_PanelContent.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,16 @@
Quintiq file version 2.0
Component PanelContent
{
  #keys: '[414702.1.361001581]'
  BaseType: 'WebPanel'
  Children:
  [
    #child: PanelSalesDemand
    #child: PanelStockingPoint
  ]
  Properties:
  [
    Orientation: 'tab'
    Taborder: 0
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingProductInSalesDemandBase/Component_PanelSalesDemand.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,15 @@
Quintiq file version 2.0
Component PanelSalesDemand
{
  #keys: '[414702.1.361001594]'
  BaseType: 'WebPanel'
  Children:
  [
    #child: ListPeggingProductInSalesDemandBase_886
  ]
  Properties:
  [
    Taborder: 0
    Title: '订单'
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingProductInSalesDemandBase/Component_PanelStockingPoint.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,15 @@
Quintiq file version 2.0
Component PanelStockingPoint
{
  #keys: '[414702.1.361001613]'
  BaseType: 'WebPanel'
  Children:
  [
    #child: ListStockingPoint
  ]
  Properties:
  [
    Taborder: 1
    Title: '库存点'
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingProductInSalesDemandBase/Component_listActionBarPagePeggingProductInSalesDemandBase#1.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
Component listActionBarPagePeggingProductInSalesDemandBase id:listActionBarPagePeggingProductInSalesDemandBase_1
{
  #keys: '[414702.1.361001749]'
  BaseType: 'listActionBarPage'
  Properties:
  [
    Taborder: 1
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingProductInSalesDemandBase/Component_listActionBarPagePeggingProductInSalesDemandBase.def
ÎļþÒÑɾ³ý
_Main/UI/MacroPlannerWebApp/Component_FormPeggingProductInSalesDemandBase/Component_listActionBarPageStockingPoint.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
Component listActionBarPageStockingPoint
{
  #keys: '[414702.1.361033209]'
  BaseType: 'listActionBarPage'
  Properties:
  [
    Taborder: 1
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingProductInSalesDemandBase/Component_listContextMenuPeggingProductInSalesDemandBase#1.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,36 @@
Quintiq file version 2.0
Component listContextMenuPeggingProductInSalesDemandBase id:listContextMenuPeggingProductInSalesDemandBase_1
{
  #keys: '[414702.1.361001751]'
  BaseType: 'listContextMenu'
  Children:
  [
    Component mGeneratePeggingResult
    {
      #keys: '[414702.1.361001752]'
      BaseType: 'WebMenu'
      Properties:
      [
        Image: 'PUMPKIN_HALLOWEEN'
        Taborder: 3
        Title: '生成Pegging结果'
      ]
    }
    Component MenuSelectionAll
    {
      #keys: '[414702.1.361001753]'
      BaseType: 'WebMenu'
      Properties:
      [
        Image: 'SELECTION'
        Shortcut: 'Ctrl+A'
        Taborder: 4
        Title: '全选'
      ]
    }
  ]
  Properties:
  [
    Taborder: 0
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingProductInSalesDemandBase/Component_listContextMenuPeggingProductInSalesDemandBase.def
ÎļþÒÑɾ³ý
_Main/UI/MacroPlannerWebApp/Component_FormPeggingProductInSalesDemandBase/Component_listContextMenuStockingPoint.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
Component listContextMenuStockingPoint
{
  #keys: '[414702.1.361033214]'
  BaseType: 'listContextMenu'
  Properties:
  [
    Taborder: 0
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingProductInSalesDemandBase/Response_ListPeggingProductInSalesDemandBase_886_MenuSelectionAll_OnClick.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,17 @@
Quintiq file version 2.0
#parent: ListPeggingProductInSalesDemandBase_886
Response OnClick () id:Response_ListPeggingProductInSalesDemandBase_886_MenuSelectionAll_OnClick
{
  #keys: '[414702.1.361001745]'
  CanBindMultiple: false
  DefinitionID => /ListPeggingProductInSalesDemandBase_886/Responsedef_ListPeggingProductInSalesDemandBase_886_WebMenu_OnClick
  Initiator: 'MenuSelectionAll'
  QuillAction
  {
    Body:
    [*
      this.SelectAll();
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingProductInSalesDemandBase/Response_ListPeggingProductInSalesDemandBase_886_mGeneratePeggingResult_OnCl.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
Quintiq file version 2.0
#parent: ListPeggingProductInSalesDemandBase_886
Response OnClick (
  structured[PeggingProductInSalesDemandBase] selection
) id:Response_ListPeggingProductInSalesDemandBase_886_mGeneratePeggingResult_OnClick
{
  #keys: '[414702.1.361001744]'
  CanBindMultiple: false
  DefinitionID => /ListPeggingProductInSalesDemandBase_886/Responsedef_ListPeggingProductInSalesDemandBase_886_WebMenu_OnClick
  Initiator: 'mGeneratePeggingResult'
  Precondition:
  [*
    return not isnull( MacroPlan );
  *]
  QuillAction
  {
    Body:
    [*
      PeggingResult::CreateData( selection, MacroPlan );
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingProductInSalesDemandBase/Response_ListPeggingProductInSalesDemandBase_MenuSelectionAll_OnClick.def
ÎļþÒÑɾ³ý
_Main/UI/MacroPlannerWebApp/Component_FormPeggingProductInSalesDemandBase/Response_ListPeggingProductInSalesDemandBase_mGeneratePeggingResult_OnClick.def
ÎļþÒÑɾ³ý
_Main/UI/MacroPlannerWebApp/Component_FormPeggingProductInSalesDemandBase/_ROOT_Component_FormPeggingProductInSalesDemandBase.def
@@ -7,7 +7,7 @@
  BaseType: 'WebForm'
  Children:
  [
    #child: ListPeggingProductInSalesDemandBase
    #child: PanelContent
  ]
  Properties:
  [
_Main/UI/MacroPlannerWebApp/Component_FormPeggingProduct_MP/Response_pButton_bCreate_OnClick.def
@@ -16,7 +16,7 @@
      form := construct( FormNavigationPanel );
      form.ShowDockLeft();
      
      PeggingProduct_MP::Create( GlobalOTDSOP, DataHolderCheckedProduct.Data() );
      PeggingProduct_MP::CreateData( GlobalOTDSOP, DataHolderCheckedProduct.Data() );
    *]
    GroupServerCalls: false
  }
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_ListPeggingAllResult#103.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,60 @@
Quintiq file version 2.0
Component ListPeggingAllResult id:ListPeggingAllResult_103
{
  #keys: '[414702.1.368006795]'
  BaseType: 'WebList'
  Children:
  [
    Component DataExtractorPeggingAllResult
    {
      #keys: '[414702.1.368006796]'
      BaseType: 'WebDataExtractor'
      Properties:
      [
        DataType: 'PeggingResult'
        ExtractionMode: 'Selected'
        Source: 'ListPeggingResult'
        Taborder: 0
        Transformation: 'AllChild'
      ]
    }
    #child: listActionBarPagePeggingAllResult_1
    Component DataSetLevelPeggingAllResult
    {
      #keys: '[414702.1.368006798]'
      BaseType: 'WebDataSetLevel'
      Children:
      [
        #child: listContextMenuPeggingAllResult_1
      ]
      Properties:
      [
        Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"PeggingProductInSalesDemandBase.SalesDemandBaseID","title":"订单ID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"PeggingProductInSalesDemandBase.SalesDemandBaseID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ProductID","title":"产品ID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ProductID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"StockingPointID","title":"库存点ID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"StockingPointID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"StartDate","title":"开始时间","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"StartDate"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"SupplyQuantity","title":"供应数量","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"SupplyQuantity"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ActualFulfillmentQuantity","title":"实际需要数量","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ActualFulfillmentQuantity"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"FulfillmentQuantity","title":"订单需要数量","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"FulfillmentQuantity"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"SupplyType","title":"供应类型","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"SupplyType"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"UnitOfMeasurementName","title":"单位","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"UnitOfMeasurementName"}}]'
        ContextMenu: 'listContextMenuPeggingAllResult'
        Taborder: 2
      ]
    }
  ]
  Properties:
  [
    Taborder: 0
  ]
  ResponseDefinitions:
  [
    DelegatedResponseDefinition OnClick id:Responsedef_ListPeggingAllResult_103_WebMenu_OnClick
    {
      #keys: '[414702.1.368006791]'
      Initiator: 'WebMenu'
      IsInherited: false
      ResponseType: 'OnClick'
      Arguments:
      [
        ResponseDefinitionArgument selection
        {
          #keys: '[639.0.20605876]'
          Binding: 'this.Selection()'
        }
      ]
    }
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_ListPeggingAllResultProductInStockingPoint_MP.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,42 @@
Quintiq file version 2.0
Component ListPeggingAllResultProductInStockingPoint_MP
{
  #keys: '[414702.1.369986051]'
  BaseType: 'WebList'
  Children:
  [
    Component DataExtractorBelow
    {
      #keys: '[414702.1.369986052]'
      BaseType: 'WebDataExtractor'
      Properties:
      [
        DataType: 'PeggingResultProductInStockingPoint_MP'
        ExtractionMode: 'Selected'
        Source: 'ListPeggingResultProductInStockingPoint_MP'
        Taborder: 0
        Transformation: 'AllChild'
      ]
    }
    #child: listActionBarPageBelow
    Component DataSetLevelBelow
    {
      #keys: '[414702.1.369986057]'
      BaseType: 'WebDataSetLevel'
      Children:
      [
        #child: listContextMenuBelow
      ]
      Properties:
      [
        Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ProductID","title":"产品ID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ProductID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"StockingPointID","title":"库存点ID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"StockingPointID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"StartDate","title":"开始时间","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"StartDate"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"SupplyQuantity","title":"供应数量","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"SupplyQuantity"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ActualFulfillmentQuantity","title":"实际需要数量","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ActualFulfillmentQuantity"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"FulfillmentQuantity","title":"供应需要数量","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"FulfillmentQuantity"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"SupplyType","title":"供应类型","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"SupplyType"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"UnitOfMeasurementName","title":"单位","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"UnitOfMeasurementName"}}]'
        ContextMenu: 'listContextMenuBelow'
        Taborder: 2
      ]
    }
  ]
  Properties:
  [
    Taborder: 1
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_ListPeggingProductInSalesDemandBase.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,60 @@
Quintiq file version 2.0
Component ListPeggingProductInSalesDemandBase
{
  #keys: '[414702.1.367969253]'
  BaseType: 'WebList'
  Children:
  [
    Component DataExtractorPeggingProductInSalesDemandBase
    {
      #keys: '[414702.1.367969254]'
      BaseType: 'WebDataExtractor'
      Properties:
      [
        DataType: 'PeggingProduct_MP'
        ExtractionMode: 'Selected'
        Source: 'ListPeggingProduct_MP'
        Taborder: 0
        Transformation: 'PeggingProductInSalesDemandBase'
      ]
    }
    #child: listActionBarPagePeggingProductInSalesDemandBase
    Component DataSetLevelPeggingProductInSalesDemandBase
    {
      #keys: '[414702.1.367969256]'
      BaseType: 'WebDataSetLevel'
      Children:
      [
        #child: listContextMenuPeggingProductInSalesDemandBase
      ]
      Properties:
      [
        Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"SalesDemandBaseID","title":"订单ID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"SalesDemandBaseID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"StockingPointID","title":"库存点ID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"StockingPointID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Quantity","title":"数量","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Quantity"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"StartDate","title":"开始时间","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"StartDate"}}]'
        ContextMenu: 'listContextMenuPeggingProductInSalesDemandBase'
        Taborder: 2
      ]
    }
  ]
  Properties:
  [
    Taborder: 0
  ]
  ResponseDefinitions:
  [
    DelegatedResponseDefinition OnClick id:Responsedef_ListPeggingProductInSalesDemandBase_WebMenu_OnClick
    {
      #keys: '[414702.1.367969244]'
      Initiator: 'WebMenu'
      IsInherited: false
      ResponseType: 'OnClick'
      Arguments:
      [
        ResponseDefinitionArgument selection
        {
          #keys: '[619.0.10848847]'
          Binding: 'this.Selection()'
        }
      ]
    }
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_ListPeggingProduct_MP#34.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,59 @@
Quintiq file version 2.0
Component ListPeggingProduct_MP id:ListPeggingProduct_MP_34
{
  #keys: '[414702.1.367969270]'
  BaseType: 'WebList'
  Children:
  [
    Component DataExtractorPeggingProduct_MP
    {
      #keys: '[414702.1.367969271]'
      BaseType: 'WebDataExtractor'
      Properties:
      [
        DataType: 'GlobalOTDSOP'
        Source: 'GlobalOTDSOP'
        Taborder: 0
        Transformation: 'PeggingProduct_MP'
      ]
    }
    #child: listActionBarPagePeggingProduct_MP_1
    Component DataSetLevelPeggingProduct_MP
    {
      #keys: '[414702.1.367969273]'
      BaseType: 'WebDataSetLevel'
      Children:
      [
        #child: listContextMenuPeggingProduct_MP_1
      ]
      Properties:
      [
        Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ProductID","title":"产品ID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ProductID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"StockingPointID","title":"库存点ID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"StockingPointID"}}]'
        ContextMenu: 'listContextMenuPeggingProduct_MP'
        Taborder: 2
      ]
    }
  ]
  Properties:
  [
    Taborder: 1
  ]
  ResponseDefinitions:
  [
    DelegatedResponseDefinition OnClick id:Responsedef_ListPeggingProduct_MP_34_WebMenu_OnClick
    {
      #keys: '[414702.1.367969235]'
      Initiator: 'WebMenu'
      IsInherited: false
      ResponseType: 'OnClick'
      Arguments:
      [
        ResponseDefinitionArgument selection
        {
          #keys: '[645.0.18569723]'
          Binding: 'this.Selection()'
        }
      ]
    }
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_ListPeggingResult.def
@@ -1,20 +1,20 @@
Quintiq file version 2.0
Component ListPeggingResult
{
  #keys: '[414702.1.296178342]'
  #keys: '[414702.1.367969368]'
  BaseType: 'WebList'
  Children:
  [
    Component DataExtractorPeggingResult
    {
      #keys: '[414702.1.296178343]'
      #keys: '[414702.1.367969369]'
      BaseType: 'WebDataExtractor'
      Properties:
      [
        DataType: 'PeggingProductInSalesDemandBase'
        ExtractionMode: 'Selected'
        FixedFilter: 'object.NumberOfPlies() = 0'
        Source: 'FormPeggingProductInSalesDemandBase.ListPeggingProductInSalesDemandBase'
        Source: 'ListPeggingProductInSalesDemandBase'
        Taborder: 0
        Transformation: 'PeggingResult'
      ]
@@ -22,7 +22,7 @@
    #child: listActionBarPagePeggingResult
    Component DataSetLevelPeggingResult
    {
      #keys: '[414702.1.296178348]'
      #keys: '[414702.1.367969371]'
      BaseType: 'WebDataSetLevel'
      Children:
      [
@@ -46,7 +46,7 @@
  [
    DelegatedResponseDefinition OnClick id:Responsedef_ListPeggingResult_WebMenu_OnClick
    {
      #keys: '[414702.1.302148620]'
      #keys: '[414702.1.367969363]'
      Initiator: 'WebMenu'
      IsInherited: false
      ResponseType: 'OnClick'
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_ListPeggingResultProductInStockingPoint_MP.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,63 @@
Quintiq file version 2.0
Component ListPeggingResultProductInStockingPoint_MP
{
  #keys: '[414702.1.369908729]'
  BaseType: 'WebList'
  Children:
  [
    Component DataExtractorRight
    {
      #keys: '[414702.1.369908730]'
      BaseType: 'WebDataExtractor'
      Properties:
      [
        DataType: 'PeggingProductInStockingPoint_MP'
        ExtractionMode: 'Selected'
        FixedFilter: 'object.NumberOfPlies() = 0'
        Source: 'ListStockingPoint'
        Taborder: 0
        Transformation: 'PeggingResultProductInStockingPoint_MP'
      ]
    }
    #child: listActionBarPageRight
    Component DataSetLevelRight
    {
      #keys: '[414702.1.369908735]'
      BaseType: 'WebDataSetLevel'
      Children:
      [
        #child: listContextMenuRight
      ]
      Properties:
      [
        Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ProductID","title":"产品ID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ProductID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"StockingPointID","title":"库存点ID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"StockingPointID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"StartDate","title":"开始时间","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"StartDate"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"SupplyQuantity","title":"供应数量","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"SupplyQuantity"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ActualFulfillmentQuantity","title":"实际需要数量","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ActualFulfillmentQuantity"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"FulfillmentQuantity","title":"供应需要数量","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"FulfillmentQuantity"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"SupplyType","title":"供应类型","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"SupplyType"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"UnitOfMeasurementName","title":"单位","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"UnitOfMeasurementName"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"NumberOfPlies","title":"层数","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"NumberOfPlies"}}]'
        ContextMenu: 'listContextMenuRight'
        RelationFromParent: 'Child'
        RelationRepeating: 'Child'
        Taborder: 2
      ]
    }
  ]
  Properties:
  [
    Taborder: 1
  ]
  ResponseDefinitions:
  [
    DelegatedResponseDefinition OnClick id:Responsedef_ListPeggingResultProductInStockingPoint_MP_WebMenu_OnClick
    {
      #keys: '[414702.1.372190299]'
      Initiator: 'WebMenu'
      IsInherited: false
      ResponseType: 'OnClick'
      Arguments:
      [
        ResponseDefinitionArgument selection
        {
          #keys: '[743.0.10232769]'
          Binding: 'this.Selection()'
        }
      ]
    }
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_ListStockingPoint#140.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,60 @@
Quintiq file version 2.0
Component ListStockingPoint id:ListStockingPoint_140
{
  #keys: '[414702.1.367969261]'
  BaseType: 'WebList'
  Children:
  [
    Component DataExtractorStockingPoint
    {
      #keys: '[414702.1.367969262]'
      BaseType: 'WebDataExtractor'
      Properties:
      [
        DataType: 'PeggingProduct_MP'
        ExtractionMode: 'Selected'
        Source: 'ListPeggingProduct_MP'
        Taborder: 0
        Transformation: 'PeggingProductInStockingPoint_MP'
      ]
    }
    #child: listActionBarPageStockingPoint_1
    Component DataSetLevelStockingPoint
    {
      #keys: '[414702.1.367969264]'
      BaseType: 'WebDataSetLevel'
      Children:
      [
        #child: listContextMenuStockingPoint_1
      ]
      Properties:
      [
        Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ProductID","title":"产品ID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ProductID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"StockingPointID","title":"库存点","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"StockingPointID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"StartDate","title":"开始时间","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"StartDate"}}]'
        ContextMenu: 'listContextMenuStockingPoint'
        Taborder: 2
      ]
    }
  ]
  Properties:
  [
    Taborder: 0
  ]
  ResponseDefinitions:
  [
    DelegatedResponseDefinition OnClick id:Responsedef_ListStockingPoint_140_WebMenu_OnClick
    {
      #keys: '[414702.1.371828990]'
      Initiator: 'WebMenu'
      IsInherited: false
      ResponseType: 'OnClick'
      Arguments:
      [
        ResponseDefinitionArgument selection
        {
          #keys: '[739.0.19241406]'
          Binding: 'this.Selection()'
        }
      ]
    }
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_PanelAbove.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,16 @@
Quintiq file version 2.0
Component PanelAbove
{
  #keys: '[414702.1.367522096]'
  BaseType: 'WebPanel'
  Children:
  [
    #child: PanelLeft_865
    #child: PanelRight_520
  ]
  Properties:
  [
    Orientation: 'horizontal'
    Taborder: 0
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_PanelBelow.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,16 @@
Quintiq file version 2.0
Component PanelBelow
{
  #keys: '[414702.1.367522127]'
  BaseType: 'WebPanel'
  Children:
  [
    #child: ListPeggingAllResult_103
    #child: ListPeggingAllResultProductInStockingPoint_MP
  ]
  Properties:
  [
    Border: true
    Taborder: 1
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_PanelContent#807.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,16 @@
Quintiq file version 2.0
Component PanelContent id:PanelContent_807
{
  #keys: '[414702.1.367969251]'
  BaseType: 'WebPanel'
  Children:
  [
    #child: PanelSalesDemand_411
    #child: PanelStockingPoint_569
  ]
  Properties:
  [
    Orientation: 'tab'
    Taborder: 1
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_PanelLeft#865.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,15 @@
Quintiq file version 2.0
Component PanelLeft id:PanelLeft_865
{
  #keys: '[414702.1.367969250]'
  BaseType: 'WebPanel'
  Children:
  [
    #child: PanelPeggingResult570
    #child: PanelContent_807
  ]
  Properties:
  [
    Taborder: 0
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_PanelPeggingResult570.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,15 @@
Quintiq file version 2.0
Component PanelPeggingResult570
{
  #keys: '[414702.1.367969266]'
  BaseType: 'WebPanel'
  Children:
  [
    #child: pButton_407
    #child: ListPeggingProduct_MP_34
  ]
  Properties:
  [
    Taborder: 0
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_PanelRight#520.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,16 @@
Quintiq file version 2.0
Component PanelRight id:PanelRight_520
{
  #keys: '[414702.1.367969367]'
  BaseType: 'WebPanel'
  Children:
  [
    #child: ListPeggingResult
    #child: ListPeggingResultProductInStockingPoint_MP
  ]
  Properties:
  [
    Border: true
    Taborder: 1
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_PanelSalesDemand#411.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,15 @@
Quintiq file version 2.0
Component PanelSalesDemand id:PanelSalesDemand_411
{
  #keys: '[414702.1.367969252]'
  BaseType: 'WebPanel'
  Children:
  [
    #child: ListPeggingProductInSalesDemandBase
  ]
  Properties:
  [
    Taborder: 0
    Title: '订单'
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_PanelStockingPoint#569.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,15 @@
Quintiq file version 2.0
Component PanelStockingPoint id:PanelStockingPoint_569
{
  #keys: '[414702.1.367969260]'
  BaseType: 'WebPanel'
  Children:
  [
    #child: ListStockingPoint_140
  ]
  Properties:
  [
    Taborder: 1
    Title: '库存点'
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_listActionBarPageBelow.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
Component listActionBarPageBelow
{
  #keys: '[414702.1.369986054]'
  BaseType: 'listActionBarPage'
  Properties:
  [
    Taborder: 1
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_listActionBarPagePeggingAllResult#1.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
Component listActionBarPagePeggingAllResult id:listActionBarPagePeggingAllResult_1
{
  #keys: '[414702.1.368006797]'
  BaseType: 'listActionBarPage'
  Properties:
  [
    Taborder: 1
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_listActionBarPagePeggingProductInSalesDemandBase.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
Component listActionBarPagePeggingProductInSalesDemandBase
{
  #keys: '[414702.1.367969255]'
  BaseType: 'listActionBarPage'
  Properties:
  [
    Taborder: 1
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_listActionBarPagePeggingProduct_MP#1.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
Component listActionBarPagePeggingProduct_MP id:listActionBarPagePeggingProduct_MP_1
{
  #keys: '[414702.1.367969272]'
  BaseType: 'listActionBarPage'
  Properties:
  [
    Taborder: 1
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_listActionBarPagePeggingResult.def
@@ -1,7 +1,7 @@
Quintiq file version 2.0
Component listActionBarPagePeggingResult
{
  #keys: '[414702.1.296178345]'
  #keys: '[414702.1.367969370]'
  BaseType: 'listActionBarPage'
  Properties:
  [
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_listActionBarPageRight.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
Component listActionBarPageRight
{
  #keys: '[414702.1.369908732]'
  BaseType: 'listActionBarPage'
  Properties:
  [
    Taborder: 1
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_listActionBarPageStockingPoint#1.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
Component listActionBarPageStockingPoint id:listActionBarPageStockingPoint_1
{
  #keys: '[414702.1.367969263]'
  BaseType: 'listActionBarPage'
  Properties:
  [
    Taborder: 1
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_listContextMenuBelow.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
Component listContextMenuBelow
{
  #keys: '[414702.1.369986059]'
  BaseType: 'listContextMenu'
  Properties:
  [
    Taborder: 0
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_listContextMenuPeggingAllResult#1.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,25 @@
Quintiq file version 2.0
Component listContextMenuPeggingAllResult id:listContextMenuPeggingAllResult_1
{
  #keys: '[414702.1.368006799]'
  BaseType: 'listContextMenu'
  Children:
  [
    Component MenuSelectAll
    {
      #keys: '[414702.1.368006800]'
      BaseType: 'WebMenu'
      Properties:
      [
        Image: 'DOCUMENT_SELECTION'
        Shortcut: 'Ctrl+A'
        Taborder: 3
        Title: '全选'
      ]
    }
  ]
  Properties:
  [
    Taborder: 0
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_listContextMenuPeggingProductInSalesDemandBase.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,36 @@
Quintiq file version 2.0
Component listContextMenuPeggingProductInSalesDemandBase
{
  #keys: '[414702.1.367969257]'
  BaseType: 'listContextMenu'
  Children:
  [
    Component mGeneratePeggingResult
    {
      #keys: '[414702.1.367969258]'
      BaseType: 'WebMenu'
      Properties:
      [
        Image: 'PUMPKIN_HALLOWEEN'
        Taborder: 3
        Title: '生成Pegging结果'
      ]
    }
    Component MenuSelectionAll508
    {
      #keys: '[414702.1.367969259]'
      BaseType: 'WebMenu'
      Properties:
      [
        Image: 'SELECTION'
        Shortcut: 'Ctrl+A'
        Taborder: 4
        Title: '全选'
      ]
    }
  ]
  Properties:
  [
    Taborder: 0
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_listContextMenuPeggingProduct_MP#1.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,25 @@
Quintiq file version 2.0
Component listContextMenuPeggingProduct_MP id:listContextMenuPeggingProduct_MP_1
{
  #keys: '[414702.1.367969274]'
  BaseType: 'listContextMenu'
  Children:
  [
    Component MenuSelectionAll852
    {
      #keys: '[414702.1.367969275]'
      BaseType: 'WebMenu'
      Properties:
      [
        Image: 'SELECTION'
        Shortcut: 'Ctrl+A'
        Taborder: 3
        Title: '全选'
      ]
    }
  ]
  Properties:
  [
    Taborder: 0
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_listContextMenuPeggingResult.def
@@ -1,13 +1,13 @@
Quintiq file version 2.0
Component listContextMenuPeggingResult
{
  #keys: '[414702.1.296178350]'
  #keys: '[414702.1.367969372]'
  BaseType: 'listContextMenu'
  Children:
  [
    Component MenuSelectionAll
    {
      #keys: '[414702.1.302117859]'
      #keys: '[414702.1.367969373]'
      BaseType: 'WebMenu'
      Properties:
      [
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_listContextMenuRight.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,25 @@
Quintiq file version 2.0
Component listContextMenuRight
{
  #keys: '[414702.1.369908737]'
  BaseType: 'listContextMenu'
  Children:
  [
    Component MenuSelectionAll666
    {
      #keys: '[414702.1.372161014]'
      BaseType: 'WebMenu'
      Properties:
      [
        Image: 'SELECTION'
        Shortcut: 'Ctrl+A'
        Taborder: 3
        Title: '全选'
      ]
    }
  ]
  Properties:
  [
    Taborder: 0
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_listContextMenuStockingPoint#1.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,36 @@
Quintiq file version 2.0
Component listContextMenuStockingPoint id:listContextMenuStockingPoint_1
{
  #keys: '[414702.1.367969265]'
  BaseType: 'listContextMenu'
  Children:
  [
    Component mGeneratePeggingResult266
    {
      #keys: '[414702.1.370691806]'
      BaseType: 'WebMenu'
      Properties:
      [
        Image: 'PUMPKIN_HALLOWEEN'
        Taborder: 3
        Title: '生成Pegging结果'
      ]
    }
    Component MenuSelectionAll506
    {
      #keys: '[414702.1.370691827]'
      BaseType: 'WebMenu'
      Properties:
      [
        Image: 'SELECTION'
        Shortcut: 'Ctrl+A'
        Taborder: 4
        Title: '全选'
      ]
    }
  ]
  Properties:
  [
    Taborder: 0
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Component_pButton#407.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,37 @@
Quintiq file version 2.0
Component pButton id:pButton_407
{
  #keys: '[414702.1.367969267]'
  BaseType: 'WebPanel'
  Children:
  [
    Component bCreate
    {
      #keys: '[414702.1.367969268]'
      BaseType: 'WebButton'
      Properties:
      [
        Image: 'BOMB'
        Label: '创建Pegging产品'
        Taborder: 1
      ]
    }
    Component bRunPeggingAlgorithm
    {
      #keys: '[414702.1.367969269]'
      BaseType: 'WebButton'
      Properties:
      [
        Image: 'TREE'
        Label: '运行Pegging算法'
        Taborder: 0
      ]
    }
  ]
  Properties:
  [
    FixedSize: true
    Orientation: 'horizontal'
    Taborder: 0
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Response_ListPeggingAllResult_103_MenuSelectAll_OnClick.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,17 @@
Quintiq file version 2.0
#parent: ListPeggingAllResult_103
Response OnClick () id:Response_ListPeggingAllResult_103_MenuSelectAll_OnClick
{
  #keys: '[414702.1.368006793]'
  CanBindMultiple: false
  DefinitionID => /ListPeggingAllResult_103/Responsedef_ListPeggingAllResult_103_WebMenu_OnClick
  Initiator: 'MenuSelectAll'
  QuillAction
  {
    Body:
    [*
      this.SelectAll();
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Response_ListPeggingProductInSalesDemandBase_MenuSelectionAll508_OnClick.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,17 @@
Quintiq file version 2.0
#parent: ListPeggingProductInSalesDemandBase
Response OnClick () id:Response_ListPeggingProductInSalesDemandBase_MenuSelectionAll508_OnClick
{
  #keys: '[414702.1.367969247]'
  CanBindMultiple: false
  DefinitionID => /ListPeggingProductInSalesDemandBase/Responsedef_ListPeggingProductInSalesDemandBase_WebMenu_OnClick
  Initiator: 'MenuSelectionAll508'
  QuillAction
  {
    Body:
    [*
      this.SelectAll();
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Response_ListPeggingProductInSalesDemandBase_mGeneratePeggingResult_OnClick.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
Quintiq file version 2.0
#parent: ListPeggingProductInSalesDemandBase
Response OnClick (
  structured[PeggingProductInSalesDemandBase] selection
) id:Response_ListPeggingProductInSalesDemandBase_mGeneratePeggingResult_OnClick
{
  #keys: '[414702.1.367969246]'
  CanBindMultiple: false
  DefinitionID => /ListPeggingProductInSalesDemandBase/Responsedef_ListPeggingProductInSalesDemandBase_WebMenu_OnClick
  Initiator: 'mGeneratePeggingResult'
  Precondition:
  [*
    return not isnull( MacroPlan );
  *]
  QuillAction
  {
    Body:
    [*
      PeggingResult::CreateData( selection, MacroPlan );
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Response_ListPeggingProduct_MP_34_MenuSelectionAll852_OnClick.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,17 @@
Quintiq file version 2.0
#parent: ListPeggingProduct_MP_34
Response OnClick () id:Response_ListPeggingProduct_MP_34_MenuSelectionAll852_OnClick
{
  #keys: '[414702.1.367969239]'
  CanBindMultiple: false
  DefinitionID => /ListPeggingProduct_MP_34/Responsedef_ListPeggingProduct_MP_34_WebMenu_OnClick
  Initiator: 'MenuSelectionAll852'
  QuillAction
  {
    Body:
    [*
      this.SelectAll();
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Response_ListPeggingResultProductInStockingPoint_MP_MenuSelectionAll666_OnCl.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,17 @@
Quintiq file version 2.0
#parent: ListPeggingResultProductInStockingPoint_MP
Response OnClick () id:Response_ListPeggingResultProductInStockingPoint_MP_MenuSelectionAll666_OnClick
{
  #keys: '[414702.1.372190318]'
  CanBindMultiple: false
  DefinitionID => /ListPeggingResultProductInStockingPoint_MP/Responsedef_ListPeggingResultProductInStockingPoint_MP_WebMenu_OnClick
  Initiator: 'MenuSelectionAll666'
  QuillAction
  {
    Body:
    [*
      this.SelectAll();
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Response_ListPeggingResult_MenuSelectionAll_OnClick.def
@@ -2,7 +2,7 @@
#parent: ListPeggingResult
Response OnClick () id:Response_ListPeggingResult_MenuSelectionAll_OnClick
{
  #keys: '[414702.1.302148638]'
  #keys: '[414702.1.367969365]'
  CanBindMultiple: false
  DefinitionID => /ListPeggingResult/Responsedef_ListPeggingResult_WebMenu_OnClick
  Initiator: 'MenuSelectionAll'
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Response_ListStockingPoint_140_MenuSelectionAll506_OnClick.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,17 @@
Quintiq file version 2.0
#parent: ListStockingPoint_140
Response OnClick () id:Response_ListStockingPoint_140_MenuSelectionAll506_OnClick
{
  #keys: '[414702.1.371829177]'
  CanBindMultiple: false
  DefinitionID => /ListStockingPoint_140/Responsedef_ListStockingPoint_140_WebMenu_OnClick
  Initiator: 'MenuSelectionAll506'
  QuillAction
  {
    Body:
    [*
      this.SelectAll();
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Response_ListStockingPoint_140_mGeneratePeggingResult266_OnClick.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,19 @@
Quintiq file version 2.0
#parent: ListStockingPoint_140
Response OnClick (
  structured[PeggingProductInStockingPoint_MP] selection
) id:Response_ListStockingPoint_140_mGeneratePeggingResult266_OnClick
{
  #keys: '[414702.1.370662191]'
  CanBindMultiple: false
  DefinitionID => /ListStockingPoint_140/Responsedef_ListStockingPoint_140_WebMenu_OnClick
  Initiator: 'mGeneratePeggingResult266'
  QuillAction
  {
    Body:
    [*
      PeggingResultProductInStockingPoint_MP::CreateData( selection, MacroPlan );
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Response_PanelSalesDemand_411_OnActivate.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,20 @@
Quintiq file version 2.0
#parent: PanelSalesDemand_411
Response OnActivate () id:Response_PanelSalesDemand_411_OnActivate
{
  #keys: '[414702.1.367969238]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebPanel_OnActivate'
  QuillAction
  {
    Body:
    [*
      ListPeggingResultProductInStockingPoint_MP.Visible( false );
      ListPeggingAllResultProductInStockingPoint_MP.Visible( false );
      ListPeggingResult.Visible( true );
      ListPeggingAllResult.Visible( true );
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Response_PanelStockingPoint_569_OnActivate.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,20 @@
Quintiq file version 2.0
#parent: PanelStockingPoint_569
Response OnActivate () id:Response_PanelStockingPoint_569_OnActivate
{
  #keys: '[414702.1.367969237]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebPanel_OnActivate'
  QuillAction
  {
    Body:
    [*
      ListPeggingResult.Visible( false );
      ListPeggingAllResult.Visible( false );
      ListPeggingResultProductInStockingPoint_MP.Visible( true );
      ListPeggingAllResultProductInStockingPoint_MP.Visible( true );
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Response_pButton_407_bCreate_OnClick.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
Quintiq file version 2.0
#parent: pButton_407/bCreate
Response OnClick () id:Response_pButton_407_bCreate_OnClick
{
  #keys: '[414702.1.367969242]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebButton_OnClick'
  Precondition:
  [*
    return not isnull( GlobalOTDSOP ) and not isnull( MacroPlan );
  *]
  QuillAction
  {
    Body:
    [*
      form := construct( FormNavigationPanel );
      form.ShowDockLeft();
      PeggingProduct_MP::CreateData( GlobalOTDSOP, DataHolderCheckedProduct.Data() );
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/Response_pButton_407_bRunPeggingAlgorithm_OnClick.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,22 @@
Quintiq file version 2.0
#parent: pButton_407/bRunPeggingAlgorithm
Response OnClick () id:Response_pButton_407_bRunPeggingAlgorithm_OnClick
{
  #keys: '[414702.1.367969241]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebButton_OnClick'
  Precondition:
  [*
    return not isnull( MacroPlan );
  *]
  QuillAction
  {
    Body:
    [*
      MacroPlan.RunPeggingAlgorithm();
      WebMessageBox::Success( "运行成功!", true );
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormPeggingResult/_ROOT_Component_FormPeggingResult.def
@@ -7,11 +7,13 @@
  BaseType: 'WebForm'
  Children:
  [
    #child: ListPeggingResult
    #child: PanelAbove
    #child: PanelBelow
  ]
  Properties:
  [
    Image: 'CUP'
    SizeableChildren: true
    Title: 'Pegging结果'
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormShowInterfaceData/Component_ListSummaryOfInboundTransaction.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,41 @@
Quintiq file version 2.0
Component ListSummaryOfInboundTransaction
{
  #keys: '[414702.1.387622982]'
  BaseType: 'WebList'
  Children:
  [
    Component DataExtractorSummaryOfInboundTransaction
    {
      #keys: '[414702.1.387622983]'
      BaseType: 'WebDataExtractor'
      Properties:
      [
        DataType: 'GlobalOTDTable'
        Source: 'GlobalOTDTable'
        Taborder: 0
        Transformation: 'Global_MappingSummaryOfInboundTransaction'
      ]
    }
    #child: listActionBarPageSummaryOfInboundTransaction
    Component DataSetLevelSummaryOfInboundTransaction
    {
      #keys: '[414702.1.387622988]'
      BaseType: 'WebDataSetLevel'
      Children:
      [
        #child: listContextMenuSummaryOfInboundTransaction
      ]
      Properties:
      [
        Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Item","title":"Item","subtotals":"","tooltip":"","width":-1,"display":"shown","attribute":"Item"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"OrganCode","title":"OrganCode","subtotals":"","tooltip":"","width":-1,"display":"shown","attribute":"OrganCode"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"OrganName","title":"OrganName","subtotals":"","tooltip":"","width":-1,"display":"shown","attribute":"OrganName"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"PlantName","title":"PlantName","subtotals":"","tooltip":"","width":-1,"display":"shown","attribute":"PlantName"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"TransactionDate","title":"TransactionDate","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"TransactionDate"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"TransactionQTY","title":"TransactionQTY","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"TransactionQTY"}}]'
        ContextMenu: 'listContextMenuSummaryOfInboundTransaction'
        Taborder: 2
      ]
    }
  ]
  Properties:
  [
    Taborder: 0
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormShowInterfaceData/Component_PanelInterfaceDataDisplayContent.def
@@ -13,6 +13,7 @@
    #child: PanelConversionFactor
    #child: PanelOperation
    #child: PanelOperationBOM
    #child: PanelSummaryOfInboundTransaction
  ]
  Properties:
  [
_Main/UI/MacroPlannerWebApp/Component_FormShowInterfaceData/Component_PanelSummaryOfInboundTransaction.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,15 @@
Quintiq file version 2.0
Component PanelSummaryOfInboundTransaction
{
  #keys: '[414702.1.390708893]'
  BaseType: 'WebPanel'
  Children:
  [
    #child: ListSummaryOfInboundTransaction
  ]
  Properties:
  [
    Taborder: 8
    Title: 'SummaryOfInboundTransaction'
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormShowInterfaceData/Component_listActionBarPageSummaryOfInboundTransaction.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
Component listActionBarPageSummaryOfInboundTransaction
{
  #keys: '[414702.1.387622985]'
  BaseType: 'listActionBarPage'
  Properties:
  [
    Taborder: 1
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormShowInterfaceData/Component_listContextMenuSummaryOfInboundTransaction.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
Component listContextMenuSummaryOfInboundTransaction
{
  #keys: '[414702.1.387622990]'
  BaseType: 'listContextMenu'
  Properties:
  [
    Taborder: 0
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormSummaryOfInboundTransaction/Component_ListSummaryOfInboundTransaction.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,41 @@
Quintiq file version 2.0
Component ListSummaryOfInboundTransaction
{
  #keys: '[414702.1.387623860]'
  BaseType: 'WebList'
  Children:
  [
    Component DataExtractorSummaryOfInboundTransaction
    {
      #keys: '[414702.1.387623861]'
      BaseType: 'WebDataExtractor'
      Properties:
      [
        DataType: 'GlobalOTDSOP'
        Source: 'GlobalOTDSOP'
        Taborder: 0
        Transformation: 'SummaryOfInboundTransaction'
      ]
    }
    #child: listActionBarPageSummaryOfInboundTransaction
    Component DataSetLevelSummaryOfInboundTransaction
    {
      #keys: '[414702.1.387623866]'
      BaseType: 'WebDataSetLevel'
      Children:
      [
        #child: listContextMenuSummaryOfInboundTransaction
      ]
      Properties:
      [
        Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Item","title":"物料编码","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Item"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"OrganCode","title":"组织编码","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"OrganCode"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"OrganName","title":"组织名称","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"OrganName"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"PlantName","title":"工厂名称","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"PlantName"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Total1","title":"1月汇总数量","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Total1"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Total2","title":"2月汇总数量","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Total2"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Total3","title":"3月汇总数量","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Total3"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Total4","title":"4月汇总数量","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Total4"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Total5","title":"5月汇总数量","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Total5"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Total6","title":"6月汇总数量","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Total6"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Total7","title":"7月汇总数量","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Total7"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Total8","title":"8月汇总数量","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Total8"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Total9","title":"9月汇总数量","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Total9"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Total10","title":"10月汇总数量","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Total10"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Total11","title":"11月汇总数量","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Total11"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Total12","title":"12月汇总数量","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Total12"}}]'
        ContextMenu: 'listContextMenuSummaryOfInboundTransaction'
        Taborder: 2
      ]
    }
  ]
  Properties:
  [
    Taborder: 1
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormSummaryOfInboundTransaction/Component_listActionBarPageSummaryOfInboundTransaction.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
Component listActionBarPageSummaryOfInboundTransaction
{
  #keys: '[414702.1.387623863]'
  BaseType: 'listActionBarPage'
  Properties:
  [
    Taborder: 1
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormSummaryOfInboundTransaction/Component_listContextMenuSummaryOfInboundTransaction.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
Component listContextMenuSummaryOfInboundTransaction
{
  #keys: '[414702.1.387623868]'
  BaseType: 'listContextMenu'
  Properties:
  [
    Taborder: 0
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormSummaryOfInboundTransaction/Component_pButton.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,26 @@
Quintiq file version 2.0
Component pButton
{
  #keys: '[414702.1.387623978]'
  BaseType: 'WebPanel'
  Children:
  [
    Component bFlushData
    {
      #keys: '[414702.1.387624225]'
      BaseType: 'WebButton'
      Properties:
      [
        Image: 'ARROW_CIRCLE2'
        Label: '刷新数据'
        Taborder: 0
      ]
    }
  ]
  Properties:
  [
    FixedSize: true
    Orientation: 'horizontal'
    Taborder: 0
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormSummaryOfInboundTransaction/Response_pButton_bFlushData_OnClick.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,16 @@
Quintiq file version 2.0
#parent: pButton/bFlushData
Response OnClick () id:Response_pButton_bFlushData_OnClick
{
  #keys: '[414702.1.391560055]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebButton_OnClick'
  QuillAction
  {
    Body:
    [*
      SummaryOfInboundTransaction::FlushData( GlobalOTDSOP, GlobalOTDTable );
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormSummaryOfInboundTransaction/_ROOT_Component_FormSummaryOfInboundTransaction.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,18 @@
Quintiq file version 2.0
#root
#parent: MacroPlannerWebApp
OrphanComponent FormSummaryOfInboundTransaction
{
  #keys: '[414702.1.387623720]'
  BaseType: 'WebForm'
  Children:
  [
    #child: ListSummaryOfInboundTransaction
    #child: pButton
  ]
  Properties:
  [
    Image: 'CLIPBOARD'
    Title: '入库交易汇总'
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormWorkOrderType/Component_ListWorkOrderType713.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,37 @@
Quintiq file version 2.0
Component ListWorkOrderType713
{
  #keys: '[414702.1.387623773]'
  BaseType: 'WebList'
  Children:
  [
    Component DataExtractorWorkOrderType504
    {
      #keys: '[414702.1.387623774]'
      BaseType: 'WebDataExtractor'
      Properties:
      [
        Taborder: 0
      ]
    }
    #child: listActionBarPageWorkOrderType423
    Component DataSetLevelWorkOrderType651
    {
      #keys: '[414702.1.387623779]'
      BaseType: 'WebDataSetLevel'
      Children:
      [
        #child: listContextMenuWorkOrderType493
      ]
      Properties:
      [
        ContextMenu: 'listContextMenuWorkOrderType493'
        Taborder: 2
      ]
    }
  ]
  Properties:
  [
    Taborder: 1
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormWorkOrderType/Component_listActionBarPageWorkOrderType423.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
Component listActionBarPageWorkOrderType423
{
  #keys: '[414702.1.387623776]'
  BaseType: 'listActionBarPage'
  Properties:
  [
    Taborder: 1
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormWorkOrderType/Component_listContextMenuWorkOrderType493.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
Component listContextMenuWorkOrderType493
{
  #keys: '[414702.1.387623781]'
  BaseType: 'listContextMenu'
  Properties:
  [
    Taborder: 0
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormWorkOrderType/_ROOT_Component_FormWorkOrderType.def
@@ -8,6 +8,7 @@
  Children:
  [
    #child: ListWorkOrderType
    #child: ListWorkOrderType713
  ]
  Properties:
  [
_Main/UI/MacroPlannerWebApp/Views/Pegging·ÖÎö.vw
@@ -4,31 +4,44 @@
  {
    forms
    {
      form_FormPeggingProduct_MP
      form_FormPeggingResult
      {
        title: 'QTIANMA_JITUAN::FormPeggingProduct_MP'
        title: 'QTIANMA_JITUAN::FormPeggingResult'
        shown: true
        componentID: 'QTIANMA_JITUAN::FormPeggingProduct_MP'
        componentID: 'QTIANMA_JITUAN::FormPeggingResult'
        layout
        {
          mode: 'open'
          rowPosition: 1
          rowSpan: 7
          rowSpan: 26
          columnPosition: 1
          columnSpan: 3
          columnSpan: 12
        }
        components
        {
          FormPeggingProduct_MP_pButton
          FormPeggingResult_PanelAbove
          {
            sizeRatio: 0.956634174600973
          }
          FormPeggingResult_PanelLeft
          {
            sizeRatio: 0.432843330645635
          }
          FormPeggingResult_PanelPeggingResult570
          {
            sizeRatio: 1
          }
          FormPeggingProduct_MP_ListPeggingProduct_MP
          FormPeggingResult_pButton
          {
            sizeRatio: 1
          }
          FormPeggingResult_ListPeggingProduct_MP
          {
          }
          FormPeggingProduct_MP_DataSetLevelPeggingProduct_MP
          FormPeggingResult_DataSetLevelPeggingProduct_MP
          {
            groupDepth: -1
            sort: 'ProductID'
            column_ProductID
            {
              columnId: 'ProductID'
@@ -39,27 +52,19 @@
              width: 150
            }
          }
        }
      }
      form_FormPeggingProductInSalesDemandBase_1
      {
        title: 'QTIANMA_JITUAN::FormPeggingProductInSalesDemandBase'
        shown: true
        componentID: 'QTIANMA_JITUAN::FormPeggingProductInSalesDemandBase'
        layout
        {
          mode: 'open'
          rowPosition: 8
          rowSpan: 6
          columnPosition: 1
          columnSpan: 3
        }
        components
        {
          FormPeggingProductInSalesDemandBase_ListPeggingProductInSalesDemandBase
          FormPeggingResult_PanelContent
          {
            sizeRatio: 1
            activeChild: 'PanelSalesDemand'
          }
          FormPeggingResult_PanelSalesDemand
          {
            sizeRatio: 1
          }
          FormPeggingResult_ListPeggingProductInSalesDemandBase
          {
          }
          FormPeggingProductInSalesDemandBase_DataSetLevelPeggingProductInSalesDemandBase
          FormPeggingResult_DataSetLevelPeggingProductInSalesDemandBase
          {
            groupDepth: -1
            sort: 'StartDate'
@@ -70,7 +75,7 @@
              dataType: 'string'
              index: 0
              subtotals: 'count'
              width: 61
              width: 62
            }
            column_StockingPointID
            {
@@ -79,7 +84,7 @@
              dataType: 'string'
              index: 1
              subtotals: ''
              width: 95
              width: 74
            }
            column_Quantity
            {
@@ -87,8 +92,8 @@
              dataPath: 'Quantity'
              dataType: 'real'
              index: 2
              subtotals: ''
              width: 51
              subtotals: 'sum'
              width: 50
            }
            column_StartDate
            {
@@ -97,26 +102,43 @@
              dataType: 'date'
              index: 3
              subtotals: ''
              width: 76
              width: 83
            }
          }
        }
      }
      form_FormPeggingResult
      {
        title: 'QTIANMA_JITUAN::FormPeggingResult'
        shown: true
        componentID: 'QTIANMA_JITUAN::FormPeggingResult'
        layout
        {
          mode: 'open'
          rowPosition: 1
          rowSpan: 13
          columnPosition: 4
          columnSpan: 9
        }
        components
        {
          FormPeggingResult_PanelStockingPoint
          {
            sizeRatio: 1
          }
          FormPeggingResult_ListStockingPoint
          {
          }
          FormPeggingResult_DataSetLevelStockingPoint
          {
            groupDepth: -1
            sort: 'ProductID,StockingPointID'
            column_ProductID
            {
              columnId: 'ProductID'
              dataPath: 'ProductID'
              dataType: 'string'
              index: 0
              subtotals: ''
              width: 141
            }
            column_StockingPointID
            {
              columnId: 'StockingPointID'
              dataPath: 'StockingPointID'
              dataType: 'string'
              index: 1
              subtotals: ''
              width: 113
            }
          }
          FormPeggingResult_PanelRight
          {
            sizeRatio: 1.56715666935437
          }
          FormPeggingResult_ListPeggingResult
          {
          }
@@ -184,7 +206,7 @@
              dataPath: 'FulfillmentQuantity'
              dataType: 'real'
              index: 6
              subtotals: ''
              subtotals: 'sum'
              width: 108
            }
            column_SupplyType
@@ -215,30 +237,106 @@
              width: 56
            }
          }
        }
      }
      form_FormPeggingAllResult
      {
        title: 'QTIANMA_JITUAN::FormPeggingAllResult'
        shown: true
        componentID: 'QTIANMA_JITUAN::FormPeggingAllResult'
        layout
        {
          mode: 'open'
          rowPosition: 14
          rowSpan: 12
          columnPosition: 1
          columnSpan: 12
        }
        components
        {
          FormPeggingAllResult_ListPeggingAllResult
          FormPeggingResult_ListPeggingResultProductInStockingPoint_MP
          {
          }
          FormPeggingAllResult_DataSetLevelPeggingAllResult
          FormPeggingResult_DataSetLevelRight
          {
            groupDepth: -1
            sort: 'ProductID,StockingPointID,StartDate'
            column_ProductID
            {
              columnId: 'ProductID'
              dataPath: 'ProductID'
              dataType: 'string'
              index: 0
              subtotals: 'count'
              width: 150
            }
            column_StockingPointID
            {
              columnId: 'StockingPointID'
              dataPath: 'StockingPointID'
              dataType: 'string'
              index: 1
              subtotals: ''
              width: 150
            }
            column_StartDate
            {
              columnId: 'StartDate'
              dataPath: 'StartDate'
              dataType: 'date'
              index: 2
              subtotals: ''
              width: 117
            }
            column_SupplyQuantity
            {
              columnId: 'SupplyQuantity'
              dataPath: 'SupplyQuantity'
              dataType: 'real'
              index: 3
              subtotals: 'sum'
              width: 95
            }
            column_ActualFulfillmentQuantity
            {
              columnId: 'ActualFulfillmentQuantity'
              dataPath: 'ActualFulfillmentQuantity'
              dataType: 'real'
              index: 4
              subtotals: ''
              width: 109
            }
            column_FulfillmentQuantity
            {
              columnId: 'FulfillmentQuantity'
              dataPath: 'FulfillmentQuantity'
              dataType: 'real'
              index: 5
              subtotals: 'sum'
              width: 137
            }
            column_SupplyType
            {
              columnId: 'SupplyType'
              dataPath: 'SupplyType'
              dataType: 'string'
              index: 6
              subtotals: ''
              width: 93
            }
            column_UnitOfMeasurementName
            {
              columnId: 'UnitOfMeasurementName'
              dataPath: 'UnitOfMeasurementName'
              dataType: 'string'
              index: 7
              subtotals: ''
              width: 57
            }
            column_NumberOfPlies
            {
              columnId: 'NumberOfPlies'
              dataPath: 'NumberOfPlies'
              dataType: 'number'
              index: 8
              subtotals: ''
              width: 56
            }
          }
          FormPeggingResult_PanelBelow
          {
            sizeRatio: 1.04336582539903
          }
          FormPeggingResult_ListPeggingAllResult
          {
          }
          FormPeggingResult_DataSetLevelPeggingAllResult
          {
            groupDepth: 2
            sort: 'ProductID,StockingPointID,StartDate,DESC:PeggingProductInSalesDemandBase.SalesDemandBaseID'
            sort: 'ProductID,StockingPointID,StartDate'
            column_PeggingProductInSalesDemandBase_SalesDemandBaseID
            {
              columnId: 'PeggingProductInSalesDemandBase.SalesDemandBaseID'
@@ -281,6 +379,95 @@
              dataPath: 'SupplyQuantity'
              dataType: 'real'
              index: 4
              subtotals: 'max'
              width: 150
            }
            column_ActualFulfillmentQuantity
            {
              columnId: 'ActualFulfillmentQuantity'
              dataPath: 'ActualFulfillmentQuantity'
              dataType: 'real'
              index: 5
              subtotals: ''
              width: 150
            }
            column_FulfillmentQuantity
            {
              columnId: 'FulfillmentQuantity'
              dataPath: 'FulfillmentQuantity'
              dataType: 'real'
              index: 6
              subtotals: 'sum'
              width: 150
            }
            column_SupplyType
            {
              columnId: 'SupplyType'
              dataPath: 'SupplyType'
              dataType: 'string'
              index: 7
              subtotals: ''
              width: 150
            }
            column_UnitOfMeasurementName
            {
              columnId: 'UnitOfMeasurementName'
              dataPath: 'UnitOfMeasurementName'
              dataType: 'string'
              index: 8
              subtotals: ''
              width: 150
            }
          }
          FormPeggingResult_ListPeggingAllResultProductInStockingPoint_MP
          {
          }
          FormPeggingResult_DataSetLevelBelow
          {
            groupDepth: 2
            sort: 'ProductID,StockingPointID,StartDate'
            column_ProductID
            {
              columnId: 'ProductID'
              dataPath: 'ProductID'
              dataType: 'string'
              index: 0
              subtotals: ''
              width: 150
            }
            column_StockingPointID
            {
              columnId: 'StockingPointID'
              dataPath: 'StockingPointID'
              dataType: 'string'
              index: 1
              subtotals: ''
              width: 150
            }
            column_StartDate
            {
              columnId: 'StartDate'
              dataPath: 'StartDate'
              dataType: 'date'
              index: 2
              subtotals: ''
              width: 150
            }
            column_SupplyQuantity
            {
              columnId: 'SupplyQuantity'
              dataPath: 'SupplyQuantity'
              dataType: 'real'
              index: 3
              subtotals: 'max'
              width: 150
            }
            column_ActualFulfillmentQuantity
            {
              columnId: 'ActualFulfillmentQuantity'
              dataPath: 'ActualFulfillmentQuantity'
              dataType: 'real'
              index: 4
              subtotals: ''
              width: 150
            }
_Main/UI/MacroPlannerWebApp/Views/Äê¶È²úÏú¸´ÅÌ.vw
@@ -156,7 +156,7 @@
          FormCapacityAndSaleBudgeFilterItem_DataSetLevelCapacityAndSaleBudgeFilterItem
          {
            groupDepth: -1
            sort: 'ItemName'
            sort: 'DESC:ItemName'
            column_ItemName
            {
              columnId: 'ItemName'
@@ -221,6 +221,7 @@
          FormCapacityAndSaleBudgeFilterPlaceOfProductionOfArray_DataSetLevelCapacityAndSaleBudgeFilterPlaceOfProductionOfArray
          {
            groupDepth: -1
            sort: 'DESC:PlaceOfProductionOfArray'
            column_PlaceOfProductionOfArray
            {
              columnId: 'PlaceOfProductionOfArray'
@@ -287,6 +288,7 @@
          FormCapacityAndSaleBudgeFilterBusinessType_DataSetLevelCapacityAndSaleBudgeFilterBusinessType
          {
            groupDepth: -1
            sort: 'DESC:BusinessType'
            column_BusinessType
            {
              columnId: 'BusinessType'
@@ -365,14 +367,186 @@
          }
        }
      }
      form_FormSummaryOfInboundTransaction
      {
        title: 'QTIANMA_JITUAN::FormSummaryOfInboundTransaction'
        shown: true
        componentID: 'QTIANMA_JITUAN::FormSummaryOfInboundTransaction'
        layout
        {
          mode: 'open'
          rowPosition: 35
          rowSpan: 12
          columnPosition: 1
          columnSpan: 12
        }
        components
        {
          FormSummaryOfInboundTransaction_pButton
          {
            sizeRatio: 1
          }
          FormSummaryOfInboundTransaction_ListSummaryOfInboundTransaction
          {
          }
          FormSummaryOfInboundTransaction_DataSetLevelSummaryOfInboundTransaction
          {
            groupDepth: -1
            column_Item
            {
              columnId: 'Item'
              dataPath: 'Item'
              dataType: 'string'
              index: 0
              subtotals: ''
              width: 150
            }
            column_OrganCode
            {
              columnId: 'OrganCode'
              dataPath: 'OrganCode'
              dataType: 'string'
              index: 1
              subtotals: ''
              width: 150
            }
            column_OrganName
            {
              columnId: 'OrganName'
              dataPath: 'OrganName'
              dataType: 'string'
              index: 2
              subtotals: ''
              width: 150
            }
            column_PlantName
            {
              columnId: 'PlantName'
              dataPath: 'PlantName'
              dataType: 'string'
              index: 3
              subtotals: ''
              width: 150
            }
            column_Total1
            {
              columnId: 'Total1'
              dataPath: 'Total1'
              dataType: 'real'
              index: 4
              subtotals: ''
              width: 150
            }
            column_Total2
            {
              columnId: 'Total2'
              dataPath: 'Total2'
              dataType: 'real'
              index: 5
              subtotals: ''
              width: 150
            }
            column_Total3
            {
              columnId: 'Total3'
              dataPath: 'Total3'
              dataType: 'real'
              index: 6
              subtotals: ''
              width: 150
            }
            column_Total4
            {
              columnId: 'Total4'
              dataPath: 'Total4'
              dataType: 'real'
              index: 7
              subtotals: ''
              width: 150
            }
            column_Total5
            {
              columnId: 'Total5'
              dataPath: 'Total5'
              dataType: 'real'
              index: 8
              subtotals: ''
              width: 150
            }
            column_Total6
            {
              columnId: 'Total6'
              dataPath: 'Total6'
              dataType: 'real'
              index: 9
              subtotals: ''
              width: 150
            }
            column_Total7
            {
              columnId: 'Total7'
              dataPath: 'Total7'
              dataType: 'real'
              index: 10
              subtotals: ''
              width: 150
            }
            column_Total8
            {
              columnId: 'Total8'
              dataPath: 'Total8'
              dataType: 'real'
              index: 11
              subtotals: ''
              width: 150
            }
            column_Total9
            {
              columnId: 'Total9'
              dataPath: 'Total9'
              dataType: 'real'
              index: 12
              subtotals: ''
              width: 150
            }
            column_Total10
            {
              columnId: 'Total10'
              dataPath: 'Total10'
              dataType: 'real'
              index: 13
              subtotals: ''
              width: 150
            }
            column_Total11
            {
              columnId: 'Total11'
              dataPath: 'Total11'
              dataType: 'real'
              index: 14
              subtotals: ''
              width: 150
            }
            column_Total12
            {
              columnId: 'Total12'
              dataPath: 'Total12'
              dataType: 'real'
              index: 15
              subtotals: ''
              width: 150
            }
          }
        }
      }
    }
    userconfigurableinformation
    {
    }
    image: 'PIG'
    page: ''
    group: ''
    index: 0
    image: 'PIG'
    description: ''
  }
  formatversion: 2
_Main/UI/MacroPlannerWebApp/Views/Ä£×é_Ãæ°å¹ØÏµ.vw
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,194 @@
Quintiq file version 2.0
{
  viewcontents
  {
    forms
    {
      form_legacy_3
      {
        title: 'Products'
        shown: true
        componentID: 'FormProducts'
        layout
        {
          mode: 'open'
          rowPosition: 1
          rowSpan: 6
          columnPosition: 1
          columnSpan: 3
        }
        components
        {
          FormProducts_PanelList
          {
            sizeRatio: 1
          }
          FormProducts_ListProduct
          {
          }
          FormProducts_DataSetLevelRootProduct
          {
            groupDepth: -1
            sort: 'Name'
            column_Name
            {
              columnId: 'Name'
              dataPath: 'Name'
              dataType: 'string'
              title: '名称'
              index: 0
              subtotals: ''
              width: 271
            }
          }
          FormProducts_DataSetLevelChildProduct
          {
            groupDepth: -1
            column_Name
            {
              columnId: 'Name'
              dataPath: 'Name'
              dataType: 'string'
              title: '名称'
              index: 0
              subtotals: ''
              width: 202
            }
          }
        }
      }
      form_FormProductInStockingPoints_1
      {
        title: 'Assigned to stocking points'
        shown: true
        componentID: 'FormProductInStockingPoints'
        layout
        {
          mode: 'open'
          rowPosition: 7
          rowSpan: 6
          columnPosition: 1
          columnSpan: 3
        }
        components
        {
          FormProductInStockingPoints_ListProductInStockingPointsForProductsView
          {
          }
          FormProductInStockingPoints_ListProductInStockingPointsForProductsView_DataSetLevelProductInStockingPoints
          {
            groupDepth: -1
            column_Product_MP_Name
            {
              columnId: 'Product_MP.Name'
              dataPath: 'Product_MP.Name'
              dataType: 'string'
              title: 'Product name'
              index: 0
              subtotals: ''
              width: 134
            }
            column_StockingPoint_MP_Name
            {
              columnId: 'StockingPoint_MP.Name'
              dataPath: 'StockingPoint_MP.Name'
              dataType: 'string'
              title: 'Stocking point name'
              index: 1
              subtotals: ''
              width: 150
            }
          }
        }
      }
      form_FormModulePanelCorrespondence
      {
        title: 'QTIANMA_JITUAN::FormModulePanelCorrespondence'
        shown: true
        componentID: 'QTIANMA_JITUAN::FormModulePanelCorrespondence'
        layout
        {
          mode: 'open'
          rowPosition: 1
          rowSpan: 12
          columnPosition: 4
          columnSpan: 9
        }
        components
        {
          FormModulePanelCorrespondence_PanelModule
          {
            sizeRatio: 1
          }
          FormModulePanelCorrespondence_ListModulePanelCorrespondence
          {
          }
          FormModulePanelCorrespondence_DataSetLevelModulePanelCorrespondence
          {
            groupDepth: -1
            column_ModuleProductID
            {
              columnId: 'ModuleProductID'
              dataPath: 'ModuleProductID'
              dataType: 'string'
              index: 0
              subtotals: ''
              width: 150
            }
            column_ModuleStockingPointID
            {
              columnId: 'ModuleStockingPointID'
              dataPath: 'ModuleStockingPointID'
              dataType: 'string'
              index: 1
              subtotals: ''
              width: 150
            }
          }
          FormModulePanelCorrespondence_PanelPanel
          {
            sizeRatio: 1
          }
          FormModulePanelCorrespondence_ListModuleCorrespondence
          {
          }
          FormModulePanelCorrespondence_DataSetLevelModuleCorrespondence
          {
            groupDepth: -1
            column_PanelProductID
            {
              columnId: 'PanelProductID'
              dataPath: 'PanelProductID'
              dataType: 'string'
              index: 0
              subtotals: ''
              width: 150
            }
            column_PanelStockingPointID
            {
              columnId: 'PanelStockingPointID'
              dataPath: 'PanelStockingPointID'
              dataType: 'string'
              index: 1
              subtotals: ''
              width: 150
            }
          }
        }
      }
    }
    userconfigurableinformation
    {
    }
    page: ''
    group: ''
    index: 0
    image: 'LAPTOP'
    description: ''
  }
  formatversion: 2
  id: '模组_面板关系'
  name: '模组_面板关系'
  isglobal: false
  isroot: true
}
_var/_Main/ModelSettings/Common/Live-25/_ROOT_Role_Live-25.properties
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,575 @@
#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.name=Live-25
arg=template:serverargs
arg.architectdependencies=
arg.custom=""
arg.versioncontrolmode=true
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=dbodbc1
domainmodel.ediremotedatasourcedefinition.remotestorage.localoracle.maxcolumnnamelength=0
domainmodel.ediremotedatasourcedefinition.remotestorage.localoracle.maxtablenamelength=0
domainmodel.ediremotedatasourcedefinition.remotestorage.localoracle.parameters=/datasource=orclpdb /owner=TIANMA /chardatatypeforstring /characterencoding=UTF-8 /appdatatypeforstring=wchar
domainmodel.ediremotedatasourcedefinition.remotestorage.localoracle.password=1 E9FE769DABE91891284EBBA6CEA8F41B 479d6f99-cffb-41e6-94f1-d35bdf20703c
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.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=
domainmodel.mdsstoragedefinitionmanager.databaseenabled=false
domainmodel.mdsstoragedefinitionmanager.datasetstoredatasource=MacroPlanner
domainmodel.mdsstoragedefinitionmanager.datasetstoreenabled=false
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=potddb.tianma.cn
domainmodel.mdsstoragedefinitionmanager.ociconnectionbasicport=1522
domainmodel.mdsstoragedefinitionmanager.ociconnectionbasicservice=potddb_zx
domainmodel.mdsstoragedefinitionmanager.ociconnectiontnsname=
domainmodel.mdsstoragedefinitionmanager.ociconnectiontype=Basic
domainmodel.mdsstoragedefinitionmanager.parameters=/datasource=MacroPlannerInternalDB /user=OTDGONGQUE
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=
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
_var/_Main/ModelSettings/Common/Live-27/_ROOT_Role_Live-27.properties
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,575 @@
#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.name=Live-27
arg=template:serverargs
arg.architectdependencies=
arg.custom=""
arg.versioncontrolmode=true
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=dbodbc1
domainmodel.ediremotedatasourcedefinition.remotestorage.localoracle.maxcolumnnamelength=0
domainmodel.ediremotedatasourcedefinition.remotestorage.localoracle.maxtablenamelength=0
domainmodel.ediremotedatasourcedefinition.remotestorage.localoracle.parameters=/datasource=orclpdb /owner=TIANMA /chardatatypeforstring /characterencoding=UTF-8 /appdatatypeforstring=wchar
domainmodel.ediremotedatasourcedefinition.remotestorage.localoracle.password=1 E9FE769DABE91891284EBBA6CEA8F41B 479d6f99-cffb-41e6-94f1-d35bdf20703c
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.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=
domainmodel.mdsstoragedefinitionmanager.databaseenabled=false
domainmodel.mdsstoragedefinitionmanager.datasetstoredatasource=MacroPlanner
domainmodel.mdsstoragedefinitionmanager.datasetstoreenabled=false
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=potddb.tianma.cn
domainmodel.mdsstoragedefinitionmanager.ociconnectionbasicport=1522
domainmodel.mdsstoragedefinitionmanager.ociconnectionbasicservice=potddb_qcdz
domainmodel.mdsstoragedefinitionmanager.ociconnectiontnsname=
domainmodel.mdsstoragedefinitionmanager.ociconnectiontype=Basic
domainmodel.mdsstoragedefinitionmanager.parameters=/datasource=MacroPlannerInternalDB /user=OTDLANYUE
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=
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
_var/_Main/ProjSettings/MacroPlanner/Views/X_·ÖÎöÊÓͼ_[414702.1.50321581].vw
@@ -16,7 +16,7 @@
  CREATIONUSER 'quintiq/hongjli'
  UPDATEDATETIME '2023-11-01T11:42:14'
  UPDATEUSER 'quintiq/hongjli'
  LASTACCESSDATE '2023-11-01'
  LASTACCESSDATE '2023-11-06'
  VIEWSCOPE 0
}
AUTHORIZATIONS
@@ -42,13 +42,13 @@
INFOOBJECT
{
  KEY [626.0.4514905]
  OBJECTTYPE Application // ApplicationLibMacroPlanner
  OBJECTTYPE Application
  BASEINFOOBJECTS
  {
   BASEINFOOBJECT
   {
    KEY [626.0.4514905]
    OBJECTTYPE GUIComponent // ApplicationLibMacroPlanner
    OBJECTTYPE GUIComponent
    CONTENTS
    {
     SETTINGS_MDS_WITH_FOLDER
@@ -80,19 +80,19 @@
   INFOOBJECT
   {
    KEY [514.0.2180]
    OBJECTTYPE Frame // Frame
    OBJECTTYPE Frame
    CONTENTS
    {
     State := maximized
     (200,0,1536,809)
     WorkspaceLocation :=
     WorkspaceLocation :=
    }
    INFOOBJECTS
    {
     INFOOBJECT
     {
      KEY [113694.2.1024236755]
      OBJECTTYPE ValueHolder // ValueHolderViewLayout
      OBJECTTYPE ValueHolder
      CONTENTS
      {
       Value ''
@@ -101,7 +101,7 @@
     INFOOBJECT
     {
      KEY [127710.1.721401771]
      OBJECTTYPE ValueHolder // ValueHolderActiveMacroPlan
      OBJECTTYPE ValueHolder
      CONTENTS
      {
       Value '[414702.1.314120528]'
@@ -110,7 +110,7 @@
     INFOOBJECT
     {
      KEY [132448.0.224582518]
      OBJECTTYPE ValueHolder // ValueHolderSetMPDefaultViewForFirstLogin
      OBJECTTYPE ValueHolder
      CONTENTS
      {
       Value 'false'
@@ -119,7 +119,7 @@
     INFOOBJECT
     {
      KEY [146450.2.1404665746]
      OBJECTTYPE ValueHolder // vhConfiguration
      OBJECTTYPE ValueHolder
      CONTENTS
      {
       Value 'false'
@@ -128,7 +128,7 @@
     INFOOBJECT
     {
      KEY [146874.1.233869144]
      OBJECTTYPE ValueHolder // vhConfigurationMatrix
      OBJECTTYPE ValueHolder
      CONTENTS
      {
       Value 'false'
@@ -137,7 +137,7 @@
     INFOOBJECT
     {
      KEY [132894.0.1007052496]
      OBJECTTYPE ValueHolder // ValueHolderSetDataHolderSelectedPISPIPExtractor
      OBJECTTYPE ValueHolder
      CONTENTS
      {
       Value 'false'
@@ -146,7 +146,7 @@
     INFOOBJECT
     {
      KEY [108684.0.1782661552]
      OBJECTTYPE ValueHolder // ValueHolderLastSelected3DDriveDirectory
      OBJECTTYPE ValueHolder
      CONTENTS
      {
       Value ''
@@ -155,7 +155,7 @@
     INFOOBJECT
     {
      KEY [107654.0.557163713]
      OBJECTTYPE ValueHolder // ValueHolderUserGroup
      OBJECTTYPE ValueHolder
      CONTENTS
      {
       Value ';Administrator;Developer;AggregatedPlanning;MRPPlanning;ProductionPlan;BusinessUnitOM;Web_BlendingPlan;Web_Plan;Web_TripPlan;Web_PurchasingPlan;Web_ProductionPlan;KpiTrackerAdmin;Web_SafetyStock;Web_Inventory;Web_CapacitySmoothing;Web_ShelfLife;Web_LotSizes;Web_Optimizer;Web_SupplyDashboard;Web_OptimizerBenchmarking;Web_Integration;Web_MyActivities;Web_WorkFlowConfiguration;Web_SafetyStockCalculation;Web_InventoryMixBalancing;Web_Feedbacks;Web_Financials;Web_Allocation;Web_DemandPostponement;Web_Blending;Web_ScenariosAndSettings;Web;Web_Development;Web_Sales;Web_CampaignPlanning;Web_SupplyChainData;Web_SupplyPlanning;SOAPServerUserGroup;CollaborativeForecasting;DemandPlanner;SupplyPlanner;SupplyChainDirector;OnPremise;Cloud;SOP;Software;Functionalities;Workflow;TransportationPlanning;SupplySpecifications;SupplyChainMap;ShelfLife;SalesDemandPostponement;SafetyStockCalculation;ProductPlanningGanttChart;Pegging;OptimizerBenchmarking;LotSizes;InventorySupplies;InventorySpecifications;InventoryMixBalancing;Groups;Feedback;Development;DatabaseIntegration;CapacitySmoothing;CampaignPlanning;Blending;AppConfigurators;Implementors'
@@ -164,7 +164,7 @@
     INFOOBJECT
     {
      KEY [113694.1.227882923]
      OBJECTTYPE ValueHolder // ValueHolderShowSanityCheck
      OBJECTTYPE ValueHolder
      CONTENTS
      {
       Value ''
@@ -173,7 +173,7 @@
     INFOOBJECT
     {
      KEY [126224.0.581715]
      OBJECTTYPE ValueHolder // ValueHolder
      OBJECTTYPE ValueHolder
      CONTENTS
      {
       Value 'Feasible'
@@ -182,7 +182,7 @@
     INFOOBJECT
     {
      KEY [132894.0.388222255]
      OBJECTTYPE ValueHolder // ValueHolderImportProfileMessage
      OBJECTTYPE ValueHolder
      CONTENTS
      {
       Value ''
@@ -191,7 +191,7 @@
     INFOOBJECT
     {
      KEY [127238.1.80067038]
      OBJECTTYPE ValueHolder // ValueHolderSizing
      OBJECTTYPE ValueHolder
      CONTENTS
      {
       Value 'true'
@@ -200,7 +200,7 @@
     INFOOBJECT
     {
      KEY [122192.0.103731718]
      OBJECTTYPE ValueHolder // ValueHolderSanityCheckHighestSeverityMsgCount
      OBJECTTYPE ValueHolder
      CONTENTS
      {
       Value '39'
@@ -209,7 +209,7 @@
     INFOOBJECT
     {
      KEY [113694.2.1085093394]
      OBJECTTYPE ValueHolder // ValueHolderIsImportSucceed
      OBJECTTYPE ValueHolder
      CONTENTS
      {
       Value 'true'
@@ -218,7 +218,7 @@
     INFOOBJECT
     {
      KEY [132448.0.331221783]
      OBJECTTYPE ValueHolder // ValueHolderScenarioMPSize
      OBJECTTYPE ValueHolder
      CONTENTS
      {
       Value '1'
@@ -227,7 +227,7 @@
     INFOOBJECT
     {
      KEY [127238.1.502176570]
      OBJECTTYPE ValueHolder // ValueHolderPeriodRollStatus
      OBJECTTYPE ValueHolder
      CONTENTS
      {
       Value 'false'
@@ -236,7 +236,7 @@
     INFOOBJECT
     {
      KEY [112884.1.706803944]
      OBJECTTYPE ValueHolder // ValueHolderSanityCheckHighestSeverity
      OBJECTTYPE ValueHolder
      CONTENTS
      {
       Value '2'
@@ -245,7 +245,7 @@
     INFOOBJECT
     {
      KEY [132448.0.662420775]
      OBJECTTYPE GUIDataSetLevel // GUIDataSetLevel
      OBJECTTYPE GUIDataSetLevel
      CONTENTS
      {
       Columns
@@ -285,13 +285,13 @@
     INFOOBJECT
     {
      KEY [136682.0.314428046]
      OBJECTTYPE GUIComponent // PTFPanelTestController
      OBJECTTYPE GUIComponent
      INFOOBJECTS
      {
       INFOOBJECT
       {
        KEY [105690.0.246954464]
        OBJECTTYPE ValueHolder // vhLogging
        OBJECTTYPE ValueHolder
        CONTENTS
        {
         Value ''
@@ -300,7 +300,7 @@
       INFOOBJECT
       {
        KEY [104342.0.773994982]
        OBJECTTYPE ValueHolder // vhDoActionInfoReturn
        OBJECTTYPE ValueHolder
        CONTENTS
        {
         Value ''
@@ -309,7 +309,7 @@
       INFOOBJECT
       {
        KEY [104342.0.867521338]
        OBJECTTYPE ValueHolder // vhPendingActions
        OBJECTTYPE ValueHolder
        CONTENTS
        {
         Value ''
@@ -318,7 +318,7 @@
       INFOOBJECT
       {
        KEY [104342.0.867524820]
        OBJECTTYPE ValueHolder // vhSharedRepository
        OBJECTTYPE ValueHolder
        CONTENTS
        {
         Value '\\\\CNLEN1845000693\\PTF_Repository\\'
@@ -327,7 +327,7 @@
       INFOOBJECT
       {
        KEY [105690.0.892938783]
        OBJECTTYPE ValueHolder // vhAsyncActionStatus
        OBJECTTYPE ValueHolder
        CONTENTS
        {
         Value ''
@@ -336,7 +336,7 @@
       INFOOBJECT
       {
        KEY [105690.0.247211998]
        OBJECTTYPE ValueHolder // vhResultLogPath
        OBJECTTYPE ValueHolder
        CONTENTS
        {
         Value ''
@@ -345,7 +345,7 @@
       INFOOBJECT
       {
        KEY [105690.0.892939622]
        OBJECTTYPE ValueHolder // vhPTFExecutionStatus
        OBJECTTYPE ValueHolder
        CONTENTS
        {
         Value 'Inactive'
@@ -354,7 +354,7 @@
       INFOOBJECT
       {
        KEY [103546.0.81355542]
        OBJECTTYPE ValueHolder // vhAutoClose
        OBJECTTYPE ValueHolder
        CONTENTS
        {
         Value ''
@@ -363,7 +363,7 @@
       INFOOBJECT
       {
        KEY [103546.0.54652306]
        OBJECTTYPE ValueHolder // vhLogStart
        OBJECTTYPE ValueHolder
        CONTENTS
        {
         Value ''
@@ -374,7 +374,7 @@
     INFOOBJECT
     {
      KEY [113694.2.1146370710]
      OBJECTTYPE Toolbar // ToolbarWorkflow
      OBJECTTYPE Toolbar
      CONTENTS
      {
       'vertical' '50' '0'
@@ -384,16 +384,13 @@
       INFOOBJECT
       {
        KEY [113694.2.1146375645]
        OBJECTTYPE CustomDrawComponent // SWF_MP_CustomDrawComponentProcessDashboard
        BASEINFOOBJECTS
        {
        }
        OBJECTTYPE CustomDrawComponent
        INFOOBJECTS
        {
         INFOOBJECT
         {
          KEY [132478.0.288924864]
          OBJECTTYPE ValueHolder // ValueHolderLastSyncDateTime
          OBJECTTYPE ValueHolder
          CONTENTS
          {
           Value '01-11-2023, 10:05:04'
@@ -406,7 +403,7 @@
     INFOOBJECT
     {
      KEY [11660.0.360702312]
      OBJECTTYPE Toolbar // ToolbarSupplyChainPanel
      OBJECTTYPE Toolbar
      CONTENTS
      {
       'horizontal' '50' '320'
@@ -416,7 +413,7 @@
       INFOOBJECT
       {
        KEY [113694.2.1070869880]
        OBJECTTYPE ValueHolder // ValueHolderNavigationPanelState
        OBJECTTYPE ValueHolder
        CONTENTS
        {
         Value 'true'
@@ -425,7 +422,7 @@
       INFOOBJECT
       {
        KEY [113694.2.1070870209]
        OBJECTTYPE ValueHolder // ValueHolderNavigationPanelSize
        OBJECTTYPE ValueHolder
        CONTENTS
        {
         Value '320'
@@ -434,13 +431,13 @@
       INFOOBJECT
       {
        KEY [113694.2.1033284312]
        OBJECTTYPE SplitterWnd // SplitterWnd
        OBJECTTYPE SplitterWnd
        INFOOBJECTS
        {
         INFOOBJECT
         {
          KEY [113694.2.1033284313]
          OBJECTTYPE SplitterPane // SplitterPane
          OBJECTTYPE SplitterPane
          CONTENTS
          {
           VISIBLE true
@@ -450,7 +447,7 @@
           INFOOBJECT
           {
            KEY [127238.0.1883499282]
            OBJECTTYPE TabComponent // TabComponent
            OBJECTTYPE TabComponent
            CONTENTS
            {
             ActivePageIndex 0
@@ -460,7 +457,7 @@
             INFOOBJECT
             {
              KEY [132448.0.71838188]
              OBJECTTYPE List // ListNavigationPanelSelection
              OBJECTTYPE List
              CONTENTS
              {
               Quantorrow := false
@@ -470,7 +467,7 @@
               INFOOBJECT
               {
                KEY [127238.0.1883514459]
                OBJECTTYPE ValueHolder // ValueHolderListSelections
                OBJECTTYPE ValueHolder
                CONTENTS
                {
                 Value 'Stocking points and units'
@@ -479,7 +476,7 @@
               INFOOBJECT
               {
                KEY [127238.0.1883514458]
                OBJECTTYPE GUIDataSetLevel // GUIDataSetLevel288
                OBJECTTYPE GUIDataSetLevel
                CONTENTS
                {
                 Columns
@@ -510,13 +507,13 @@
             INFOOBJECT
             {
              KEY [127238.0.1883516525]
              OBJECTTYPE SplitterWnd // SplitterWnd516
              OBJECTTYPE SplitterWnd
              INFOOBJECTS
              {
               INFOOBJECT
               {
                KEY [127238.0.1883516526]
                OBJECTTYPE SplitterPane // SplitterPaneEntities
                OBJECTTYPE SplitterPane
                CONTENTS
                {
                 Size 100
@@ -527,20 +524,17 @@
                 INFOOBJECT
                 {
                  KEY [127238.0.1883516528]
                  OBJECTTYPE List // ListEntityTreeInPanel
                  OBJECTTYPE List
                  CONTENTS
                  {
                   Quantorrow := false
                  }
                  BASEINFOOBJECTS
                  {
                  }
                  INFOOBJECTS
                  {
                   INFOOBJECT
                   {
                    KEY [113694.2.1026852831]
                    OBJECTTYPE GUIDataSetLevel // GUIDataSetLevelUnit
                    OBJECTTYPE GUIDataSetLevel
                    CONTENTS
                    {
                     Columns
@@ -575,7 +569,7 @@
               INFOOBJECT
               {
                KEY [127238.0.1883516541]
                OBJECTTYPE SplitterPane // SplitterPaneProducts
                OBJECTTYPE SplitterPane
                CONTENTS
                {
                 Size 0
@@ -586,20 +580,17 @@
                 INFOOBJECT
                 {
                  KEY [127238.0.1883516544]
                  OBJECTTYPE List // ListProductInPanel
                  OBJECTTYPE List
                  CONTENTS
                  {
                   Quantorrow := false
                  }
                  BASEINFOOBJECTS
                  {
                  }
                  INFOOBJECTS
                  {
                   INFOOBJECT
                   {
                    KEY [113694.2.1025678105]
                    OBJECTTYPE GUIDataSetLevel // GUIDataSetLevelProducts
                    OBJECTTYPE GUIDataSetLevel
                    CONTENTS
                    {
                     Columns
@@ -632,7 +623,7 @@
               INFOOBJECT
               {
                KEY [127238.0.1883516552]
                OBJECTTYPE SplitterPane // SplitterPaneSalesSegment
                OBJECTTYPE SplitterPane
                CONTENTS
                {
                 Size 0
@@ -643,20 +634,17 @@
                 INFOOBJECT
                 {
                  KEY [127238.0.1883516554]
                  OBJECTTYPE List // ListSalesSegmentInPanel
                  OBJECTTYPE List
                  CONTENTS
                  {
                   Quantorrow := false
                  }
                  BASEINFOOBJECTS
                  {
                  }
                  INFOOBJECTS
                  {
                   INFOOBJECT
                   {
                    KEY [11660.0.1616690288]
                    OBJECTTYPE GUIDataSetLevel // GUIDataSetLevelSalesSegment
                    OBJECTTYPE GUIDataSetLevel
                    CONTENTS
                    {
                     Columns
@@ -689,7 +677,7 @@
               INFOOBJECT
               {
                KEY [131438.0.356639347]
                OBJECTTYPE SplitterPane // SplitterPanePeriods
                OBJECTTYPE SplitterPane
                CONTENTS
                {
                 Size 0
@@ -700,7 +688,7 @@
                 INFOOBJECT
                 {
                  KEY [131438.0.353247249]
                  OBJECTTYPE List // ListPeriodSpecificationInPanel
                  OBJECTTYPE List
                  CONTENTS
                  {
                   Quantorrow := false
@@ -710,7 +698,7 @@
                   INFOOBJECT
                   {
                    KEY [131438.0.371333408]
                    OBJECTTYPE GUIDataSetLevel // GUIDataSetLevelPeriodSpecifications
                    OBJECTTYPE GUIDataSetLevel
                    CONTENTS
                    {
                     Columns
@@ -742,7 +730,7 @@
                     INFOOBJECT
                     {
                      KEY [131438.0.402834330]
                      OBJECTTYPE GUIDataSetLevel // GUIDataSetLevelPeriods
                      OBJECTTYPE GUIDataSetLevel
                      CONTENTS
                      {
                       Columns
@@ -791,13 +779,13 @@
             INFOOBJECT
             {
              KEY [127238.0.1884468404]
              OBJECTTYPE SplitterWnd // SplitterWnd466
              OBJECTTYPE SplitterWnd
              INFOOBJECTS
              {
               INFOOBJECT
               {
                KEY [127238.0.1884468405]
                OBJECTTYPE SplitterPane // SplitterPane252
                OBJECTTYPE SplitterPane
                CONTENTS
                {
                 VISIBLE true
@@ -807,7 +795,7 @@
                 INFOOBJECT
                 {
                  KEY [127238.0.1884468597]
                  OBJECTTYPE List // ListBookmarks
                  OBJECTTYPE List
                  CONTENTS
                  {
                   Quantorrow := false
@@ -817,7 +805,7 @@
                   INFOOBJECT
                   {
                    KEY [130238.0.368320209]
                    OBJECTTYPE GUIDataSetLevel // GUIDataSetLevelBookmarks
                    OBJECTTYPE GUIDataSetLevel
                    CONTENTS
                    {
                     Columns
@@ -848,7 +836,7 @@
                     INFOOBJECT
                     {
                      KEY [130238.0.368320210]
                      OBJECTTYPE GUIDataSetLevel // GUIDataSetLevelBookmarkChildren
                      OBJECTTYPE GUIDataSetLevel
                      CONTENTS
                      {
                       Columns
@@ -897,7 +885,7 @@
      SINGLEINSTANCE false
      ID '销售需求'
      PARENTKEY [514.0.2180]
      OBJECTTYPE Form // FormSalesDemands
      OBJECTTYPE Form
      CREATETYPE FormSalesDemands
      CONTENTS
      {
@@ -905,21 +893,18 @@
       (1344,0,192,928)
       DockableLocation := Station[MAIN]State[NORM]TreePath[T0.4484;]TabIdx[0]Selection[NONE]
      }
      BASEINFOOBJECTS
      {
      }
      INFOOBJECTS
      {
       INFOOBJECT
       {
        KEY [124112.0.87054864]
        OBJECTTYPE SplitterWnd // SplitterWnd1
        OBJECTTYPE SplitterWnd
        INFOOBJECTS
        {
         INFOOBJECT
         {
          KEY [124112.0.87054865]
          OBJECTTYPE SplitterPane // SplitterPaneSalesDemand
          OBJECTTYPE SplitterPane
          CONTENTS
          {
           Size 72.2642807983482
@@ -930,7 +915,7 @@
           INFOOBJECT
           {
            KEY [124112.0.87250426]
            OBJECTTYPE List // ListSalesDemand
            OBJECTTYPE List
            CONTENTS
            {
             Quantorrow := false
@@ -940,7 +925,7 @@
             INFOOBJECT
             {
              KEY [124112.0.87253131]
              OBJECTTYPE GUIDataSetLevel // GUIDataSetLevelSalesDemand
              OBJECTTYPE GUIDataSetLevel
              CONTENTS
              {
               Columns
@@ -1075,7 +1060,7 @@
         INFOOBJECT
         {
          KEY [124112.0.87054866]
          OBJECTTYPE SplitterPane // SplitterPaneSalesDemandInPeriod
          OBJECTTYPE SplitterPane
          CONTENTS
          {
           Size 27.7357192016518
@@ -1086,13 +1071,13 @@
           INFOOBJECT
           {
            KEY [116826.1.6886965]
            OBJECTTYPE SplitterWnd // SplitterWnd
            OBJECTTYPE SplitterWnd
            INFOOBJECTS
            {
             INFOOBJECT
             {
              KEY [116826.1.6886966]
              OBJECTTYPE SplitterPane // SplitterPane
              OBJECTTYPE SplitterPane
              CONTENTS
              {
               VISIBLE true
@@ -1102,7 +1087,7 @@
               INFOOBJECT
               {
                KEY [116826.1.6887229]
                OBJECTTYPE List // ListAggregatedSalesDemandInPeriod
                OBJECTTYPE List
                CONTENTS
                {
                 Quantorrow := false
@@ -1112,7 +1097,7 @@
                 INFOOBJECT
                 {
                  KEY [116826.1.6887235]
                  OBJECTTYPE GUIDataSetLevel // GUIDataSetLevelSalesDemandInPeriod
                  OBJECTTYPE GUIDataSetLevel
                  CONTENTS
                  {
                   Columns
@@ -1205,7 +1190,7 @@
             INFOOBJECT
             {
              KEY [116826.1.6886967]
              OBJECTTYPE SplitterPane // SplitterPane552
              OBJECTTYPE SplitterPane
              CONTENTS
              {
               VISIBLE true
@@ -1215,7 +1200,7 @@
               INFOOBJECT
               {
                KEY [116826.1.6889558]
                OBJECTTYPE List // ListDisaggregatedSalesDemandInPeriod
                OBJECTTYPE List
                CONTENTS
                {
                 Quantorrow := false
@@ -1225,7 +1210,7 @@
                 INFOOBJECT
                 {
                  KEY [116826.1.6889563]
                  OBJECTTYPE GUIDataSetLevel // GUIDataSetLevel
                  OBJECTTYPE GUIDataSetLevel
                  CONTENTS
                  {
                   Columns
@@ -1330,7 +1315,7 @@
      SINGLEINSTANCE false
      ID 'Pegging'
      PARENTKEY [514.0.2180]
      OBJECTTYPE Form // FormPegging
      OBJECTTYPE Form
      CREATETYPE FormPegging
      CONTENTS
      {
@@ -1338,21 +1323,18 @@
       (354,421,990,664)
       DockableLocation := Station[MAIN]State[NORM]TreePath[B0.5516;]TabIdx[0]Selection[NONE]
      }
      BASEINFOOBJECTS
      {
      }
      INFOOBJECTS
      {
       INFOOBJECT
       {
        KEY [108486.1.1171911809]
        OBJECTTYPE SplitterWnd // SplitterWnd1
        OBJECTTYPE SplitterWnd
        INFOOBJECTS
        {
         INFOOBJECT
         {
          KEY [108486.1.1171911810]
          OBJECTTYPE SplitterPane // SplitterPane
          OBJECTTYPE SplitterPane
          CONTENTS
          {
           Size 50.132802124834
@@ -1363,13 +1345,13 @@
           INFOOBJECT
           {
            KEY [108486.1.1171921411]
            OBJECTTYPE SplitterWnd // SplitterWndDemand_MP_Pegging
            OBJECTTYPE SplitterWnd
            INFOOBJECTS
            {
             INFOOBJECT
             {
              KEY [108486.1.1171921412]
              OBJECTTYPE SplitterPane // SplitterPane2
              OBJECTTYPE SplitterPane
              CONTENTS
              {
               Size 52.6515151515151
@@ -1380,7 +1362,7 @@
               INFOOBJECT
               {
                KEY [108486.1.1171921414]
                OBJECTTYPE List // ListDemand
                OBJECTTYPE List
                CONTENTS
                {
                 Quantorrow := false
@@ -1390,7 +1372,7 @@
                 INFOOBJECT
                 {
                  KEY [108486.1.1171924299]
                  OBJECTTYPE GUIDataSetLevel // GUIDataSetLevelDemand_MP
                  OBJECTTYPE GUIDataSetLevel
                  CONTENTS
                  {
                   Columns
@@ -1536,7 +1518,7 @@
             INFOOBJECT
             {
              KEY [108486.1.1171921413]
              OBJECTTYPE SplitterPane // SplitterPane3
              OBJECTTYPE SplitterPane
              CONTENTS
              {
               Size 47.3484848484849
@@ -1547,7 +1529,7 @@
               INFOOBJECT
               {
                KEY [113694.0.1490022148]
                OBJECTTYPE List // ListDemandPegging
                OBJECTTYPE List
                CONTENTS
                {
                 Quantorrow := false
@@ -1557,7 +1539,7 @@
                 INFOOBJECT
                 {
                  KEY [113694.0.1490022154]
                  OBJECTTYPE GUIDataSetLevel // GUIDataSetLevel2
                  OBJECTTYPE GUIDataSetLevel
                  CONTENTS
                  {
                   Columns
@@ -1658,7 +1640,7 @@
         INFOOBJECT
         {
          KEY [108486.1.1171911811]
          OBJECTTYPE SplitterPane // SplitterPane1
          OBJECTTYPE SplitterPane
          CONTENTS
          {
           Size 49.867197875166
@@ -1669,13 +1651,13 @@
           INFOOBJECT
           {
            KEY [108486.1.1175693802]
            OBJECTTYPE SplitterWnd // SplitterWndSupply_MP_Pegging
            OBJECTTYPE SplitterWnd
            INFOOBJECTS
            {
             INFOOBJECT
             {
              KEY [108486.1.1175693803]
              OBJECTTYPE SplitterPane // SplitterPane4
              OBJECTTYPE SplitterPane
              CONTENTS
              {
               Size 52.6315789473684
@@ -1686,7 +1668,7 @@
               INFOOBJECT
               {
                KEY [108486.1.1175693804]
                OBJECTTYPE List // ListSupply
                OBJECTTYPE List
                CONTENTS
                {
                 Quantorrow := false
@@ -1696,7 +1678,7 @@
                 INFOOBJECT
                 {
                  KEY [108486.1.1175693807]
                  OBJECTTYPE GUIDataSetLevel // GUIDataSetLevelSupply_MP
                  OBJECTTYPE GUIDataSetLevel
                  CONTENTS
                  {
                   Columns
@@ -1820,7 +1802,7 @@
             INFOOBJECT
             {
              KEY [108486.1.1175693810]
              OBJECTTYPE SplitterPane // SplitterPane5
              OBJECTTYPE SplitterPane
              CONTENTS
              {
               Size 47.3684210526316
@@ -1831,7 +1813,7 @@
               INFOOBJECT
               {
                KEY [108486.1.1175693811]
                OBJECTTYPE List // ListSupplyPegging
                OBJECTTYPE List
                CONTENTS
                {
                 Quantorrow := false
@@ -1841,7 +1823,7 @@
                 INFOOBJECT
                 {
                  KEY [108486.1.1175693814]
                  OBJECTTYPE GUIDataSetLevel // GUIDataSetLevel4
                  OBJECTTYPE GUIDataSetLevel
                  CONTENTS
                  {
                   Columns
@@ -1948,7 +1930,7 @@
      SINGLEINSTANCE false
      ID '产品规划数据矩阵'
      PARENTKEY [514.0.2180]
      OBJECTTYPE Form // FormProductPlanningMatrix
      OBJECTTYPE Form
      CREATETYPE FormProductPlanningMatrix
      CONTENTS
      {
@@ -1956,15 +1938,12 @@
       (0,0,0,0)
       DockableLocation := Station[MAIN]State[NORM]TreePath[T0.4484;]TabIdx[1]Selection[NONE]
      }
      BASEINFOOBJECTS
      {
      }
      INFOOBJECTS
      {
       INFOOBJECT
       {
        KEY [127710.1.821866707]
        OBJECTTYPE CheckBox // CheckBoxFilterByProductLevel
        OBJECTTYPE CheckBox
        CONTENTS
        {
         Checkstate 1
@@ -1973,19 +1952,16 @@
       INFOOBJECT
       {
        KEY [127710.1.821866918]
        OBJECTTYPE StringSelection // StringSelectionProductLevel
        OBJECTTYPE StringSelection
        CONTENTS
        {
         BoundValue '[Leaf product]'
        }
        INFOOBJECTS
        {
        }
       }
       INFOOBJECT
       {
        KEY [127710.1.818312567]
        OBJECTTYPE MatrixEditor // MatrixEditorProductPlanning
        OBJECTTYPE MatrixEditor
        CONTENTS
        {
         RowHeight 29
@@ -1998,13 +1974,13 @@
         INFOOBJECT
         {
          KEY [127710.1.819572713]
          OBJECTTYPE GUIScaleView // MatrixEditorColumns
          OBJECTTYPE GUIScaleView
          INFOOBJECTS
          {
           INFOOBJECT
           {
            KEY [127710.1.820829335]
            OBJECTTYPE UserConfigurableInformation // UserConfigurableInformationPeriod
            OBJECTTYPE UserConfigurableInformation
            CONTENTS
            {
             ObjectText 'VALUE(object.Start())'
@@ -2015,13 +1991,13 @@
         INFOOBJECT
         {
          KEY [127710.1.819572710]
          OBJECTTYPE GUIScaleView // MatrixEditorRows
          OBJECTTYPE GUIScaleView
          INFOOBJECTS
          {
           INFOOBJECT
           {
            KEY [127710.1.820300549]
            OBJECTTYPE UserConfigurableInformation // UserConfigurableInformationPISP
            OBJECTTYPE UserConfigurableInformation
            CONTENTS
            {
             ObjectText 'VALUE( object.Name() ) (VALUE( object.UnitOfMeasureName() ))'
@@ -2039,7 +2015,7 @@
      SINGLEINSTANCE false
      ID '加工路径'
      PARENTKEY [514.0.2180]
      OBJECTTYPE Form // FormRoutings
      OBJECTTYPE Form
      CREATETYPE FormRoutings
      CONTENTS
      {
@@ -2047,21 +2023,18 @@
       (0,0,0,0)
       DockableLocation := Station[MAIN]State[NORM]TreePath[B0.5516;]TabIdx[1]Selection[NONE]
      }
      BASEINFOOBJECTS
      {
      }
      INFOOBJECTS
      {
       INFOOBJECT
       {
        KEY [136682.0.365497231]
        OBJECTTYPE SplitterWnd // SplitterWnd1
        OBJECTTYPE SplitterWnd
        INFOOBJECTS
        {
         INFOOBJECT
         {
          KEY [136682.0.365497232]
          OBJECTTYPE SplitterPane // SplitterPane
          OBJECTTYPE SplitterPane
          CONTENTS
          {
           VISIBLE true
@@ -2071,7 +2044,7 @@
           INFOOBJECT
           {
            KEY [136682.0.365497233]
            OBJECTTYPE List // ListRouting
            OBJECTTYPE List
            CONTENTS
            {
             Quantorrow := false
@@ -2081,7 +2054,7 @@
             INFOOBJECT
             {
              KEY [136682.0.365497235]
              OBJECTTYPE GUIDataSetLevel // GUIDataSetLevelRouting
              OBJECTTYPE GUIDataSetLevel
              CONTENTS
              {
               Columns
@@ -2326,7 +2299,7 @@
         INFOOBJECT
         {
          KEY [136682.0.365497250]
          OBJECTTYPE SplitterPane // SplitterPane1
          OBJECTTYPE SplitterPane
          CONTENTS
          {
           VISIBLE true
@@ -2336,19 +2309,16 @@
           INFOOBJECT
           {
            KEY [136682.0.365497251]
            OBJECTTYPE SplitterWnd // SplitterWnd2
            OBJECTTYPE SplitterWnd
            INFOOBJECTS
            {
             INFOOBJECT
             {
              KEY [136682.0.365497252]
              OBJECTTYPE SplitterPane // SplitterPane2
              OBJECTTYPE SplitterPane
              CONTENTS
              {
               VISIBLE true
              }
              INFOOBJECTS
              {
              }
             }
            }
@@ -2360,7 +2330,7 @@
       INFOOBJECT
       {
        KEY [136682.0.365502343]
        OBJECTTYPE CheckBox // CheckBoxFilterProduct
        OBJECTTYPE CheckBox
        CONTENTS
        {
         Checkstate 1
@@ -2374,16 +2344,13 @@
      SINGLEINSTANCE false
      ID '功能测试按钮'
      PARENTKEY [514.0.2180]
      OBJECTTYPE Form // FormTestButtonCollection
      OBJECTTYPE Form
      CREATETYPE FormTestButtonCollection
      CONTENTS
      {
       State := normal
       (0,0,0,0)
       DockableLocation := Station[MAIN]State[NORM]TreePath[B0.5516;]TabIdx[2]Selection[NONE]
      }
      BASEINFOOBJECTS
      {
      }
     }
     INFOOBJECT
@@ -2392,7 +2359,7 @@
      SINGLEINSTANCE false
      ID '后台输出'
      PARENTKEY [514.0.2180]
      OBJECTTYPE Dialog // dlgServerMessages
      OBJECTTYPE Dialog
      CREATETYPE dlgServerMessages
      CONTENTS
      {
@@ -2400,15 +2367,12 @@
       (0,0,0,0)
       DockableLocation := Station[MAIN]State[NORM]TreePath[B0.5516;]TabIdx[3]Selection[FRONT]
      }
      BASEINFOOBJECTS
      {
      }
      INFOOBJECTS
      {
       INFOOBJECT
       {
        KEY [514.0.2141287]
        OBJECTTYPE List // List1
        OBJECTTYPE List
        CONTENTS
        {
         Quantorrow := false
@@ -2418,7 +2382,7 @@
         INFOOBJECT
         {
          KEY [536.0.860799]
          OBJECTTYPE GUIDataSetLevel // dslServerMessages
          OBJECTTYPE GUIDataSetLevel
          CONTENTS
          {
           Columns
@@ -2456,7 +2420,7 @@
      SINGLEINSTANCE false
      ID 'Analysis GlobalOTDTable'
      PARENTKEY [514.0.2180]
      OBJECTTYPE Form // frmStandardAnalysisGlobalOTDTable
      OBJECTTYPE Form
      CREATETYPE frmStandardAnalysisGlobalOTDTable
      CONTENTS
      {
@@ -2464,21 +2428,18 @@
       (0,0,0,0)
       DockableLocation := Station[MAIN]State[NORM]TreePath[T0.4484;]TabIdx[2]Selection[NONE]
      }
      BASEINFOOBJECTS
      {
      }
      INFOOBJECTS
      {
       INFOOBJECT
       {
        KEY [530.0.3531801]
        OBJECTTYPE SplitterWnd // swTopMost
        OBJECTTYPE SplitterWnd
        INFOOBJECTS
        {
         INFOOBJECT
         {
          KEY [530.0.3531802]
          OBJECTTYPE SplitterPane // SplitterPane1
          OBJECTTYPE SplitterPane
          CONTENTS
          {
           VISIBLE true
@@ -2488,13 +2449,13 @@
           INFOOBJECT
           {
            KEY [530.0.3531806]
            OBJECTTYPE SplitterWnd // swTop
            OBJECTTYPE SplitterWnd
            INFOOBJECTS
            {
             INFOOBJECT
             {
              KEY [530.0.3531807]
              OBJECTTYPE SplitterPane // spTopLeft
              OBJECTTYPE SplitterPane
              CONTENTS
              {
               VISIBLE true
@@ -2504,14 +2465,14 @@
               INFOOBJECT
               {
                KEY [530.0.3532065]
                OBJECTTYPE GUIAnalysis // Analysis
                OBJECTTYPE GUIAnalysis
                CONTENTS
                {
                 START(0,0,0,0,false)
                 ANALYSIS(0,0,0,0,false,'Analysis1')
                 {
                   SOURCE 'Types' '[414702.0.340560328]' 0
                   NAME 'Analysis1'
                 }
                 COLUMNSETTINGS
@@ -2701,7 +2662,7 @@
               INFOOBJECT
               {
                KEY [530.1.25480335]
                OBJECTTYPE List // ListGUIAnalysisData
                OBJECTTYPE List
                CONTENTS
                {
                 Quantorrow := false
@@ -2711,7 +2672,7 @@
                 INFOOBJECT
                 {
                  KEY [530.1.25480340]
                  OBJECTTYPE GUIDataSetLevel // GUIDataSetLevel4
                  OBJECTTYPE GUIDataSetLevel
                  CONTENTS
                  {
                   Columns
@@ -2756,7 +2717,7 @@
             INFOOBJECT
             {
              KEY [530.0.3531808]
              OBJECTTYPE SplitterPane // spTopRight
              OBJECTTYPE SplitterPane
              CONTENTS
              {
               VISIBLE true
@@ -2766,7 +2727,7 @@
               INFOOBJECT
               {
                KEY [530.0.3532013]
                OBJECTTYPE GUIAnalysisGrid // AnalysisGrid
                OBJECTTYPE GUIAnalysisGrid
                CONTENTS
                {
                 NEWFORMAT
@@ -2794,7 +2755,7 @@
         INFOOBJECT
         {
          KEY [530.0.3531803]
          OBJECTTYPE SplitterPane // SplitterPane2
          OBJECTTYPE SplitterPane
          CONTENTS
          {
           VISIBLE true
@@ -2804,13 +2765,13 @@
           INFOOBJECT
           {
            KEY [530.0.3531811]
            OBJECTTYPE SplitterWnd // swBottom
            OBJECTTYPE SplitterWnd
            INFOOBJECTS
            {
             INFOOBJECT
             {
              KEY [530.0.3531812]
              OBJECTTYPE SplitterPane // spBottomLeft
              OBJECTTYPE SplitterPane
              CONTENTS
              {
               Size 44.6569920844327
@@ -2821,13 +2782,13 @@
               INFOOBJECT
               {
                KEY [530.0.3532136]
                OBJECTTYPE SplitterWnd // SplitterWnd4
                OBJECTTYPE SplitterWnd
                INFOOBJECTS
                {
                 INFOOBJECT
                 {
                  KEY [530.0.3532137]
                  OBJECTTYPE SplitterPane // SplitterPane7
                  OBJECTTYPE SplitterPane
                  CONTENTS
                  {
                   VISIBLE true
@@ -2837,13 +2798,13 @@
                   INFOOBJECT
                   {
                    KEY [530.0.3532138]
                    OBJECTTYPE SplitterWnd // SplitterWnd5
                    OBJECTTYPE SplitterWnd
                    INFOOBJECTS
                    {
                     INFOOBJECT
                     {
                      KEY [530.0.3532139]
                      OBJECTTYPE SplitterPane // SplitterPane9
                      OBJECTTYPE SplitterPane
                      CONTENTS
                      {
                       VISIBLE true
@@ -2853,7 +2814,7 @@
                       INFOOBJECT
                       {
                        KEY [530.0.3532140]
                        OBJECTTYPE List // lstAttributes
                        OBJECTTYPE List
                        CONTENTS
                        {
                         Quantorrow := false
@@ -2863,7 +2824,7 @@
                         INFOOBJECT
                         {
                          KEY [530.0.3532156]
                          OBJECTTYPE GUIDataSetLevel // GUIDataSetLevel2
                          OBJECTTYPE GUIDataSetLevel
                          CONTENTS
                          {
                           Columns
@@ -2919,7 +2880,7 @@
                     INFOOBJECT
                     {
                      KEY [530.0.3532169]
                      OBJECTTYPE SplitterPane // SplitterPane10
                      OBJECTTYPE SplitterPane
                      CONTENTS
                      {
                       VISIBLE true
@@ -2929,7 +2890,7 @@
                       INFOOBJECT
                       {
                        KEY [530.0.3532170]
                        OBJECTTYPE List // List3
                        OBJECTTYPE List
                        CONTENTS
                        {
                         Quantorrow := false
@@ -2939,7 +2900,7 @@
                         INFOOBJECT
                         {
                          KEY [530.0.3532175]
                          OBJECTTYPE GUIDataSetLevel // GUIDataSetLevel3
                          OBJECTTYPE GUIDataSetLevel
                          CONTENTS
                          {
                           Columns
@@ -2999,7 +2960,7 @@
                 INFOOBJECT
                 {
                  KEY [530.0.3532181]
                  OBJECTTYPE SplitterPane // SplitterPane8
                  OBJECTTYPE SplitterPane
                  CONTENTS
                  {
                   VISIBLE true
@@ -3009,13 +2970,13 @@
                   INFOOBJECT
                   {
                    KEY [530.1.8006303]
                    OBJECTTYPE SplitterWnd // SplitterWnd1
                    OBJECTTYPE SplitterWnd
                    INFOOBJECTS
                    {
                     INFOOBJECT
                     {
                      KEY [530.1.8006304]
                      OBJECTTYPE SplitterPane // SplitterPane3
                      OBJECTTYPE SplitterPane
                      CONTENTS
                      {
                       VISIBLE true
@@ -3024,7 +2985,7 @@
                     INFOOBJECT
                     {
                      KEY [530.1.8006305]
                      OBJECTTYPE SplitterPane // SplitterPane4
                      OBJECTTYPE SplitterPane
                      CONTENTS
                      {
                       VISIBLE true
@@ -3034,7 +2995,7 @@
                       INFOOBJECT
                       {
                        KEY [530.0.3532182]
                        OBJECTTYPE GUIAnalysisBarChart // AnalysisBarChart
                        OBJECTTYPE GUIAnalysisBarChart
                        CONTENTS
                        {
                         LeftSize 207
@@ -3053,7 +3014,7 @@
             INFOOBJECT
             {
              KEY [530.0.3531813]
              OBJECTTYPE SplitterPane // spBottomRight
              OBJECTTYPE SplitterPane
              CONTENTS
              {
               Size 55.3430079155673
@@ -3064,7 +3025,7 @@
               INFOOBJECT
               {
                KEY [530.0.3531950]
                OBJECTTYPE List // List1
                OBJECTTYPE List
                CONTENTS
                {
                 Quantorrow := false
@@ -3074,7 +3035,7 @@
                 INFOOBJECT
                 {
                  KEY [530.0.3531958]
                  OBJECTTYPE GUIDataSetLevel // GUIDataSetLevel1
                  OBJECTTYPE GUIDataSetLevel
                  CONTENTS
                  {
                   Columns
@@ -3270,7 +3231,7 @@
      SINGLEINSTANCE false
      ID 'PeggingResult'
      PARENTKEY [514.0.2180]
      OBJECTTYPE Form // FormPeggingResult
      OBJECTTYPE Form
      CREATETYPE FormPeggingResult
      CONTENTS
      {
@@ -3278,15 +3239,12 @@
       (0,0,0,0)
       DockableLocation := Station[MAIN]State[NORM]TreePath[T0.4484;]TabIdx[4]Selection[FOCUS]
      }
      BASEINFOOBJECTS
      {
      }
      INFOOBJECTS
      {
       INFOOBJECT
       {
        KEY [414702.1.299084152]
        OBJECTTYPE List // ListPeggingProductInSalesDemandBase
        OBJECTTYPE List
        CONTENTS
        {
         Quantorrow := false
@@ -3296,7 +3254,7 @@
         INFOOBJECT
         {
          KEY [414702.1.299084219]
          OBJECTTYPE GUIDataSetLevel // GUIDataSetLevel641
          OBJECTTYPE GUIDataSetLevel
          CONTENTS
          {
           Columns
@@ -3359,7 +3317,7 @@
      SINGLEINSTANCE false
      ID 'Analysis GlobalOTDSOP'
      PARENTKEY [514.0.2180]
      OBJECTTYPE Form // frmStandardAnalysis633
      OBJECTTYPE Form
      CREATETYPE frmStandardAnalysis633
      CONTENTS
      {
@@ -3367,21 +3325,18 @@
       (0,0,0,0)
       DockableLocation := Station[MAIN]State[NORM]TreePath[B0.5516;]TabIdx[4]Selection[NONE]
      }
      BASEINFOOBJECTS
      {
      }
      INFOOBJECTS
      {
       INFOOBJECT
       {
        KEY [530.0.3531801]
        OBJECTTYPE SplitterWnd // swTopMost
        OBJECTTYPE SplitterWnd
        INFOOBJECTS
        {
         INFOOBJECT
         {
          KEY [530.0.3531802]
          OBJECTTYPE SplitterPane // SplitterPane1
          OBJECTTYPE SplitterPane
          CONTENTS
          {
           Size 0
@@ -3392,13 +3347,13 @@
           INFOOBJECT
           {
            KEY [530.0.3531806]
            OBJECTTYPE SplitterWnd // swTop
            OBJECTTYPE SplitterWnd
            INFOOBJECTS
            {
             INFOOBJECT
             {
              KEY [530.0.3531807]
              OBJECTTYPE SplitterPane // spTopLeft
              OBJECTTYPE SplitterPane
              CONTENTS
              {
               VISIBLE true
@@ -3408,14 +3363,14 @@
               INFOOBJECT
               {
                KEY [530.0.3532065]
                OBJECTTYPE GUIAnalysis // Analysis
                OBJECTTYPE GUIAnalysis
                CONTENTS
                {
                 START(0,0,0,0,false)
                 ANALYSIS(0,0,0,0,false,'Analysis1')
                 {
                   SOURCE 'Types' '[414702.1.290710093]' 0
                   GROUP 'NumberOfPlies'
                   NAME 'Analysis1'
                 }
@@ -3654,7 +3609,7 @@
               INFOOBJECT
               {
                KEY [530.1.25480335]
                OBJECTTYPE List // ListGUIAnalysisData
                OBJECTTYPE List
                CONTENTS
                {
                 Quantorrow := false
@@ -3664,7 +3619,7 @@
                 INFOOBJECT
                 {
                  KEY [530.1.25480340]
                  OBJECTTYPE GUIDataSetLevel // GUIDataSetLevel4
                  OBJECTTYPE GUIDataSetLevel
                  CONTENTS
                  {
                   Columns
@@ -3709,7 +3664,7 @@
             INFOOBJECT
             {
              KEY [530.0.3531808]
              OBJECTTYPE SplitterPane // spTopRight
              OBJECTTYPE SplitterPane
              CONTENTS
              {
               VISIBLE true
@@ -3719,7 +3674,7 @@
               INFOOBJECT
               {
                KEY [530.0.3532013]
                OBJECTTYPE GUIAnalysisGrid // AnalysisGrid
                OBJECTTYPE GUIAnalysisGrid
                CONTENTS
                {
                 NEWFORMAT
@@ -3743,7 +3698,7 @@
         INFOOBJECT
         {
          KEY [530.0.3531803]
          OBJECTTYPE SplitterPane // SplitterPane2
          OBJECTTYPE SplitterPane
          CONTENTS
          {
           Size 100
@@ -3754,13 +3709,13 @@
           INFOOBJECT
           {
            KEY [530.0.3531811]
            OBJECTTYPE SplitterWnd // swBottom
            OBJECTTYPE SplitterWnd
            INFOOBJECTS
            {
             INFOOBJECT
             {
              KEY [530.0.3531812]
              OBJECTTYPE SplitterPane // spBottomLeft
              OBJECTTYPE SplitterPane
              CONTENTS
              {
               Size 44.5645263827082
@@ -3771,13 +3726,13 @@
               INFOOBJECT
               {
                KEY [530.0.3532136]
                OBJECTTYPE SplitterWnd // SplitterWnd4
                OBJECTTYPE SplitterWnd
                INFOOBJECTS
                {
                 INFOOBJECT
                 {
                  KEY [530.0.3532137]
                  OBJECTTYPE SplitterPane // SplitterPane7
                  OBJECTTYPE SplitterPane
                  CONTENTS
                  {
                   Size 34.7701149425287
@@ -3788,13 +3743,13 @@
                   INFOOBJECT
                   {
                    KEY [530.0.3532138]
                    OBJECTTYPE SplitterWnd // SplitterWnd5
                    OBJECTTYPE SplitterWnd
                    INFOOBJECTS
                    {
                     INFOOBJECT
                     {
                      KEY [530.0.3532139]
                      OBJECTTYPE SplitterPane // SplitterPane9
                      OBJECTTYPE SplitterPane
                      CONTENTS
                      {
                       VISIBLE true
@@ -3804,7 +3759,7 @@
                       INFOOBJECT
                       {
                        KEY [530.0.3532140]
                        OBJECTTYPE List // lstAttributes
                        OBJECTTYPE List
                        CONTENTS
                        {
                         Quantorrow := false
@@ -3814,7 +3769,7 @@
                         INFOOBJECT
                         {
                          KEY [530.0.3532156]
                          OBJECTTYPE GUIDataSetLevel // GUIDataSetLevel2
                          OBJECTTYPE GUIDataSetLevel
                          CONTENTS
                          {
                           Columns
@@ -3870,7 +3825,7 @@
                     INFOOBJECT
                     {
                      KEY [530.0.3532169]
                      OBJECTTYPE SplitterPane // SplitterPane10
                      OBJECTTYPE SplitterPane
                      CONTENTS
                      {
                       VISIBLE true
@@ -3880,7 +3835,7 @@
                       INFOOBJECT
                       {
                        KEY [530.0.3532170]
                        OBJECTTYPE List // List3
                        OBJECTTYPE List
                        CONTENTS
                        {
                         Quantorrow := false
@@ -3890,7 +3845,7 @@
                         INFOOBJECT
                         {
                          KEY [530.0.3532175]
                          OBJECTTYPE GUIDataSetLevel // GUIDataSetLevel3
                          OBJECTTYPE GUIDataSetLevel
                          CONTENTS
                          {
                           Columns
@@ -3950,7 +3905,7 @@
                 INFOOBJECT
                 {
                  KEY [530.0.3532181]
                  OBJECTTYPE SplitterPane // SplitterPane8
                  OBJECTTYPE SplitterPane
                  CONTENTS
                  {
                   Size 65.2298850574713
@@ -3961,13 +3916,13 @@
                   INFOOBJECT
                   {
                    KEY [530.1.8006303]
                    OBJECTTYPE SplitterWnd // SplitterWnd1
                    OBJECTTYPE SplitterWnd
                    INFOOBJECTS
                    {
                     INFOOBJECT
                     {
                      KEY [530.1.8006304]
                      OBJECTTYPE SplitterPane // SplitterPane3
                      OBJECTTYPE SplitterPane
                      CONTENTS
                      {
                       VISIBLE true
@@ -3976,7 +3931,7 @@
                     INFOOBJECT
                     {
                      KEY [530.1.8006305]
                      OBJECTTYPE SplitterPane // SplitterPane4
                      OBJECTTYPE SplitterPane
                      CONTENTS
                      {
                       VISIBLE true
@@ -3986,7 +3941,7 @@
                       INFOOBJECT
                       {
                        KEY [530.0.3532182]
                        OBJECTTYPE GUIAnalysisBarChart // AnalysisBarChart
                        OBJECTTYPE GUIAnalysisBarChart
                        CONTENTS
                        {
                         LeftSize 257
@@ -4005,7 +3960,7 @@
             INFOOBJECT
             {
              KEY [530.0.3531813]
              OBJECTTYPE SplitterPane // spBottomRight
              OBJECTTYPE SplitterPane
              CONTENTS
              {
               Size 55.4354736172919
@@ -4016,7 +3971,7 @@
               INFOOBJECT
               {
                KEY [530.0.3531950]
                OBJECTTYPE List // List1
                OBJECTTYPE List
                CONTENTS
                {
                 Quantorrow := false
@@ -4026,7 +3981,7 @@
                 INFOOBJECT
                 {
                  KEY [530.0.3531958]
                  OBJECTTYPE GUIDataSetLevel // GUIDataSetLevel1
                  OBJECTTYPE GUIDataSetLevel
                  CONTENTS
                  {
                   Columns
@@ -4124,7 +4079,7 @@
      SINGLEINSTANCE false
      ID '时段任务'
      PARENTKEY [514.0.2180]
      OBJECTTYPE Form // FormPeriodTasks
      OBJECTTYPE Form
      CREATETYPE FormPeriodTasks
      CONTENTS
      {
@@ -4137,7 +4092,7 @@
       BASEINFOOBJECT
       {
        KEY [107654.0.148565389]
        OBJECTTYPE GUIContainerComponent // FormPeriodTasks
        OBJECTTYPE GUIContainerComponent
        COMPONENTDATA
        {
         [107654.0.148565389]:[110880.4.1427962314]:[110880.4.1427962316]:[110880.4.1427968321]:[110880.4.1427968322]:[110880.4.1427969404]:[110880.4.1427969405]:[110880.4.1427973280]:[11766.0.1791753774]:[514.0.129466]:[104128.0.40995014]:[127710.1.1037824422] STR 'false'
@@ -4150,13 +4105,13 @@
       INFOOBJECT
       {
        KEY [110880.4.1427962314]
        OBJECTTYPE SplitterWnd // SplitterWnd1
        OBJECTTYPE SplitterWnd
        INFOOBJECTS
        {
         INFOOBJECT
         {
          KEY [110880.4.1427962316]
          OBJECTTYPE SplitterPane // SplitterPane1
          OBJECTTYPE SplitterPane
          CONTENTS
          {
           VISIBLE true
@@ -4166,13 +4121,13 @@
           INFOOBJECT
           {
            KEY [110880.4.1427968321]
            OBJECTTYPE SplitterWnd // SplitterWnd2
            OBJECTTYPE SplitterWnd
            INFOOBJECTS
            {
             INFOOBJECT
             {
              KEY [110880.4.1427968322]
              OBJECTTYPE SplitterPane // SplitterPane2
              OBJECTTYPE SplitterPane
              CONTENTS
              {
               VISIBLE true
@@ -4182,13 +4137,13 @@
               INFOOBJECT
               {
                KEY [110880.4.1427969404]
                OBJECTTYPE SplitterWnd // SplitterWnd3
                OBJECTTYPE SplitterWnd
                INFOOBJECTS
                {
                 INFOOBJECT
                 {
                  KEY [110880.4.1427969405]
                  OBJECTTYPE SplitterPane // SplitterPane4
                  OBJECTTYPE SplitterPane
                  CONTENTS
                  {
                   VISIBLE true
@@ -4198,7 +4153,7 @@
                   INFOOBJECT
                   {
                    KEY [110880.4.1427973280]
                    OBJECTTYPE List // ListPeriodTask_MP
                    OBJECTTYPE List
                    CONTENTS
                    {
                     Quantorrow := false
@@ -4208,7 +4163,7 @@
                     INFOOBJECT
                     {
                      KEY [11766.0.1791753776]
                      OBJECTTYPE GUIDataSetLevel // GUIDataSetLevelPeriodTask_MP
                      OBJECTTYPE GUIDataSetLevel
                      CONTENTS
                      {
                       Columns
@@ -4288,13 +4243,10 @@
                 INFOOBJECT
                 {
                  KEY [110880.4.1427969406]
                  OBJECTTYPE SplitterPane // SplitterPane5
                  OBJECTTYPE SplitterPane
                  CONTENTS
                  {
                   VISIBLE true
                  }
                  INFOOBJECTS
                  {
                  }
                 }
                }
@@ -4304,7 +4256,7 @@
             INFOOBJECT
             {
              KEY [110880.4.1427968323]
              OBJECTTYPE SplitterPane // SplitterPane3
              OBJECTTYPE SplitterPane
              CONTENTS
              {
               VISIBLE true
@@ -4314,13 +4266,13 @@
               INFOOBJECT
               {
                KEY [110880.4.1427969947]
                OBJECTTYPE SplitterWnd // SplitterWnd4
                OBJECTTYPE SplitterWnd
                INFOOBJECTS
                {
                 INFOOBJECT
                 {
                  KEY [110880.4.1427969948]
                  OBJECTTYPE SplitterPane // SplitterPane6
                  OBJECTTYPE SplitterPane
                  CONTENTS
                  {
                   Size 31.659249841068
@@ -4331,7 +4283,7 @@
                   INFOOBJECT
                   {
                    KEY [110880.4.1427981196]
                    OBJECTTYPE List // ListInputInputDemand
                    OBJECTTYPE List
                    CONTENTS
                    {
                     Quantorrow := false
@@ -4341,7 +4293,7 @@
                     INFOOBJECT
                     {
                      KEY [11766.0.1791753785]
                      OBJECTTYPE GUIDataSetLevel // GUIDataSetLevel2
                      OBJECTTYPE GUIDataSetLevel
                      CONTENTS
                      {
                       Columns
@@ -4388,7 +4340,7 @@
                 INFOOBJECT
                 {
                  KEY [110880.4.1427969949]
                  OBJECTTYPE SplitterPane // SplitterPane7
                  OBJECTTYPE SplitterPane
                  CONTENTS
                  {
                   Size 68.340750158932
@@ -4399,7 +4351,7 @@
                   INFOOBJECT
                   {
                    KEY [110880.4.1427985019]
                    OBJECTTYPE List // ListInputOutputSupply1
                    OBJECTTYPE List
                    CONTENTS
                    {
                     Quantorrow := false
@@ -4409,7 +4361,7 @@
                     INFOOBJECT
                     {
                      KEY [11766.0.1791753792]
                      OBJECTTYPE GUIDataSetLevel // GUIDataSetLevel3
                      OBJECTTYPE GUIDataSetLevel
                      CONTENTS
                      {
                       Columns
@@ -4510,7 +4462,7 @@
      SINGLEINSTANCE false
      ID '过滤'
      PARENTKEY [514.0.2180]
      OBJECTTYPE Dialog // tlpFiltering
      OBJECTTYPE Dialog
      CREATETYPE tlpFiltering
      CONTENTS
      {
@@ -4523,7 +4475,7 @@
       BASEINFOOBJECT
       {
        KEY [666.6.1042075]
        OBJECTTYPE GUIContainerComponent // tlpFiltering
        OBJECTTYPE GUIContainerComponent
        COMPONENTDATA
        {
         [666.6.1042075]:[101180.0.423432963]:[101180.0.423434508]:[666.6.33523821]:[101180.0.674802547]:[100664.0.672641496] STR 'true'
@@ -4536,19 +4488,19 @@
       INFOOBJECT
       {
        KEY [101180.0.423434508]
        OBJECTTYPE GUIComponent // dpGUIListFiltering
        OBJECTTYPE GUIComponent
        INFOOBJECTS
        {
         INFOOBJECT
         {
          KEY [100664.0.634694330]
          OBJECTTYPE SplitterWnd // SplitterWnd
          OBJECTTYPE SplitterWnd
          INFOOBJECTS
          {
           INFOOBJECT
           {
            KEY [100664.0.634694331]
            OBJECTTYPE SplitterPane // SplitterPaneStoredFilters
            OBJECTTYPE SplitterPane
            CONTENTS
            {
             VISIBLE true
@@ -4558,7 +4510,7 @@
             INFOOBJECT
             {
              KEY [100664.0.681599437]
              OBJECTTYPE List // ListStoredFilters
              OBJECTTYPE List
              CONTENTS
              {
               Quantorrow := false
@@ -4568,7 +4520,7 @@
               INFOOBJECT
               {
                KEY [100664.0.681599439]
                OBJECTTYPE GUIDataSetLevel // GUIDataSetLevel2
                OBJECTTYPE GUIDataSetLevel
                CONTENTS
                {
                 Columns
@@ -4601,7 +4553,7 @@
           INFOOBJECT
           {
            KEY [100664.0.634694332]
            OBJECTTYPE SplitterPane // SplitterPane1
            OBJECTTYPE SplitterPane
            CONTENTS
            {
             VISIBLE true
@@ -4611,13 +4563,13 @@
             INFOOBJECT
             {
              KEY [100664.0.634737763]
              OBJECTTYPE SplitterWnd // SplitterWndI
              OBJECTTYPE SplitterWnd
              INFOOBJECTS
              {
               INFOOBJECT
               {
                KEY [100664.0.634737764]
                OBJECTTYPE SplitterPane // SplitPaneColumnBasedFilters
                OBJECTTYPE SplitterPane
                CONTENTS
                {
                 Size 99.921052631579
@@ -4628,7 +4580,7 @@
                 INFOOBJECT
                 {
                  KEY [100664.0.634737766]
                  OBJECTTYPE Selection // selFilterColumn
                  OBJECTTYPE Selection
                  CONTENTS
                  {
                   BoundValue 'Quantity'
@@ -4638,7 +4590,7 @@
                   INFOOBJECT
                   {
                    KEY [100664.0.634737768]
                    OBJECTTYPE GUIDataSetLevel // GUIDataSetLevel1
                    OBJECTTYPE GUIDataSetLevel
                    CONTENTS
                    {
                     Columns
@@ -4670,7 +4622,7 @@
                 INFOOBJECT
                 {
                  KEY [101180.0.650773001]
                  OBJECTTYPE Selection // selRelationalValues
                  OBJECTTYPE Selection
                  CONTENTS
                  {
                   BoundValue '='
@@ -4680,7 +4632,7 @@
                   INFOOBJECT
                   {
                    KEY [101180.0.650773003]
                    OBJECTTYPE GUIDataSetLevel // GUIDataSetLevel
                    OBJECTTYPE GUIDataSetLevel
                    CONTENTS
                    {
                     Columns
@@ -4712,7 +4664,7 @@
                 INFOOBJECT
                 {
                  KEY [666.6.40803406]
                  OBJECTTYPE Selection // SelectionValues
                  OBJECTTYPE Selection
                  CONTENTS
                  {
                   BoundValue '12'
@@ -4722,7 +4674,7 @@
                   INFOOBJECT
                   {
                    KEY [666.6.40803422]
                    OBJECTTYPE GUIDataSetLevel // GUIDataSetLevel
                    OBJECTTYPE GUIDataSetLevel
                    CONTENTS
                    {
                     Columns
@@ -4754,7 +4706,7 @@
                 INFOOBJECT
                 {
                  KEY [100664.0.634737776]
                  OBJECTTYPE List // ListGEBUIFilterColumnMatches
                  OBJECTTYPE List
                  CONTENTS
                  {
                   Quantorrow := false
@@ -4764,7 +4716,7 @@
                   INFOOBJECT
                   {
                    KEY [100664.0.634737791]
                    OBJECTTYPE GUIDataSetLevel // GUIDataSetLevel4
                    OBJECTTYPE GUIDataSetLevel
                    CONTENTS
                    {
                     Columns
@@ -4818,7 +4770,7 @@
               INFOOBJECT
               {
                KEY [100664.0.634737792]
                OBJECTTYPE SplitterPane // PaneFreeFilter
                OBJECTTYPE SplitterPane
                CONTENTS
                {
                 VISIBLE false
@@ -4828,7 +4780,7 @@
                 INFOOBJECT
                 {
                  KEY [112950.0.657398972]
                  OBJECTTYPE CheckBox // chkEnabled
                  OBJECTTYPE CheckBox
                  CONTENTS
                  {
                   Checkstate 1
@@ -4847,19 +4799,19 @@
       INFOOBJECT
       {
        KEY [101180.0.423439415]
        OBJECTTYPE GUIComponent // dpGEBListFiltering
        OBJECTTYPE GUIComponent
        INFOOBJECTS
        {
         INFOOBJECT
         {
          KEY [100664.0.634694330]
          OBJECTTYPE SplitterWnd // SplitterWnd
          OBJECTTYPE SplitterWnd
          INFOOBJECTS
          {
           INFOOBJECT
           {
            KEY [100664.0.634694331]
            OBJECTTYPE SplitterPane // SplitterPaneStoredFilters
            OBJECTTYPE SplitterPane
            CONTENTS
            {
             VISIBLE false
@@ -4869,7 +4821,7 @@
             INFOOBJECT
             {
              KEY [100664.0.681599437]
              OBJECTTYPE List // ListStoredFilters
              OBJECTTYPE List
              CONTENTS
              {
               Quantorrow := false
@@ -4879,7 +4831,7 @@
               INFOOBJECT
               {
                KEY [100664.0.681599439]
                OBJECTTYPE GUIDataSetLevel // GUIDataSetLevel2
                OBJECTTYPE GUIDataSetLevel
                CONTENTS
                {
                 Columns
@@ -4912,7 +4864,7 @@
           INFOOBJECT
           {
            KEY [100664.0.634694332]
            OBJECTTYPE SplitterPane // SplitterPane1
            OBJECTTYPE SplitterPane
            CONTENTS
            {
             Size 99.8686947373494
@@ -4923,13 +4875,13 @@
             INFOOBJECT
             {
              KEY [100664.0.634737763]
              OBJECTTYPE SplitterWnd // SplitterWndI
              OBJECTTYPE SplitterWnd
              INFOOBJECTS
              {
               INFOOBJECT
               {
                KEY [100664.0.634737764]
                OBJECTTYPE SplitterPane // SplitPaneColumnBasedFilters
                OBJECTTYPE SplitterPane
                CONTENTS
                {
                 Size 99.921052631579
@@ -4940,7 +4892,7 @@
                 INFOOBJECT
                 {
                  KEY [100664.0.634737766]
                  OBJECTTYPE Selection // selFilterColumn
                  OBJECTTYPE Selection
                  CONTENTS
                  {
                   BoundValue ''
@@ -4950,7 +4902,7 @@
                   INFOOBJECT
                   {
                    KEY [100664.0.634737768]
                    OBJECTTYPE GUIDataSetLevel // GUIDataSetLevel1
                    OBJECTTYPE GUIDataSetLevel
                    CONTENTS
                    {
                     Columns
@@ -4982,7 +4934,7 @@
                 INFOOBJECT
                 {
                  KEY [101180.0.650773001]
                  OBJECTTYPE Selection // selRelationalValues
                  OBJECTTYPE Selection
                  CONTENTS
                  {
                   BoundValue ''
@@ -4992,7 +4944,7 @@
                   INFOOBJECT
                   {
                    KEY [101180.0.650773003]
                    OBJECTTYPE GUIDataSetLevel // GUIDataSetLevel
                    OBJECTTYPE GUIDataSetLevel
                    CONTENTS
                    {
                     Columns
@@ -5024,7 +4976,7 @@
                 INFOOBJECT
                 {
                  KEY [666.6.40803406]
                  OBJECTTYPE Selection // SelectionValues
                  OBJECTTYPE Selection
                  CONTENTS
                  {
                   BoundValue ''
@@ -5034,7 +4986,7 @@
                   INFOOBJECT
                   {
                    KEY [666.6.40803422]
                    OBJECTTYPE GUIDataSetLevel // GUIDataSetLevel
                    OBJECTTYPE GUIDataSetLevel
                    CONTENTS
                    {
                     Columns
@@ -5066,7 +5018,7 @@
                 INFOOBJECT
                 {
                  KEY [100664.0.634737776]
                  OBJECTTYPE List // ListGEBUIFilterColumnMatches
                  OBJECTTYPE List
                  CONTENTS
                  {
                   Quantorrow := false
@@ -5076,7 +5028,7 @@
                   INFOOBJECT
                   {
                    KEY [100664.0.634737791]
                    OBJECTTYPE GUIDataSetLevel // GUIDataSetLevel4
                    OBJECTTYPE GUIDataSetLevel
                    CONTENTS
                    {
                     Columns
@@ -5130,13 +5082,10 @@
               INFOOBJECT
               {
                KEY [100664.0.634737792]
                OBJECTTYPE SplitterPane // PaneFreeFilter
                OBJECTTYPE SplitterPane
                CONTENTS
                {
                 VISIBLE false
                }
                INFOOBJECTS
                {
                }
               }
              }