limj
2023-09-18 db6f2e7bd34f65a0d7b6c156e31eb2bae9c70201
Merge branch 'dev' of http://47.101.211.7:10101/r/TIANMA_JITUAN into dev_lmj
已添加258个文件
已修改2个文件
3904 ■■■■■ 文件已修改
_Main/BL/Relations/Relation_CapacityAndSaleBudgeCompareItemCell_CapacityAndSaleBudgeCompareI#81.qbl 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Relations/Relation_CapacityAndSaleBudgeCompareItemCell_CapacityAndSaleBudgeCompareItem.qbl 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Relations/Relation_CapacityAndSaleBudgeCompareItemColumn_ScenarioManager_ScenarioManag.qbl 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Relations/Relation_CapacityAndSaleBudgeCompareItemRowProduct_CapacityAndSaleBudgeCompa.qbl 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Relations/Relation_CapacityAndSaleBudgeCompareItemRow_ScenarioManager_ScenarioManager_.qbl 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Relations/Relation_CapacityAndSaleBudgeFilterItem_ScenarioManager_ScenarioManager_Capa.qbl 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Relations/Relation_CapacityAndSaleBudgeFilterMonth_ScenarioManager_ScenarioManager_Cap.qbl 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Relations/Relation_CapacityAndSaleBudgeFilterYear_ScenarioManager_ScenarioManager_Capa.qbl 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Relations/Relation_CapacityAndSaleBudge_GlobalOTDTable_GlobalOTDTable_CapacityAndSaleB.qbl 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Relations/Relation_ERPRequestOfPR_PRHistoryData_PRHistoryData_ERPRequestOfPR.qbl 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Relations/Relation_ERPResponseOfPR_ERPRequestOfPR_ERPRequestOfPR_ERPResponseOfPR.qbl 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Relations/Relation_MappingCapacityAndSaleBudge_MPSync_MPSync_MappingCapacityAndSaleBud.qbl 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Relations/Relation_PRData_MacroPlan_MacroPlan_PRData.qbl 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Relations/Relation_PRHistoryData_GlobalOTDTable_GlobalOTDTable_PRHistoryData.qbl 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Relations/Relation_SaleBudgetItem_SaleBudget_SaleBudget_SaleBudgetItem.qbl 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Relations/Relation_SaleBudget_MacroPlan_MacroPlan_SaleBudget.qbl 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_BusinessType.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityEquivalent.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInPCSInMonth1.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInPCSInMonth10.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInPCSInMonth11.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInPCSInMonth12.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInPCSInMonth2.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInPCSInMonth3.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInPCSInMonth4.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInPCSInMonth5.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInPCSInMonth6.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInPCSInMonth7.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInPCSInMonth8.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInPCSInMonth9.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInPCSTotal.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInSheetInMonth1.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInSheetInMonth10.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInSheetInMonth11.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInSheetInMonth12.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInSheetInMonth2.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInSheetInMonth3.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInSheetInMonth4.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInSheetInMonth5.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInSheetInMonth6.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInSheetInMonth7.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInSheetInMonth8.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInSheetInMonth9.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInSheetTotal.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_Deleted.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_DisplayTechnology.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_LineAndSpec.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_NumberOfCut.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_NumberOfMask.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_OrgCode.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_PlaceOfProductionOfArray.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_PlaceOfProductionOfEvaporation.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_ProductCode.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_Resolution.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_SaleAmountInMonth1.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_SaleAmountInMonth10.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_SaleAmountInMonth11.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_SaleAmountInMonth12.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_SaleAmountInMonth2.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_SaleAmountInMonth3.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_SaleAmountInMonth4.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_SaleAmountInMonth5.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_SaleAmountInMonth6.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_SaleAmountInMonth7.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_SaleAmountInMonth8.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_SaleAmountInMonth9.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_SaleAmountTotal.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/Attribute_ShippingForm.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudge/_ROOT_Type_CapacityAndSaleBudge.qbl 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeCompareItemCell/Attribute_cellContent.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeCompareItemCell/_ROOT_Type_CapacityAndSaleBudgeCompareItemCell.qbl 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeCompareItemColumn/Attribute_ColumnName.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeCompareItemColumn/StaticMethod_CreateIfNotExist.qbl 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeCompareItemColumn/_ROOT_Type_CapacityAndSaleBudgeCompareItemColumn.qbl 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeCompareItemRow/Attribute_BusinessType.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeCompareItemRow/Attribute_OrgCode.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeCompareItemRow/Attribute_RowName.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeCompareItemRow/StaticMethod_CreateIfNotExist.qbl 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeCompareItemRow/_ROOT_Type_CapacityAndSaleBudgeCompareItemRow.qbl 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeCompareItemRowProduct/Attribute_ProductCode.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeCompareItemRowProduct/StaticMethod_CreateIfNotExist.qbl 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeCompareItemRowProduct/_ROOT_Type_CapacityAndSaleBudgeCompareItemRowProduct.qbl 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeFilterItem/Attribute_ItemName.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeFilterItem/StaticMethod_Contains.qbl 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeFilterItem/StaticMethod_CreateIfNotExist.qbl 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeFilterItem/StaticMethod_Initial.qbl 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeFilterItem/_ROOT_Type_CapacityAndSaleBudgeFilterItem.qbl 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeFilterMonth/Attribute_MonthNo.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeFilterMonth/StaticMethod_Initial.qbl 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeFilterMonth/_ROOT_Type_CapacityAndSaleBudgeFilterMonth.qbl 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeFilterYear/Attribute_yearNo.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeFilterYear/StaticMethod_Initial.qbl 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAndSaleBudgeFilterYear/_ROOT_Type_CapacityAndSaleBudgeFilterYear.qbl 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ERPRequestOfPR/Attribute_BusinessType.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ERPRequestOfPR/Attribute_DataID.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ERPRequestOfPR/Attribute_DeliveryDate.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ERPRequestOfPR/Attribute_MRPCalverNo.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ERPRequestOfPR/Attribute_OrganCode.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ERPRequestOfPR/Attribute_ProductID.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ERPRequestOfPR/Attribute_ProductName.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ERPRequestOfPR/Attribute_ProviderCode.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ERPRequestOfPR/Attribute_ProviderName.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ERPRequestOfPR/Attribute_Quantity.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ERPRequestOfPR/Attribute_StockingPointID.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ERPRequestOfPR/Attribute_UnitOfMeasure.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ERPRequestOfPR/Method_DoCall.qbl 58 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ERPRequestOfPR/StaticMethod_Create.qbl 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ERPRequestOfPR/_ROOT_Type_ERPRequestOfPR.qbl 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ERPResponseOfPR/Attribute_DataID.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ERPResponseOfPR/Attribute_ErrorDescription.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ERPResponseOfPR/Attribute_Status.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ERPResponseOfPR/_ROOT_Type_ERPResponseOfPR.qbl 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_GlobalDTOTable/Method_InitTestData.qbl 48 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MPSync/_ROOT_Type_MPSync.qbl 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MappingBOM/StaticMethod_CreateTestData.qbl 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MappingProduct/Attribute_OrgCode.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MappingProduct/StaticMethod_GetByProductId.qbl 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MappingSaleBudge/Attribute_BusinessType.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MappingSaleBudge/Attribute_CapacityInPCSInJan.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MappingSaleBudge/Attribute_CapacityInSheetInJan.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MappingSaleBudge/Attribute_LineAndSpecification.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MappingSaleBudge/Attribute_ProductCode.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MappingSaleBudge/Attribute_SalesAmountInWInJan.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MappingSaleBudge/_ROOT_Type_MappingCapacityAndSaleBudge.qbl 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRData/Attribute_AuthorizationStatus.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRData/Attribute_BusinessType.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRData/Attribute_DataID.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRData/Attribute_DeliverToRequestorId.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRData/Attribute_DestinationOrganizationId.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRData/Attribute_DestinationTypeCode.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRData/Attribute_HeaderDescription.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRData/Attribute_InterfaceSourceCode.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRData/Attribute_LineAttribute1.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRData/Attribute_LineAttribute6.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRData/Attribute_LineType.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRData/Attribute_LineTypeId.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRData/Attribute_MRPCalverNo.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRData/Attribute_OrgId.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRData/Attribute_OrganCode.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRData/Attribute_PRSuggestionDate.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRData/Attribute_PlannerCode.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRData/Attribute_PreparerId.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRData/Attribute_ProduceRequiredDate.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRData/Attribute_ProductID.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRData/Attribute_ProductName.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRData/Attribute_ProviderCode.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRData/Attribute_ProviderName.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRData/Attribute_Quantity.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRData/Attribute_RequisitionType.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRData/Attribute_SendBy.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRData/Attribute_SendStatus.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRData/Attribute_SendTIme.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRData/Attribute_StockingPointID.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRData/Attribute_UnitOfMeasure.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRData/Attribute_UnitPrice.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRData/Method_DoCall.qbl 61 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRData/StaticMethod_CanCall.qbl 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRData/StaticMethod_DoCall.qbl 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRData/StaticMethod_FromSupplyPlanning#662.qbl 75 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRData/StaticMethod_FromSupplyPlanning.qbl 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRData/StaticMethod_ProductIdOver14Days.qbl 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRData/StaticMethod_TestData.qbl 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRData/_ROOT_Type_PRData.qbl 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRHistoryData/Attribute_AuthorizationStatus.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRHistoryData/Attribute_BusinessType.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRHistoryData/Attribute_DataID.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRHistoryData/Attribute_DeliverToRequestorId.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRHistoryData/Attribute_DestinationOrganizationID.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRHistoryData/Attribute_DestinationTypeCode.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRHistoryData/Attribute_HeaderDescription#16.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRHistoryData/Attribute_LineAttribute1.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRHistoryData/Attribute_LineAttribute6.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRHistoryData/Attribute_LineType.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRHistoryData/Attribute_LineTypeId.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRHistoryData/Attribute_MRPCalverNo.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRHistoryData/Attribute_OrgId.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRHistoryData/Attribute_OrganCode.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRHistoryData/Attribute_PRDataReleaseDate.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRHistoryData/Attribute_PlannerCode.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRHistoryData/Attribute_PreparerID.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRHistoryData/Attribute_PreparerId#603.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRHistoryData/Attribute_ProduceRequiredDate#168.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRHistoryData/Attribute_ProductID.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRHistoryData/Attribute_ProductName.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRHistoryData/Attribute_ProviderCode.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRHistoryData/Attribute_ProviderName.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRHistoryData/Attribute_Quantity.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRHistoryData/Attribute_ReceiveError.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRHistoryData/Attribute_ReceiveStatus.qbl 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRHistoryData/Attribute_ReceiveTime.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRHistoryData/Attribute_ReleaseBy.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRHistoryData/Attribute_RequisitionType.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRHistoryData/Attribute_SendStatus.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRHistoryData/Attribute_SendTime.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRHistoryData/Attribute_StockingPointID.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRHistoryData/Attribute_UnitOfMeasure.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRHistoryData/Attribute_UnitPrice.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRHistoryData/DefaultValue_BusinessType.qbl 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRHistoryData/Method_Recall.qbl 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRHistoryData/StaticMethod_ProductIdOver14Days.qbl 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRHistoryData/StaticMethod_ReCall.qbl 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PRHistoryData/_ROOT_Type_PRHistoryData.qbl 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ProductInStockingPointInPeriod/Attribute_mrpCalverNo.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ProductInStockingPointInPeriod/StaticMethod_GetByMRPCalverNo.qbl 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ProductInStockingPointInPeriod/_ROOT_Type_ProductInStockingPointInPeriod.qbl 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_SaleBudget/Attribute_Specs.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_SaleBudget/_ROOT_Type_SaleBudget.qbl 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_SaleBudgetItem/_ROOT_Type_SaleBudgetItem.qbl 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_ScenarioManager/Method_CapacityAndSaleBudgeCompare.qbl 185 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/_ROOT_Component_ApplicationMacroPlanner.def 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_Form633/Component_ListPRData#844.def 106 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_Form633/Component_PanelPRDataButton.def 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_Form633/Component_listActionBarPagePRData#1.def 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_Form633/Component_listContextMenuPRData#1.def 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_Form633/Response_DataHolderChecked_OnDataChanged#774.def 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_Form633/Response_ListPRData_844_MenuCall_OnClick.def 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_Form633/Response_ListPRData_844_OnUserCheckedChanged#613.def 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_Form633/Response_ListPRData_844_OnUserCheckedChanged.def 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_Form633/Response_OnCreated.def 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_Form633/Response_PanelPRDataButton_ButtonSendPR_OnClick.def 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_Form633/_ROOT_Component_FormPRData#633.def 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudge/Component_ListCapacityAndSaleBudge.def 42 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudge/Component_listActionBarPageCapacityAndSaleBudge.def 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudge/Component_listContextMenuCapacityAndSaleBudge.def 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudge/Response_OnCreated.def 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudge/_ROOT_Component_FormCapacityAndSaleBudge.def 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeCompare/Response_ButtonCapacityAndSaleBudgeCompare_OnClick.def 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeCompare/_ROOT_Component_FormCapacityAndSaleBudgeCompare.def 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeFilterItem/Component_ListCapacityAndSaleBudgeFilterItem.def 42 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeFilterItem/Component_listActionBarPageCapacityAndSaleBudgeFilterItem.def 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeFilterItem/Component_listContextMenuCapacityAndSaleBudgeFilterItem.def 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeFilterItem/Response_ListCapacityAndSaleBudgeFilterItem_OnUserCheckedChanged#364.def 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeFilterItem/Response_ListCapacityAndSaleBudgeFilterItem_OnUserCheckedChanged.def 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeFilterItem/Response_OnCreated.def 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeFilterItem/_ROOT_Component_FormCapacityAndSaleBudgeFilterItem.def 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeFilterMonth/Component_ListCapacityAndSaleBudgeFilterMonth.def 43 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeFilterMonth/Component_listActionBarPageCapacityAndSaleBudgeFilterMonth.def 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeFilterMonth/Component_listContextMenuCapacityAndSaleBudgeFilterMonth.def 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeFilterMonth/Response_ListCapacityAndSaleBudgeFilterMonth_OnUserCheckedChanged#608.def 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeFilterMonth/Response_ListCapacityAndSaleBudgeFilterMonth_OnUserCheckedChanged.def 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeFilterMonth/Response_OnCreated.def 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeFilterMonth/_ROOT_Component_FormCapacityAndSaleBudgeFilterMonth.def 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeFilterYear/Component_ListCapacityAndSaleBudgeFilterYear.def 43 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeFilterYear/Component_listActionBarPageCapacityAndSaleBudgeFilterYear.def 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeFilterYear/Component_listContextMenuCapacityAndSaleBudgeFilterYear.def 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeFilterYear/Response_ListCapacityAndSaleBudgeFilterYear_OnUserCheckedChanged#316.def 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeFilterYear/Response_ListCapacityAndSaleBudgeFilterYear_OnUserCheckedChanged.def 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeFilterYear/Response_OnCreated.def 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeFilterYear/_ROOT_Component_FormCapacityAndSaleBudgeFilterYear.def 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPRHistoryData/Component_ListPRHistoryData#844.def 106 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPRHistoryData/Component_PanelPRHistoryButton.def 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPRHistoryData/Component_listActionBarPagePRHistoryData#1.def 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPRHistoryData/Component_listContextMenuPRHistoryData#1.def 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPRHistoryData/Response_DataHolderChecked_OnDataChanged.def 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPRHistoryData/Response_ListPRHistoryData_844_MenuCall_OnClick.def 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPRHistoryData/Response_ListPRHistoryData_844_OnUserCheckedChanged#635.def 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPRHistoryData/Response_ListPRHistoryData_844_OnUserCheckedChanged.def 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPRHistoryData/Response_PanelPRHistoryButton_ButtonResendPRA_OnClick.def 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPRHistoryData/_ROOT_Component_FormPRHistoryData.def 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_var/_Main/ProjSettings/MacroPlannerWebApp/Views/Capacity___sale_budge.vw 205 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Relations/Relation_CapacityAndSaleBudgeCompareItemCell_CapacityAndSaleBudgeCompareI#81.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
Quintiq file version 2.0
#parent: #root
Relation CapacityAndSaleBudgeCompareItemCell_CapacityAndSaleBudgeCompareItemColumn_CapacityAndSaleBudgeCompareItemColumn_CapacityAndSaleBudgeCompareItemCell
{
  #keys: '1[414384.0.816630984]'
  DefaultRelationStrategy
  {
  }
  RelationSide.LeftSide CapacityAndSaleBudgeCompareItemColumn
  {
    #keys: '3[414384.0.816630986][414384.0.816630985][414384.0.816630987]'
    Cardinality: '0to1'
    ObjectDefinition: CapacityAndSaleBudgeCompareItemCell
    OwningSide: 'Reference'
  }
  RelationSide.RightSide CapacityAndSaleBudgeCompareItemCell
  {
    #keys: '3[414384.0.816630989][414384.0.816630988][414384.0.816630990]'
    Cardinality: '1toN'
    ObjectDefinition: CapacityAndSaleBudgeCompareItemColumn
    OwningSide: 'Owned'
  }
}
_Main/BL/Relations/Relation_CapacityAndSaleBudgeCompareItemCell_CapacityAndSaleBudgeCompareItem.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
Quintiq file version 2.0
#parent: #root
Relation CapacityAndSaleBudgeCompareItemCell_CapacityAndSaleBudgeCompareItemRow_CapacityAndSaleBudgeCompareItemRow_CapacityAndSaleBudgeCompareItemCell
{
  #keys: '1[414384.0.816631000]'
  DefaultRelationStrategy
  {
  }
  RelationSide.LeftSide CapacityAndSaleBudgeCompareItemRow
  {
    #keys: '3[414384.0.816631002][414384.0.816631001][414384.0.816631003]'
    Cardinality: '0to1'
    ObjectDefinition: CapacityAndSaleBudgeCompareItemCell
    OwningSide: 'Reference'
  }
  RelationSide.RightSide CapacityAndSaleBudgeCompareItemCell
  {
    #keys: '3[414384.0.816631005][414384.0.816631004][414384.0.816631006]'
    Cardinality: '1toN'
    ObjectDefinition: CapacityAndSaleBudgeCompareItemRow
    OwningSide: 'Reference'
  }
}
_Main/BL/Relations/Relation_CapacityAndSaleBudgeCompareItemColumn_ScenarioManager_ScenarioManag.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
Quintiq file version 2.0
#parent: #root
Relation CapacityAndSaleBudgeCompareItemColumn_ScenarioManager_ScenarioManager_CapacityAndSaleBudgeCompareItemColumn
{
  #keys: '1[414384.0.816631032]'
  DefaultRelationStrategy
  {
  }
  RelationSide.LeftSide ScenarioManager
  {
    #keys: '3[414384.0.816631034][414384.0.816631033][414384.0.816631035]'
    Cardinality: '0to1'
    ObjectDefinition: CapacityAndSaleBudgeCompareItemColumn
    OwningSide: 'Reference'
  }
  RelationSide.RightSide CapacityAndSaleBudgeCompareItemColumn
  {
    #keys: '3[414384.0.816631037][414384.0.816631036][414384.0.816631038]'
    Cardinality: '1toN'
    ObjectDefinition: ScenarioManager
    OwningSide: 'Owned'
  }
}
_Main/BL/Relations/Relation_CapacityAndSaleBudgeCompareItemRowProduct_CapacityAndSaleBudgeCompa.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
Quintiq file version 2.0
#parent: #root
Relation CapacityAndSaleBudgeCompareItemRowProduct_CapacityAndSaleBudgeCompareItemRow_CapacityAndSaleBudgeCompareItemRow_CapacityAndSaleBudgeCompareItemRowProduct
{
  #keys: '1[414384.0.819696587]'
  DefaultRelationStrategy
  {
  }
  RelationSide.LeftSide CapacityAndSaleBudgeCompareItemRow
  {
    #keys: '3[414384.0.819696589][414384.0.819696588][414384.0.819696590]'
    Cardinality: '0to1'
    ObjectDefinition: CapacityAndSaleBudgeCompareItemRowProduct
    OwningSide: 'Reference'
  }
  RelationSide.RightSide CapacityAndSaleBudgeCompareItemRowProduct
  {
    #keys: '3[414384.0.819696592][414384.0.819696591][414384.0.819696593]'
    Cardinality: '1toN'
    ObjectDefinition: CapacityAndSaleBudgeCompareItemRow
    OwningSide: 'Owned'
  }
}
_Main/BL/Relations/Relation_CapacityAndSaleBudgeCompareItemRow_ScenarioManager_ScenarioManager_.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
Quintiq file version 2.0
#parent: #root
Relation CapacityAndSaleBudgeCompareItemRow_ScenarioManager_ScenarioManager_CapacityAndSaleBudgeCompareItemRow
{
  #keys: '1[414384.0.816631016]'
  DefaultRelationStrategy
  {
  }
  RelationSide.LeftSide ScenarioManager
  {
    #keys: '3[414384.0.816631018][414384.0.816631017][414384.0.816631019]'
    Cardinality: '0to1'
    ObjectDefinition: CapacityAndSaleBudgeCompareItemRow
    OwningSide: 'Reference'
  }
  RelationSide.RightSide CapacityAndSaleBudgeCompareItemRow
  {
    #keys: '3[414384.0.816631021][414384.0.816631020][414384.0.816631022]'
    Cardinality: '1toN'
    ObjectDefinition: ScenarioManager
    OwningSide: 'Owned'
  }
}
_Main/BL/Relations/Relation_CapacityAndSaleBudgeFilterItem_ScenarioManager_ScenarioManager_Capa.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
Quintiq file version 2.0
#parent: #root
Relation CapacityAndSaleBudgeFilterItem_ScenarioManager_ScenarioManager_CapacityAndSaleBudgeFilterItem
{
  #keys: '1[414384.0.816665103]'
  DefaultRelationStrategy
  {
  }
  RelationSide.LeftSide ScenarioManager
  {
    #keys: '3[414384.0.816665105][414384.0.816665104][414384.0.816665106]'
    Cardinality: '0to1'
    ObjectDefinition: CapacityAndSaleBudgeFilterItem
    OwningSide: 'Reference'
  }
  RelationSide.RightSide CapacityAndSaleBudgeFilterItem
  {
    #keys: '3[414384.0.816665108][414384.0.816665107][414384.0.816665109]'
    Cardinality: '1toN'
    ObjectDefinition: ScenarioManager
    OwningSide: 'Owned'
  }
}
_Main/BL/Relations/Relation_CapacityAndSaleBudgeFilterMonth_ScenarioManager_ScenarioManager_Cap.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
Quintiq file version 2.0
#parent: #root
Relation CapacityAndSaleBudgeFilterMonth_ScenarioManager_ScenarioManager_CapacityAndSaleBudgeFilterMonth
{
  #keys: '1[414384.0.816631074]'
  DefaultRelationStrategy
  {
  }
  RelationSide.LeftSide ScenarioManager
  {
    #keys: '3[414384.0.816631076][414384.0.816631075][414384.0.816631077]'
    Cardinality: '0to1'
    ObjectDefinition: CapacityAndSaleBudgeFilterMonth
    OwningSide: 'Reference'
  }
  RelationSide.RightSide CapacityAndSaleBudgeFilterMonth
  {
    #keys: '3[414384.0.816631079][414384.0.816631078][414384.0.816631080]'
    Cardinality: '1toN'
    ObjectDefinition: ScenarioManager
    OwningSide: 'Owned'
  }
}
_Main/BL/Relations/Relation_CapacityAndSaleBudgeFilterYear_ScenarioManager_ScenarioManager_Capa.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
Quintiq file version 2.0
#parent: #root
Relation CapacityAndSaleBudgeFilterYear_ScenarioManager_ScenarioManager_CapacityAndSaleBudgeFilterYear
{
  #keys: '1[414384.0.816631057]'
  DefaultRelationStrategy
  {
  }
  RelationSide.LeftSide ScenarioManager
  {
    #keys: '3[414384.0.816631059][414384.0.816631058][414384.0.816631060]'
    Cardinality: '0to1'
    ObjectDefinition: CapacityAndSaleBudgeFilterYear
    OwningSide: 'Reference'
  }
  RelationSide.RightSide CapacityAndSaleBudgeFilterYear
  {
    #keys: '3[414384.0.816631062][414384.0.816631061][414384.0.816631063]'
    Cardinality: '1toN'
    ObjectDefinition: ScenarioManager
    OwningSide: 'Owned'
  }
}
_Main/BL/Relations/Relation_CapacityAndSaleBudge_GlobalOTDTable_GlobalOTDTable_CapacityAndSaleB.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
Quintiq file version 2.0
#parent: #root
Relation CapacityAndSaleBudge_GlobalOTDTable_GlobalOTDTable_CapacityAndSaleBudge
{
  #keys: '1[414384.0.810464642]'
  DefaultRelationStrategy
  {
  }
  RelationSide.LeftSide GlobalOTDTable
  {
    #keys: '3[414384.0.810464644][414384.0.810464643][414384.0.810464645]'
    Cardinality: '0to1'
    ObjectDefinition: CapacityAndSaleBudge
    OwningSide: 'Reference'
  }
  RelationSide.RightSide CapacityAndSaleBudge
  {
    #keys: '3[414384.0.810464647][414384.0.810464646][414384.0.810464648]'
    Cardinality: '1toN'
    ObjectDefinition: GlobalOTDTable
    OwningSide: 'Owned'
  }
}
_Main/BL/Relations/Relation_ERPRequestOfPR_PRHistoryData_PRHistoryData_ERPRequestOfPR.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
Quintiq file version 2.0
#parent: #root
Relation ERPRequestOfPR_PRHistoryData_PRHistoryData_ERPRequestOfPR
{
  #keys: '1[414384.0.795671693]'
  DefaultRelationStrategy
  {
  }
  RelationSide.LeftSide PRHistoryData
  {
    #keys: '3[414384.0.795671695][414384.0.795671694][414384.0.795671696]'
    Cardinality: '0to1'
    ObjectDefinition: ERPRequestOfPR
    OwningSide: 'Reference'
  }
  RelationSide.RightSide ERPRequestOfPR
  {
    #keys: '3[414384.0.795671698][414384.0.795671697][414384.0.795671699]'
    Cardinality: '0to1'
    ObjectDefinition: PRHistoryData
    OwningSide: 'Owned'
  }
}
_Main/BL/Relations/Relation_ERPResponseOfPR_ERPRequestOfPR_ERPRequestOfPR_ERPResponseOfPR.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
Quintiq file version 2.0
#parent: #root
Relation ERPResponseOfPR_ERPRequestOfPR_ERPRequestOfPR_ERPResponseOfPR
{
  #keys: '1[414384.0.789498681]'
  DefaultRelationStrategy
  {
  }
  RelationSide.LeftSide ERPRequestOfPR
  {
    #keys: '3[414384.0.789498683][414384.0.789498682][414384.0.789498684]'
    Cardinality: '0to1'
    ObjectDefinition: ERPResponseOfPR
    OwningSide: 'Reference'
  }
  RelationSide.RightSide ERPResponseOfPR
  {
    #keys: '3[414384.0.789498686][414384.0.789498685][414384.0.789498687]'
    Cardinality: '0to1'
    ObjectDefinition: ERPRequestOfPR
    OwningSide: 'Owned'
  }
}
_Main/BL/Relations/Relation_MappingCapacityAndSaleBudge_MPSync_MPSync_MappingCapacityAndSaleBud.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
Quintiq file version 2.0
#parent: #root
Relation MappingCapacityAndSaleBudge_MPSync_MPSync_MappingCapacityAndSaleBudge
{
  #keys: '1[414384.0.803580112]'
  DefaultRelationStrategy
  {
  }
  RelationSide.LeftSide MPSync
  {
    #keys: '3[414384.0.803580114][414384.0.803580113][414384.0.803580115]'
    Cardinality: '0to1'
    ObjectDefinition: MappingCapacityAndSaleBudge
    OwningSide: 'Reference'
  }
  RelationSide.RightSide MappingCapacityAndSaleBudge
  {
    #keys: '3[414384.0.803580117][414384.0.803580116][414384.0.803580118]'
    Cardinality: '1toN'
    ObjectDefinition: MPSync
    OwningSide: 'Owned'
  }
}
_Main/BL/Relations/Relation_PRData_MacroPlan_MacroPlan_PRData.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
Quintiq file version 2.0
#parent: #root
Relation PRData_MacroPlan_MacroPlan_PRData
{
  #keys: '1[414384.0.796031632]'
  DefaultRelationStrategy
  {
  }
  RelationSide.LeftSide MacroPlan
  {
    #keys: '3[414384.0.796031634][414384.0.796031633][414384.0.796031635]'
    Cardinality: '0to1'
    ObjectDefinition: PRData
    OwningSide: 'Reference'
  }
  RelationSide.RightSide PRData
  {
    #keys: '3[414384.0.796031637][414384.0.796031636][414384.0.796031638]'
    Cardinality: '1toN'
    ObjectDefinition: MacroPlan
    OwningSide: 'Owned'
  }
}
_Main/BL/Relations/Relation_PRHistoryData_GlobalOTDTable_GlobalOTDTable_PRHistoryData.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
Quintiq file version 2.0
#parent: #root
Relation PRHistoryData_GlobalOTDTable_GlobalOTDTable_PRHistoryData
{
  #keys: '1[414384.0.789498541]'
  DefaultRelationStrategy
  {
  }
  RelationSide.LeftSide GlobalOTDTable
  {
    #keys: '3[414384.0.789498543][414384.0.789498542][414384.0.789498544]'
    Cardinality: '0to1'
    ObjectDefinition: PRHistoryData
    OwningSide: 'Reference'
  }
  RelationSide.RightSide PRHistoryData
  {
    #keys: '3[414384.0.789498546][414384.0.789498545][414384.0.789498547]'
    Cardinality: '1toN'
    ObjectDefinition: GlobalOTDTable
    OwningSide: 'Owned'
  }
}
_Main/BL/Relations/Relation_SaleBudgetItem_SaleBudget_SaleBudget_SaleBudgetItem.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
Quintiq file version 2.0
#parent: #root
Relation SaleBudgetItem_SaleBudget_SaleBudget_SaleBudgetItem
{
  #keys: '1[414384.0.803544596]'
  DefaultRelationStrategy
  {
  }
  RelationSide.LeftSide SaleBudget
  {
    #keys: '3[414384.0.803544598][414384.0.803544597][414384.0.803544599]'
    Cardinality: '0to1'
    ObjectDefinition: SaleBudgetItem
    OwningSide: 'Reference'
  }
  RelationSide.RightSide SaleBudgetItem
  {
    #keys: '3[414384.0.803544601][414384.0.803544600][414384.0.803544602]'
    Cardinality: '1toN'
    ObjectDefinition: SaleBudget
    OwningSide: 'Owned'
  }
}
_Main/BL/Relations/Relation_SaleBudget_MacroPlan_MacroPlan_SaleBudget.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
Quintiq file version 2.0
#parent: #root
Relation SaleBudget_MacroPlan_MacroPlan_SaleBudget
{
  #keys: '1[414384.0.803544612]'
  DefaultRelationStrategy
  {
  }
  RelationSide.LeftSide MacroPlan
  {
    #keys: '3[414384.0.803544614][414384.0.803544613][414384.0.803544615]'
    Cardinality: '0to1'
    ObjectDefinition: SaleBudget
    OwningSide: 'Reference'
  }
  RelationSide.RightSide SaleBudget
  {
    #keys: '3[414384.0.803544617][414384.0.803544616][414384.0.803544618]'
    Cardinality: '1toN'
    ObjectDefinition: MacroPlan
    OwningSide: 'Owned'
  }
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_BusinessType.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute BusinessType
{
  #keys: '3[414384.0.810464687][414384.0.810464686][414384.0.810464688]'
  Description: '业务类型'
  ValueType: String
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityEquivalent.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute CapacityEquivalent
{
  #keys: '3[414384.0.810464711][414384.0.810464710][414384.0.810464712]'
  Description: '产能当量'
  ValueType: String
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInPCSInMonth1.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute CapacityInPCSInMonth1
{
  #keys: '3[414384.0.810464717][414384.0.810464716][414384.0.810464718]'
  Description: '1月产能(PCS)'
  ValueType: Real
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInPCSInMonth10.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute CapacityInPCSInMonth10
{
  #keys: '3[414384.0.810464744][414384.0.810464743][414384.0.810464745]'
  Description: '10月产能(PCS)'
  ValueType: Real
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInPCSInMonth11.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute CapacityInPCSInMonth11
{
  #keys: '3[414384.0.810464747][414384.0.810464746][414384.0.810464748]'
  Description: '11月产能(PCS)'
  ValueType: Real
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInPCSInMonth12.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute CapacityInPCSInMonth12
{
  #keys: '3[414384.0.810464750][414384.0.810464749][414384.0.810464751]'
  Description: '12月产能(PCS)'
  ValueType: Real
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInPCSInMonth2.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute CapacityInPCSInMonth2
{
  #keys: '3[414384.0.810464720][414384.0.810464719][414384.0.810464721]'
  Description: '2月产能(PCS)'
  ValueType: Real
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInPCSInMonth3.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute CapacityInPCSInMonth3
{
  #keys: '3[414384.0.810464723][414384.0.810464722][414384.0.810464724]'
  Description: '3月产能(PCS)'
  ValueType: Real
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInPCSInMonth4.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute CapacityInPCSInMonth4
{
  #keys: '3[414384.0.810464726][414384.0.810464725][414384.0.810464727]'
  Description: '4月产能(PCS)'
  ValueType: Real
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInPCSInMonth5.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute CapacityInPCSInMonth5
{
  #keys: '3[414384.0.810464729][414384.0.810464728][414384.0.810464730]'
  Description: '5月产能(PCS)'
  ValueType: Real
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInPCSInMonth6.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute CapacityInPCSInMonth6
{
  #keys: '3[414384.0.810464732][414384.0.810464731][414384.0.810464733]'
  Description: '6月产能(PCS)'
  ValueType: Real
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInPCSInMonth7.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute CapacityInPCSInMonth7
{
  #keys: '3[414384.0.810464735][414384.0.810464734][414384.0.810464736]'
  Description: '7月产能(PCS)'
  ValueType: Real
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInPCSInMonth8.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute CapacityInPCSInMonth8
{
  #keys: '3[414384.0.810464738][414384.0.810464737][414384.0.810464739]'
  Description: '8月产能(PCS)'
  ValueType: Real
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInPCSInMonth9.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute CapacityInPCSInMonth9
{
  #keys: '3[414384.0.810464741][414384.0.810464740][414384.0.810464742]'
  Description: '9月产能(PCS)'
  ValueType: Real
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInPCSTotal.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute CapacityInPCSTotal
{
  #keys: '3[414384.0.810464866][414384.0.810464865][414384.0.810464867]'
  Description: '年产能(PCS)'
  ValueType: Real
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInSheetInMonth1.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute CapacityInSheetInMonth1
{
  #keys: '3[414384.0.810464753][414384.0.810464752][414384.0.810464754]'
  Description: '1月产能(Sheet)'
  ValueType: Real
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInSheetInMonth10.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute CapacityInSheetInMonth10
{
  #keys: '3[414384.0.810464780][414384.0.810464779][414384.0.810464781]'
  Description: '10月产能(Sheet)'
  ValueType: Real
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInSheetInMonth11.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute CapacityInSheetInMonth11
{
  #keys: '3[414384.0.810464783][414384.0.810464782][414384.0.810464784]'
  Description: '11月产能(Sheet)'
  ValueType: Real
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInSheetInMonth12.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute CapacityInSheetInMonth12
{
  #keys: '3[414384.0.810464786][414384.0.810464785][414384.0.810464787]'
  Description: '12月产能(Sheet)'
  ValueType: Real
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInSheetInMonth2.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute CapacityInSheetInMonth2
{
  #keys: '3[414384.0.810464756][414384.0.810464755][414384.0.810464757]'
  Description: '2月产能(Sheet)'
  ValueType: Real
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInSheetInMonth3.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute CapacityInSheetInMonth3
{
  #keys: '3[414384.0.810464759][414384.0.810464758][414384.0.810464760]'
  Description: '3月产能(Sheet)'
  ValueType: Real
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInSheetInMonth4.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute CapacityInSheetInMonth4
{
  #keys: '3[414384.0.810464762][414384.0.810464761][414384.0.810464763]'
  Description: '4月产能(Sheet)'
  ValueType: Real
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInSheetInMonth5.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute CapacityInSheetInMonth5
{
  #keys: '3[414384.0.810464765][414384.0.810464764][414384.0.810464766]'
  Description: '5月产能(Sheet)'
  ValueType: Real
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInSheetInMonth6.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute CapacityInSheetInMonth6
{
  #keys: '3[414384.0.810464768][414384.0.810464767][414384.0.810464769]'
  Description: '6月产能(Sheet)'
  ValueType: Real
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInSheetInMonth7.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute CapacityInSheetInMonth7
{
  #keys: '3[414384.0.810464771][414384.0.810464770][414384.0.810464772]'
  Description: '7月产能(Sheet)'
  ValueType: Real
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInSheetInMonth8.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute CapacityInSheetInMonth8
{
  #keys: '3[414384.0.810464774][414384.0.810464773][414384.0.810464775]'
  Description: '8月产能(Sheet)'
  ValueType: Real
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInSheetInMonth9.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute CapacityInSheetInMonth9
{
  #keys: '3[414384.0.810464777][414384.0.810464776][414384.0.810464778]'
  Description: '9月产能(Sheet)'
  ValueType: Real
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_CapacityInSheetTotal.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute CapacityInSheetTotal
{
  #keys: '3[414384.0.810464850][414384.0.810464849][414384.0.810464851]'
  Description: '年产能(Sheet)'
  ValueType: Real
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_Deleted.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute Deleted
{
  #keys: '3[414384.0.810464681][414384.0.810464680][414384.0.810464682]'
  Description: '已删除'
  ValueType: Boolean
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_DisplayTechnology.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute DisplayTechnology
{
  #keys: '3[414384.0.810464684][414384.0.810464683][414384.0.810464685]'
  Description: '显示技术分类'
  ValueType: String
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_LineAndSpec.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute LineAndSpec
{
  #keys: '3[414384.0.810464690][414384.0.810464689][414384.0.810464691]'
  Description: '产品线/产品规格'
  ValueType: String
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_NumberOfCut.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute NumberOfCut
{
  #keys: '3[414384.0.810464708][414384.0.810464707][414384.0.810464709]'
  Description: '切割数'
  ValueType: String
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_NumberOfMask.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute NumberOfMask
{
  #keys: '3[414384.0.810464714][414384.0.810464713][414384.0.810464715]'
  Description: 'mask数'
  ValueType: String
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_OrgCode.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute OrgCode
{
  #keys: '3[414384.0.810464668][414384.0.810464667][414384.0.810464669]'
  Description: '业务部门'
  ValueType: String
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_PlaceOfProductionOfArray.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute PlaceOfProductionOfArray
{
  #keys: '3[414384.0.810464696][414384.0.810464695][414384.0.810464697]'
  Description: 'Array产地(面板基地)'
  ValueType: String
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_PlaceOfProductionOfEvaporation.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute PlaceOfProductionOfEvaporation
{
  #keys: '3[414384.0.810464699][414384.0.810464698][414384.0.810464700]'
  Description: '蒸镀产地'
  ValueType: String
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_ProductCode.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute ProductCode
{
  #keys: '3[414384.0.810464693][414384.0.810464692][414384.0.810464694]'
  Description: '产品料号'
  ValueType: String
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_Resolution.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute Resolution
{
  #keys: '3[414384.0.810464702][414384.0.810464701][414384.0.810464703]'
  Description: '分辨率'
  ValueType: String
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_SaleAmountInMonth1.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute SaleAmountInMonth1
{
  #keys: '3[414384.0.810464789][414384.0.810464788][414384.0.810464790]'
  Description: '1月销售额(万)'
  ValueType: Real
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_SaleAmountInMonth10.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute SaleAmountInMonth10
{
  #keys: '3[414384.0.810464816][414384.0.810464815][414384.0.810464817]'
  Description: '10月销售额(万)'
  ValueType: Real
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_SaleAmountInMonth11.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute SaleAmountInMonth11
{
  #keys: '3[414384.0.810464819][414384.0.810464818][414384.0.810464820]'
  Description: '11月销售额(万)'
  ValueType: Real
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_SaleAmountInMonth12.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute SaleAmountInMonth12
{
  #keys: '3[414384.0.810464822][414384.0.810464821][414384.0.810464823]'
  Description: '12月销售额(万)'
  ValueType: Real
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_SaleAmountInMonth2.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute SaleAmountInMonth2
{
  #keys: '3[414384.0.810464792][414384.0.810464791][414384.0.810464793]'
  Description: '2月销售额(万)'
  ValueType: Real
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_SaleAmountInMonth3.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute SaleAmountInMonth3
{
  #keys: '3[414384.0.810464795][414384.0.810464794][414384.0.810464796]'
  Description: '3月销售额(万)'
  ValueType: Real
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_SaleAmountInMonth4.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute SaleAmountInMonth4
{
  #keys: '3[414384.0.810464798][414384.0.810464797][414384.0.810464799]'
  Description: '4月销售额(万)'
  ValueType: Real
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_SaleAmountInMonth5.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute SaleAmountInMonth5
{
  #keys: '3[414384.0.810464801][414384.0.810464800][414384.0.810464802]'
  Description: '5月销售额(万)'
  ValueType: Real
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_SaleAmountInMonth6.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute SaleAmountInMonth6
{
  #keys: '3[414384.0.810464804][414384.0.810464803][414384.0.810464805]'
  Description: '6月销售额(万)'
  ValueType: Real
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_SaleAmountInMonth7.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute SaleAmountInMonth7
{
  #keys: '3[414384.0.810464807][414384.0.810464806][414384.0.810464808]'
  Description: '7月销售额(万)'
  ValueType: Real
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_SaleAmountInMonth8.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute SaleAmountInMonth8
{
  #keys: '3[414384.0.810464810][414384.0.810464809][414384.0.810464811]'
  Description: '8月销售额(万)'
  ValueType: Real
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_SaleAmountInMonth9.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute SaleAmountInMonth9
{
  #keys: '3[414384.0.810464813][414384.0.810464812][414384.0.810464814]'
  Description: '9月销售额(万)'
  ValueType: Real
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_SaleAmountTotal.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute SaleAmountTotal
{
  #keys: '3[414384.0.810464840][414384.0.810464839][414384.0.810464841]'
  Description: '年销售额(万)'
  ValueType: Real
}
_Main/BL/Type_CapacityAndSaleBudge/Attribute_ShippingForm.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute ShippingForm
{
  #keys: '3[414384.0.810464705][414384.0.810464704][414384.0.810464706]'
  Description: '出货形态'
  ValueType: String
}
_Main/BL/Type_CapacityAndSaleBudge/_ROOT_Type_CapacityAndSaleBudge.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
#root
#parent: #DomainModel
Type CapacityAndSaleBudge
{
  #keys: '5[414384.0.810464639][414384.0.810464637][0.0.0][414384.0.810464638][414384.0.810464640]'
  BaseType: Object
  Description: '产销预算'
  StructuredName: 'CapacityAndSaleBudges'
}
_Main/BL/Type_CapacityAndSaleBudgeCompareItemCell/Attribute_cellContent.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute CellContent
{
  #keys: '3[414384.0.819696550][414384.0.819696549][414384.0.819696551]'
  ValueType: String
}
_Main/BL/Type_CapacityAndSaleBudgeCompareItemCell/_ROOT_Type_CapacityAndSaleBudgeCompareItemCell.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,9 @@
Quintiq file version 2.0
#root
#parent: #DomainModel
Type CapacityAndSaleBudgeCompareItemCell
{
  #keys: '5[414384.0.816630948][414384.0.816630946][0.0.0][414384.0.816630947][414384.0.816630949]'
  BaseType: Object
  StructuredName: 'CapacityAndSaleBudgeCompareItemCells'
}
_Main/BL/Type_CapacityAndSaleBudgeCompareItemColumn/Attribute_ColumnName.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute ColumnName
{
  #keys: '3[414384.0.816630975][414384.0.816630974][414384.0.816630976]'
  ValueType: String
}
_Main/BL/Type_CapacityAndSaleBudgeCompareItemColumn/StaticMethod_CreateIfNotExist.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,17 @@
Quintiq file version 2.0
#parent: #root
StaticMethod CreateIfNotExist (
  ScenarioManager manager,
  String columnName
) as CapacityAndSaleBudgeCompareItemColumn
{
  TextBody:
  [*
    // yypsybs Sep-18-2023 (created)
    value := select( manager, CapacityAndSaleBudgeCompareItemColumn, item, item.ColumnName() = columnName );
    if( isnull( value ) ) {
      value := manager.CapacityAndSaleBudgeCompareItemColumn( relnew, ColumnName := columnName );
    }
    return value;
  *]
}
_Main/BL/Type_CapacityAndSaleBudgeCompareItemColumn/_ROOT_Type_CapacityAndSaleBudgeCompareItemColumn.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,9 @@
Quintiq file version 2.0
#root
#parent: #DomainModel
Type CapacityAndSaleBudgeCompareItemColumn
{
  #keys: '5[414384.0.816630971][414384.0.816630969][0.0.0][414384.0.816630970][414384.0.816630972]'
  BaseType: Object
  StructuredName: 'CapacityAndSaleBudgeCompareItemColumns'
}
_Main/BL/Type_CapacityAndSaleBudgeCompareItemRow/Attribute_BusinessType.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute BusinessType
{
  #keys: '3[414384.0.819696515][414384.0.819696514][414384.0.819696516]'
  Description: '事业部'
  ValueType: String
}
_Main/BL/Type_CapacityAndSaleBudgeCompareItemRow/Attribute_OrgCode.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute OrgCode
{
  #keys: '3[414384.0.822962978][414384.0.822962977][414384.0.822962979]'
  Description: '组织编码'
  ValueType: String
}
_Main/BL/Type_CapacityAndSaleBudgeCompareItemRow/Attribute_RowName.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute RowName
{
  #keys: '3[414384.0.816630960][414384.0.816630959][414384.0.816630961]'
  ValueType: String
}
_Main/BL/Type_CapacityAndSaleBudgeCompareItemRow/StaticMethod_CreateIfNotExist.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,18 @@
Quintiq file version 2.0
#parent: #root
StaticMethod CreateIfNotExist (
  ScenarioManager scenarioManager,
  String businessType,
  String orgCode
) as CapacityAndSaleBudgeCompareItemRow
{
  TextBody:
  [*
    // yypsybs Sep-18-2023 (created)
    value := select( scenarioManager, CapacityAndSaleBudgeCompareItemRow, row, row.BusinessType() = businessType and row.OrgCode() = orgCode );
    if( isnull( value ) ) {
      value := scenarioManager.CapacityAndSaleBudgeCompareItemRow( relnew, BusinessType := businessType, OrgCode := orgCode );
    }
    return value;
  *]
}
_Main/BL/Type_CapacityAndSaleBudgeCompareItemRow/_ROOT_Type_CapacityAndSaleBudgeCompareItemRow.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,9 @@
Quintiq file version 2.0
#root
#parent: #DomainModel
Type CapacityAndSaleBudgeCompareItemRow
{
  #keys: '5[414384.0.816630956][414384.0.816630954][0.0.0][414384.0.816630955][414384.0.816630957]'
  BaseType: Object
  StructuredName: 'CapacityAndSaleBudgeCompareItemRows'
}
_Main/BL/Type_CapacityAndSaleBudgeCompareItemRowProduct/Attribute_ProductCode.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute ProductCode
{
  #keys: '3[414384.0.819696604][414384.0.819696603][414384.0.819696605]'
  Description: '产品编码'
  ValueType: String
}
_Main/BL/Type_CapacityAndSaleBudgeCompareItemRowProduct/StaticMethod_CreateIfNotExist.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,17 @@
Quintiq file version 2.0
#parent: #root
StaticMethod CreateIfNotExist (
  CapacityAndSaleBudgeCompareItemRow parent,
  String productCode
) as CapacityAndSaleBudgeCompareItemRowProduct
{
  TextBody:
  [*
    // yypsybs Sep-18-2023 (created)
    value := select( parent, CapacityAndSaleBudgeCompareItemRowProduct, item, item.ProductCode() = productCode );
    if( isnull( value ) ) {
      parent.CapacityAndSaleBudgeCompareItemRowProduct( relnew, ProductCode := productCode );
    }
    return value;
  *]
}
_Main/BL/Type_CapacityAndSaleBudgeCompareItemRowProduct/_ROOT_Type_CapacityAndSaleBudgeCompareItemRowProduct.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,9 @@
Quintiq file version 2.0
#root
#parent: #DomainModel
Type CapacityAndSaleBudgeCompareItemRowProduct
{
  #keys: '5[414384.0.819696584][414384.0.819696582][0.0.0][414384.0.819696583][414384.0.819696585]'
  BaseType: Object
  StructuredName: 'CapacityAndSaleBudgeCompareItemRowProducts'
}
_Main/BL/Type_CapacityAndSaleBudgeFilterItem/Attribute_ItemName.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute ItemName
{
  #keys: '3[414384.0.810464940][414384.0.810464939][414384.0.810464941]'
  Description: '对比项名称'
  ValueType: String
}
_Main/BL/Type_CapacityAndSaleBudgeFilterItem/StaticMethod_Contains.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,13 @@
Quintiq file version 2.0
#parent: #root
StaticMethod Contains (
  CapacityAndSaleBudgeFilterItems list,
  String item
) as Boolean
{
  TextBody:
  [*
    // yypsybs Sep-18-2023 (created)
    return not isnull( select( list, Elements, one, one.ItemName() = item ) );
  *]
}
_Main/BL/Type_CapacityAndSaleBudgeFilterItem/StaticMethod_CreateIfNotExist.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,17 @@
Quintiq file version 2.0
#parent: #root
StaticMethod CreateIfNotExist (
  ScenarioManager parent,
  String itemName
)
{
  TextBody:
  [*
    // yypsybs Sep-15-2023 (created)
    old := select( parent, CapacityAndSaleBudgeFilterItem, item, item.ItemName() = itemName );
    if( isnull( old ) ) {
      parent.CapacityAndSaleBudgeFilterItem( relnew,
                                             ItemName := itemName );
    }
  *]
}
_Main/BL/Type_CapacityAndSaleBudgeFilterItem/StaticMethod_Initial.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,14 @@
Quintiq file version 2.0
#parent: #root
StaticMethod Initial (
  ScenarioManager parent
)
{
  Description: '初始化对比项'
  TextBody:
  [*
    // yypsybs Sep-15-2023 (created)
    CapacityAndSaleBudgeFilterItem::CreateIfNotExist( parent, "面板分配量" );
    CapacityAndSaleBudgeFilterItem::CreateIfNotExist( parent, "销售额" );
  *]
}
_Main/BL/Type_CapacityAndSaleBudgeFilterItem/_ROOT_Type_CapacityAndSaleBudgeFilterItem.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
#root
#parent: #DomainModel
Type CapacityAndSaleBudgeFilterItem
{
  #keys: '5[414384.0.810500195][414384.0.810500193][0.0.0][414384.0.810500194][414384.0.810500196]'
  BaseType: Object
  Description: '对比项'
  StructuredName: 'CapacityAndSaleBudgeFilterItems'
}
_Main/BL/Type_CapacityAndSaleBudgeFilterMonth/Attribute_MonthNo.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute MonthNo
{
  #keys: '3[414384.0.810464902][414384.0.810464901][414384.0.810464903]'
  ValueType: Number
}
_Main/BL/Type_CapacityAndSaleBudgeFilterMonth/StaticMethod_Initial.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,19 @@
Quintiq file version 2.0
#parent: #root
StaticMethod Initial (
  ScenarioManager parent
)
{
  Description: '初始化月份'
  TextBody:
  [*
    // yypsybs Sep-15-2023 (created)
    existList := selectuniquevalues( parent, CapacityAndSaleBudgeFilterMonth, item, item.MonthNo() );
    for( i := 1; i <= 12; i++ ) {
      if( existList.Find( i ) = -1 ) {
        parent.CapacityAndSaleBudgeFilterMonth( relnew,
                                                MonthNo := i );
      }
    }
  *]
}
_Main/BL/Type_CapacityAndSaleBudgeFilterMonth/_ROOT_Type_CapacityAndSaleBudgeFilterMonth.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,9 @@
Quintiq file version 2.0
#root
#parent: #DomainModel
Type CapacityAndSaleBudgeFilterMonth
{
  #keys: '5[414384.0.810500205][414384.0.810500203][0.0.0][414384.0.810500204][414384.0.810500206]'
  BaseType: Object
  StructuredName: 'CapacityAndSaleBudgeFilterMonths'
}
_Main/BL/Type_CapacityAndSaleBudgeFilterYear/Attribute_yearNo.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute YearNo
{
  #keys: '3[414384.0.810464920][414384.0.810464919][414384.0.810464921]'
  ValueType: Number
}
_Main/BL/Type_CapacityAndSaleBudgeFilterYear/StaticMethod_Initial.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,20 @@
Quintiq file version 2.0
#parent: #root
StaticMethod Initial (
  ScenarioManager parent
)
{
  Description: '初始化年份'
  TextBody:
  [*
    // yypsybs Sep-15-2023 (created)
    existList := selectuniquevalues( parent, CapacityAndSaleBudgeFilterYear, item, item.YearNo() );
    nowYear := Date::Today().Year();
    for( i := nowYear; i <= nowYear + 10; i++ ) {
      if( existList.Find( i ) = -1 ) {
        parent.CapacityAndSaleBudgeFilterYear( relnew,
                                               YearNo := i );
      }
    }
  *]
}
_Main/BL/Type_CapacityAndSaleBudgeFilterYear/_ROOT_Type_CapacityAndSaleBudgeFilterYear.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
#root
#parent: #DomainModel
Type CapacityAndSaleBudgeFilterYear
{
  #keys: '5[414384.0.810500200][414384.0.810500198][0.0.0][414384.0.810500199][414384.0.810500201]'
  BaseType: Object
  Description: '对比年份'
  StructuredName: 'CapacityAndSaleBudgeFilterYears'
}
_Main/BL/Type_ERPRequestOfPR/Attribute_BusinessType.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute BusinessType
{
  #keys: '3[414384.0.795671721][414384.0.795671720][414384.0.795671722]'
  ValueType: String
}
_Main/BL/Type_ERPRequestOfPR/Attribute_DataID.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute DataID
{
  #keys: '3[414384.0.795671715][414384.0.795671714][414384.0.795671716]'
  ValueType: String
}
_Main/BL/Type_ERPRequestOfPR/Attribute_DeliveryDate.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute DeliveryDate
{
  #keys: '3[414384.0.796031591][414384.0.796031590][414384.0.796031592]'
  ValueType: Date
}
_Main/BL/Type_ERPRequestOfPR/Attribute_MRPCalverNo.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute MRPCalverNo
{
  #keys: '3[414384.0.795671718][414384.0.795671717][414384.0.795671719]'
  ValueType: String
}
_Main/BL/Type_ERPRequestOfPR/Attribute_OrganCode.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute OrganCode
{
  #keys: '3[414384.0.795671724][414384.0.795671723][414384.0.795671725]'
  ValueType: String
}
_Main/BL/Type_ERPRequestOfPR/Attribute_ProductID.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute ProductID
{
  #keys: '3[414384.0.795671727][414384.0.795671726][414384.0.795671728]'
  ValueType: String
}
_Main/BL/Type_ERPRequestOfPR/Attribute_ProductName.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute ProductName
{
  #keys: '3[414384.0.795671730][414384.0.795671729][414384.0.795671731]'
  ValueType: String
}
_Main/BL/Type_ERPRequestOfPR/Attribute_ProviderCode.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute ProviderCode
{
  #keys: '3[414384.0.795671733][414384.0.795671732][414384.0.795671734]'
  ValueType: String
}
_Main/BL/Type_ERPRequestOfPR/Attribute_ProviderName.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute ProviderName
{
  #keys: '3[414384.0.795671736][414384.0.795671735][414384.0.795671737]'
  ValueType: String
}
_Main/BL/Type_ERPRequestOfPR/Attribute_Quantity.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute Quantity
{
  #keys: '3[414384.0.795671742][414384.0.795671741][414384.0.795671743]'
  ValueType: Real
}
_Main/BL/Type_ERPRequestOfPR/Attribute_StockingPointID.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute StockingPointID
{
  #keys: '3[414384.0.795671745][414384.0.795671744][414384.0.795671746]'
  ValueType: String
}
_Main/BL/Type_ERPRequestOfPR/Attribute_UnitOfMeasure.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute UnitOfMeasure
{
  #keys: '3[414384.0.795671748][414384.0.795671747][414384.0.795671749]'
  ValueType: String
}
_Main/BL/Type_ERPRequestOfPR/Method_DoCall.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,58 @@
Quintiq file version 2.0
#parent: #root
Method DoCall () as ERPResponseOfPR
{
  TextBody:
  [*
    // yypsybs Sep-11-2023 (created)
    conv := DateTimeToString::StandardConverter();
    conv.SetCustomConversion();
    conv.CustomFormatString( 'yyyyMMdd' );
    requestJSON := JSON::Object();
    requestJSON.Add( "BusinessType", this.BusinessType() );
    requestJSON.Add( "DataID", this.DataID() );
    requestJSON.Add( "DeliveryDate", conv.Convert( this.DeliveryDate().DateTime() ) );
    requestJSON.Add( "MRPCalverNo", this.MRPCalverNo() );
    requestJSON.Add( "OrganCode", this.OrganCode() );
    requestJSON.Add( "ProductID", this.ProductID() );
    requestJSON.Add( "ProductName", this.ProductName() );
    requestJSON.Add( "ProvideCode", this.ProviderCode() );
    requestJSON.Add( "ProviderName", this.ProviderName() );
    requestJSON.Add( "Quantity", this.Quantity() );
    requestJSON.Add( "StockingPointID", this.StockingPointID() );
    requestJSON.Add( "UnitOfMeasure", this.UnitOfMeasure() );
    requestString := requestJSON.AsString();
    // æž„造http请求 todo
    httpInterface := HTTPInterface::Create( "127.0.0.1", 443 );
    httpInterface.URL( "/url" );
    httpInterface.PostMethod( true );
    httpInterface.AddHeader( "content-type", "application/json" );
    // å‘送请求
    result := null( ERPResponseOfPR );
    try {
      httpInterface.Call( requestString );
      responseString := httpInterface.Result();
      responseJSON := JSON::Parse( responseString );
      dataID := responseJSON.Get( "DataID" ).GetString();
      status := responseJSON.Get( "Status" ).GetString();
      errorDescription := responseJSON.Get( "ErrorDescription" ).GetString();
      result := this.ERPResponseOfPR( relnew,
                                      DataID := dataID,
                                      Status := status,
                                      ErrorDescription := errorDescription );
    } onerror {
      result := this.ERPResponseOfPR( relnew,
                                      DataID := this.DataID(),
                                      Status := "E",
                                      ErrorDescription := e.GeneralInformation() );
    }
    return result;
  *]
}
_Main/BL/Type_ERPRequestOfPR/StaticMethod_Create.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,27 @@
Quintiq file version 2.0
#parent: #root
StaticMethod Create (
  PRHistoryData history
) as ERPRequestOfPR
{
  TextBody:
  [*
    // yypsybs Sep-12-2023 (created)
    request := history.ERPRequestOfPR( relnew );
    request.BusinessType( history.BusinessType() );
    request.DataID( history.DataID() );
    request.DeliveryDate( history.ProduceRequiredDate() );
    request.MRPCalverNo( history.MRPCalverNo() );
    request.OrganCode( history.OrganCode() );
    request.ProductID( history.ProductID() );
    request.ProductName( history.ProductName() );
    request.ProviderCode( history.ProviderCode() );
    request.ProviderName( history.ProviderName() );
    request.Quantity( history.Quantity() );
    request.StockingPointID( history.StockingPointID() );
    request.UnitOfMeasure( history.UnitOfMeasure() );
    return request;
  *]
}
_Main/BL/Type_ERPRequestOfPR/_ROOT_Type_ERPRequestOfPR.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,9 @@
Quintiq file version 2.0
#root
#parent: #DomainModel
Type ERPRequestOfPR
{
  #keys: '5[414384.0.789498661][414384.0.789498659][0.0.0][414384.0.789498660][414384.0.789498662]'
  BaseType: Object
  StructuredName: 'ERPRequestOfPRs'
}
_Main/BL/Type_ERPResponseOfPR/Attribute_DataID.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute DataID
{
  #keys: '3[414384.0.789526160][414384.0.789526159][414384.0.789526161]'
  ValueType: String
}
_Main/BL/Type_ERPResponseOfPR/Attribute_ErrorDescription.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute ErrorDescription
{
  #keys: '3[414384.0.789526180][414384.0.789526179][414384.0.789526181]'
  ValueType: String
}
_Main/BL/Type_ERPResponseOfPR/Attribute_Status.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute Status
{
  #keys: '3[414384.0.789526170][414384.0.789526169][414384.0.789526171]'
  ValueType: String
}
_Main/BL/Type_ERPResponseOfPR/_ROOT_Type_ERPResponseOfPR.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
#root
#parent: #DomainModel
Type ERPResponseOfPR
{
  #keys: '5[414384.0.787890255][414384.0.787890253][0.0.0][414384.0.787890254][414384.0.787890256]'
  BaseType: Object
  Description: 'ERP响应'
  StructuredName: 'ERPResponseOfPRs'
}
_Main/BL/Type_GlobalDTOTable/Method_InitTestData.qbl
@@ -7,6 +7,7 @@
    //this.MatAttrSettingAndPlanStrategy( relflush );
    
    // yypsybs Sep-8-2023 (created)
    info( "CapacityAndSaleBudge::InitTestData" )
    mat1 := MatAttrSettingAndPlanStrategy::CreateIfNotExist( this, 1, "手机事业部", "MAT_1", "MAT_1", "TYPE_1", 233.0, "通用", "长周期" );
    MatAttrSettingAndPlanStrategyDetail::CreateIfNotExist( mat1, "PROD_1", 666.0, "PROD_1_DESC" );
    MatAttrSettingAndPlanStrategyDetail::CreateIfNotExist( mat1, "PROD_2", 777.0, "PROD_2_DESC" );
@@ -15,5 +16,52 @@
    MatAttrSettingAndPlanStrategyDetail::CreateIfNotExist( mat2, "PROD_2", 1777.0, "PROD_2_DESC" );
    MatAttrSettingAndPlanStrategy::CreateIfNotExist( this, 3, "手机事业部", "MAT_3", "MAT_3", "TYPE_1", 233.0, "通用", "短周期" );
    MatAttrSettingAndPlanStrategy::CreateIfNotExist( this, 4, "手机事业部", "MAT_4", "MAT_4", "TYPE_2", 233.0, "专用", "短周期" );
    // yypsybs Sep-15-2023 (created)
    info( "CapacityAndSaleBudge::InitTestData" )
    this.CapacityAndSaleBudge( relflush );
    for( i := 1; i < 100; i := i + 1 ) {
      this.CapacityAndSaleBudge( relnew,
                                 PlaceOfProductionOfArray := "面板基地" + [String]Number::Random( 1, 10 ),
                                 OrgCode := "事业部" + [String]Number::Random( 1, 10 ),
                                 CapacityInPCSInMonth1 := Number::Random( 1, 10000 ),
                                 CapacityInPCSInMonth2 := Number::Random( 1, 10000 ),
                                 CapacityInPCSInMonth3 := Number::Random( 1, 10000 ),
                                 CapacityInPCSInMonth4 := Number::Random( 1, 10000 ),
                                 CapacityInPCSInMonth5 := Number::Random( 1, 10000 ),
                                 CapacityInPCSInMonth6 := Number::Random( 1, 10000 ),
                                 CapacityInPCSInMonth7 := Number::Random( 1, 10000 ),
                                 CapacityInPCSInMonth8 := Number::Random( 1, 10000 ),
                                 CapacityInPCSInMonth9 := Number::Random( 1, 10000 ),
                                 CapacityInPCSInMonth10 := Number::Random( 1, 10000 ),
                                 CapacityInPCSInMonth11 := Number::Random( 1, 10000 ),
                                 CapacityInPCSInMonth12 := Number::Random( 1, 10000 ),
                                 CapacityInSheetInMonth1 := Number::Random( 1, 10000 ),
                                 CapacityInSheetInMonth2 := Number::Random( 1, 10000 ),
                                 CapacityInSheetInMonth3 := Number::Random( 1, 10000 ),
                                 CapacityInSheetInMonth4 := Number::Random( 1, 10000 ),
                                 CapacityInSheetInMonth5 := Number::Random( 1, 10000 ),
                                 CapacityInSheetInMonth6 := Number::Random( 1, 10000 ),
                                 CapacityInSheetInMonth7 := Number::Random( 1, 10000 ),
                                 CapacityInSheetInMonth8 := Number::Random( 1, 10000 ),
                                 CapacityInSheetInMonth9 := Number::Random( 1, 10000 ),
                                 CapacityInSheetInMonth10 := Number::Random( 1, 10000 ),
                                 CapacityInSheetInMonth11 := Number::Random( 1, 10000 ),
                                 CapacityInSheetInMonth12 := Number::Random( 1, 10000 ),
                                 SaleAmountInMonth1 := Number::Random( 1, 10000 ),
                                 SaleAmountInMonth2 := Number::Random( 1, 10000 ),
                                 SaleAmountInMonth3 := Number::Random( 1, 10000 ),
                                 SaleAmountInMonth4 := Number::Random( 1, 10000 ),
                                 SaleAmountInMonth5 := Number::Random( 1, 10000 ),
                                 SaleAmountInMonth6 := Number::Random( 1, 10000 ),
                                 SaleAmountInMonth7 := Number::Random( 1, 10000 ),
                                 SaleAmountInMonth8 := Number::Random( 1, 10000 ),
                                 SaleAmountInMonth9 := Number::Random( 1, 10000 ),
                                 SaleAmountInMonth10 := Number::Random( 1, 10000 ),
                                 SaleAmountInMonth11 := Number::Random( 1, 10000 ),
                                 SaleAmountInMonth12 := Number::Random( 1, 10000 )
                               );
    }
  *]
}
_Main/BL/Type_MPSync/_ROOT_Type_MPSync.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,6 @@
Quintiq file version 2.0
#root
#parent: #DomainModel
Type MPSync #extension
{
}
_Main/BL/Type_MappingBOM/StaticMethod_CreateTestData.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,24 @@
Quintiq file version 2.0
#parent: #root
StaticMethod CreateTestData (
  MacroPlan parent,
  String businessType,
  String orgCode
) as MappingBOM
{
  TextBody:
  [*
    // yypsybs Sep-18-2023 (created)
    value := select( parent, MappingBOM, bom, bom.BusinessType() = businessType and bom.OrganCode() = orgCode );
    if( isnull( value ) ) {
      value := parent.MappingBOM( relnew,
                                  BusinessType := businessType,
                                  OrganCode := orgCode,
                                  ProcessSection := "",
                                  ProductCode := "",
                                  ComponentCode := "",
                                  AlternativeMaterialCode := "" );
    }
    return value;
  *]
}
_Main/BL/Type_MappingProduct/Attribute_OrgCode.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute OrgCode
{
  #keys: '3[414384.0.795680117][414384.0.795680116][414384.0.795680118]'
  ValueType: String
}
_Main/BL/Type_MappingProduct/StaticMethod_GetByProductId.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,17 @@
Quintiq file version 2.0
#parent: #root
StaticMethod GetByProductId (
  MacroPlan parent,
  String productId
) as MappingProduct
{
  Description: '根据料号查记录'
  TextBody:
  [*
    // yypsybs Sep-12-2023 (created)
    // todo ä¿®æ”¹parent类型
    value := select( parent, MappingProduct, item, item.ID() = productId );
    return value;
  *]
}
_Main/BL/Type_MappingSaleBudge/Attribute_BusinessType.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute BusinessType
{
  #keys: '3[414384.0.803580072][414384.0.803580071][414384.0.803580073]'
  ValueType: String
}
_Main/BL/Type_MappingSaleBudge/Attribute_CapacityInPCSInJan.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute CapacityInPCSInJan
{
  #keys: '3[414384.0.803580132][414384.0.803580131][414384.0.803580133]'
  ValueType: Real
}
_Main/BL/Type_MappingSaleBudge/Attribute_CapacityInSheetInJan.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute CapacityInSheetInJan
{
  #keys: '3[414384.0.803580142][414384.0.803580141][414384.0.803580143]'
  ValueType: Real
}
_Main/BL/Type_MappingSaleBudge/Attribute_LineAndSpecification.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute LineAndSpecification
{
  #keys: '3[414384.0.803580092][414384.0.803580091][414384.0.803580093]'
  ValueType: String
}
_Main/BL/Type_MappingSaleBudge/Attribute_ProductCode.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute ProductCode
{
  #keys: '3[414384.0.803580103][414384.0.803580102][414384.0.803580104]'
  ValueType: String
}
_Main/BL/Type_MappingSaleBudge/Attribute_SalesAmountInWInJan.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute SalesAmountInWInJan
{
  #keys: '3[414384.0.803580152][414384.0.803580151][414384.0.803580153]'
  ValueType: Real
}
_Main/BL/Type_MappingSaleBudge/_ROOT_Type_MappingCapacityAndSaleBudge.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
#root
#parent: #DomainModel
Type MappingCapacityAndSaleBudge
{
  #keys: '5[414384.0.803580058][414384.0.803580056][0.0.0][414384.0.803580057][414384.0.803580059]'
  BaseType: Object
  Description: '年度产销预算数据'
  StructuredName: 'MappingCapacityAndSaleBudges'
}
_Main/BL/Type_PRData/Attribute_AuthorizationStatus.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute AuthorizationStatus
{
  #keys: '3[414384.0.795671423][414384.0.795671422][414384.0.795671424]'
  ValueType: String
}
_Main/BL/Type_PRData/Attribute_BusinessType.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute BusinessType
{
  #keys: '3[414384.0.789498492][414384.0.789498491][414384.0.789498493]'
  Description: '事业部'
  ValueType: String
}
_Main/BL/Type_PRData/Attribute_DataID.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute DataID
{
  #keys: '3[414384.0.795671476][414384.0.795671475][414384.0.795671477]'
  ValueType: String
}
_Main/BL/Type_PRData/Attribute_DeliverToRequestorId.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute DeliverToRequestorId
{
  #keys: '3[414384.0.795671441][414384.0.795671440][414384.0.795671442]'
  ValueType: String
}
_Main/BL/Type_PRData/Attribute_DestinationOrganizationId.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute DestinationOrganizationID
{
  #keys: '3[414384.0.795671438][414384.0.795671437][414384.0.795671439]'
  ValueType: String
}
_Main/BL/Type_PRData/Attribute_DestinationTypeCode.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute DestinationTypeCode
{
  #keys: '3[414384.0.795671417][414384.0.795671416][414384.0.795671418]'
  ValueType: String
}
_Main/BL/Type_PRData/Attribute_HeaderDescription.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute HeaderDescription
{
  #keys: '3[414384.0.795671429][414384.0.795671428][414384.0.795671430]'
  ValueType: String
}
_Main/BL/Type_PRData/Attribute_InterfaceSourceCode.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute InterfaceSourceCode
{
  #keys: '3[414384.0.795671486][414384.0.795671485][414384.0.795671487]'
  ValueType: String
}
_Main/BL/Type_PRData/Attribute_LineAttribute1.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute LineAttribute1
{
  #keys: '3[414384.0.795671444][414384.0.795671443][414384.0.795671445]'
  ValueType: String
}
_Main/BL/Type_PRData/Attribute_LineAttribute6.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute LineAttribute6
{
  #keys: '3[414384.0.795671447][414384.0.795671446][414384.0.795671448]'
  ValueType: String
}
_Main/BL/Type_PRData/Attribute_LineType.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute LineType
{
  #keys: '3[414384.0.795671435][414384.0.795671434][414384.0.795671436]'
  ValueType: String
}
_Main/BL/Type_PRData/Attribute_LineTypeId.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute LineTypeId
{
  #keys: '3[414384.0.795671432][414384.0.795671431][414384.0.795671433]'
  ValueType: String
}
_Main/BL/Type_PRData/Attribute_MRPCalverNo.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute MRPCalverNo
{
  #keys: '3[414384.0.789498489][414384.0.789498488][414384.0.789498490]'
  Description: 'MRP计算版本号'
  ValueType: String
}
_Main/BL/Type_PRData/Attribute_OrgId.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute OrgId
{
  #keys: '3[414384.0.795671450][414384.0.795671449][414384.0.795671451]'
  ValueType: String
}
_Main/BL/Type_PRData/Attribute_OrganCode.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute OrganCode
{
  #keys: '3[414384.0.789498495][414384.0.789498494][414384.0.789498496]'
  Description: '组织编码'
  ValueType: String
}
_Main/BL/Type_PRData/Attribute_PRSuggestionDate.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute PRSuggestionDate
{
  #keys: '3[414384.0.789498483][414384.0.789498482][414384.0.789498484]'
  Description: 'PR建议日期'
  ValueType: Date
}
_Main/BL/Type_PRData/Attribute_PlannerCode.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute PlannerCode
{
  #keys: '3[414384.0.789498510][414384.0.789498509][414384.0.789498511]'
  Description: '物料计划员'
  ValueType: String
}
_Main/BL/Type_PRData/Attribute_PreparerId.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute PreparerId
{
  #keys: '3[414384.0.795671426][414384.0.795671425][414384.0.795671427]'
  ValueType: String
}
_Main/BL/Type_PRData/Attribute_ProduceRequiredDate.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute ProduceRequiredDate
{
  #keys: '3[414384.0.789498480][414384.0.789498479][414384.0.789498481]'
  Description: '需求日期'
  ValueType: Date
}
_Main/BL/Type_PRData/Attribute_ProductID.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute ProductID
{
  #keys: '3[414384.0.789498474][414384.0.789498473][414384.0.789498475]'
  Description: '零件号'
  ValueType: String
}
_Main/BL/Type_PRData/Attribute_ProductName.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute ProductName
{
  #keys: '3[414384.0.789498477][414384.0.789498476][414384.0.789498478]'
  Description: '零件名称'
  ValueType: String
}
_Main/BL/Type_PRData/Attribute_ProviderCode.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute ProviderCode
{
  #keys: '3[414384.0.789498498][414384.0.789498497][414384.0.789498499]'
  Description: '供应商代码'
  ValueType: String
}
_Main/BL/Type_PRData/Attribute_ProviderName.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute ProviderName
{
  #keys: '3[414384.0.789498501][414384.0.789498500][414384.0.789498502]'
  Description: '供应商名称'
  ValueType: String
}
_Main/BL/Type_PRData/Attribute_Quantity.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute Quantity
{
  #keys: '3[414384.0.789498486][414384.0.789498485][414384.0.789498487]'
  Description: '需求数量'
  ValueType: Real
}
_Main/BL/Type_PRData/Attribute_RequisitionType.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute RequisitionType
{
  #keys: '3[414384.0.796031490][414384.0.796031489][414384.0.796031491]'
  Description: '调接口用'
  ValueType: String
}
_Main/BL/Type_PRData/Attribute_SendBy.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute SendBy
{
  #keys: '3[414384.0.789498519][414384.0.789498518][414384.0.789498520]'
  Description: '发送人'
  ValueType: String
}
_Main/BL/Type_PRData/Attribute_SendStatus.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute SendStatus
{
  #keys: '3[414384.0.789498513][414384.0.789498512][414384.0.789498514]'
  Description: 'PR数据发送状态'
  ValueType: String
}
_Main/BL/Type_PRData/Attribute_SendTIme.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute SendTIme
{
  #keys: '3[414384.0.789498516][414384.0.789498515][414384.0.789498517]'
  Description: '发送时间'
  ValueType: DateTime
}
_Main/BL/Type_PRData/Attribute_StockingPointID.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute StockingPointID
{
  #keys: '3[414384.0.789498504][414384.0.789498503][414384.0.789498505]'
  Description: '收货库存点'
  ValueType: String
}
_Main/BL/Type_PRData/Attribute_UnitOfMeasure.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute UnitOfMeasure
{
  #keys: '3[414384.0.789498507][414384.0.789498506][414384.0.789498508]'
  Description: '计量单位'
  ValueType: String
}
_Main/BL/Type_PRData/Attribute_UnitPrice.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute UnitPrice
{
  #keys: '3[414384.0.795671420][414384.0.795671419][414384.0.795671421]'
  ValueType: Real
}
_Main/BL/Type_PRData/Method_DoCall.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,61 @@
Quintiq file version 2.0
#parent: #root
Method DoCall (
  GlobalOTDTable globalData,
  String callBy
) as PRHistoryData
{
  Description: '调用'
  TextBody:
  [*
    // yypsybs Sep-11-2023 (created)
    result := globalData.PRHistoryData( relnew );
    // ç…§æ¬éƒ¨åˆ†
    result.AuthorizationStatus( this.AuthorizationStatus() );
    result.BusinessType( this.BusinessType() );
    result.DataID( this.DataID() );
    result.DeliverToRequestorId( this.DeliverToRequestorId() );
    result.DestinationOrganizationID( this.DestinationOrganizationID() );
    result.DestinationTypeCode( this.DestinationTypeCode() );
    result.HeaderDescription( this.HeaderDescription() );
    result.LineAttribute1( this.LineAttribute1() );
    result.LineAttribute6( this.LineAttribute6() );
    result.LineType( this.LineType() );
    result.LineTypeId( this.LineTypeId() );
    result.MRPCalverNo( this.MRPCalverNo() );
    result.OrganCode( this.OrganCode() );
    result.OrgId( this.OrgId() );
    result.PlannerCode( this.PlannerCode() );
    result.PreparerId( this.PreparerId() );
    result.ProduceRequiredDate( this.ProduceRequiredDate() );
    result.ProductID( this.ProductID() );
    result.ProductName( this.ProductName() );
    result.ProviderCode( this.ProviderCode() );
    result.ProviderName( this.ProviderName() );
    result.Quantity( this.Quantity() );
    result.RequisitionType( this.RequisitionType() );
    result.StockingPointID( this.StockingPointID() );
    result.UnitOfMeasure( this.UnitOfMeasure() );
    result.UnitPrice( this.UnitPrice() );
    // è¯·æ±‚部分
    request := ERPRequestOfPR::Create( result );
    response := request.DoCall();
    // å“åº”部分
    result.ReceiveError( response.ErrorDescription() );
    result.ReceiveStatus( response.Status() );
    result.ReceiveTime( DateTime::Now() );
    // ä¸»è®°å½•修改
    result.SendStatus( "T" );
    result.ReleaseBy( callBy );
    result.SendTime( DateTime::Now() );
    this.SendStatus( "T" );
    this.SendTIme( DateTime::Now() );
    this.SendBy( callBy );
    return result;
  *]
}
_Main/BL/Type_PRData/StaticMethod_CanCall.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
Quintiq file version 2.0
#parent: #root
StaticMethod CanCall (
  PRDatas toCalls,
  output String feedback_o
) as Boolean
{
  TextBody:
  [*
    // yypsybs Sep-12-2023 (created)
    info( "CanCall " + [String]toCalls.Size() + " PRs" )
    feedback_o := "";
    if( toCalls.Size() = 0 ) {
      feedback_o := "No checked PR";
    } else {
      havaUnsent := exists( toCalls, Elements, toCall, toCall.SendStatus() = "" );
      if( not havaUnsent ) {
        feedback_o := "No unsent PR";
      }
    }
    return feedback_o = "";
  *]
}
_Main/BL/Type_PRData/StaticMethod_DoCall.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,20 @@
Quintiq file version 2.0
#parent: #root
StaticMethod DoCall (
  GlobalOTDTable globalData,
  PRDatas toCalls,
  String callBy
)
{
  TextBody:
  [*
    // yypsybs Sep-12-2023 (created)
    info( "DoCall " + [String]toCalls.Size() + " PRs" );
    nowNo := 1;
    traverse( toCalls, Elements, toCall, toCall.SendStatus() = "" ) {
      info ( "DoCall " + [String]nowNo + "/" + [String]toCalls.Size() + " PR" );
      toCall.DoCall( globalData, callBy );
      nowNo := nowNo + 1;
    }
  *]
}
_Main/BL/Type_PRData/StaticMethod_FromSupplyPlanning#662.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,75 @@
Quintiq file version 2.0
#parent: #root
StaticMethod FromSupplyPlanning (
  MacroPlan macroPlan,
  MacroPlan mappingRoot,
  ProductInStockingPointInPeriod pispip
) as PRData
{
  TextBody:
  [*
    // yypsybs Sep-12-2023 (created)
    result := macroPlan.PRData( relnew );
    result.InterfaceSourceCode( "Quintiq" );
    pisp := pispip.ProductInStockingPoint_MP();
    product := pisp.Product_MP();
    stockingPoint := pisp.StockingPoint_MP();
    period := pispip.Period_MP();
    mappingProduct := MappingProduct::GetByProductId( mappingRoot, product.ID() );
    // æŽ¥å£/中间表暂无
    mappingProviderCapacity := "暂无";
    erpData := "暂无";
    // æ ¹æ®pispip
    result.MRPCalverNo( pispip.MRPCalverNo() );
    result.Quantity( pispip.NewSupplyQuantity() );
    // æ ¹æ®product
    result.ProductID( product.ID() );
    result.ProductName( product.Name() );
    // æ ¹æ®stockingPoint
    result.StockingPointID( stockingPoint.ID() );
    // æ ¹æ®period
    result.ProduceRequiredDate( period.StartDate() );
    result.PRSuggestionDate( ifexpr( (result.ProduceRequiredDate() - Duration::Days( 7 )).Date() >= Date::Today(),
                                     Date::Today(), (result.ProduceRequiredDate() - Duration::Days( 7 )).Date() ) );
    // æ ¹æ®product中间表
    result.BusinessType( mappingProduct.BusinessType() );
    result.OrganCode( mappingProduct.OrgCode() );
    result.UnitOfMeasure( mappingProduct.UnitOfMeasureName() );
    // æ ¹æ®ä¾›åº”商能力中间表
    result.ProviderCode( mappingProviderCapacity );
    result.ProductName( mappingProviderCapacity );
    // æ ¹æ®erp接口 å›ºå®šå€¼
    result.RequisitionType( "PURCHASE" );
    result.DestinationTypeCode( "INVENTORY" );
    result.UnitPrice( 1.0 );
    result.AuthorizationStatus( "INCOMPLETE" );
    result.LineTypeId( "1" );
    result.LineType( "货物" );
    // æ ¹æ®erp接口 todo
    result.PreparerId( erpData );
    result.HeaderDescription( erpData );
    result.DestinationOrganizationID( erpData );
    result.DeliverToRequestorId( erpData );
    result.LineAttribute1( erpData );
    result.LineAttribute6( erpData );
    result.OrgId( erpData );
    // ç”Ÿæˆid todo
    result.DataID( [String]Number::Random( Number::MinNumber(), Number::MaxNumber() ) );
    // å‘送信息
    result.SendStatus( "" );
    result.SendBy( "" );
    result.SendTIme( DateTime::MinDateTime() );
    return result;
  *]
}
_Main/BL/Type_PRData/StaticMethod_FromSupplyPlanning.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,27 @@
Quintiq file version 2.0
#parent: #root
StaticMethod FromSupplyPlanning (
  MacroPlan macroPlan,
  MacroPlan mappingRoot,
  String mrpCalverNo
)
{
  Description:
  [*
    SupplyPlanning转PRData
    todo ä¿®æ”¹mappingRoot为MPSync
  *]
  TextBody:
  [*
    // yypsybs Sep-12-2023 (created)
    // æŒ‰MRPCalverNo查,已有旧记录时不处理
    oldRecords := selectset( macroPlan, PRData, item,
                             item.MRPCalverNo() = mrpCalverNo );
    if( isnull( oldRecords ) or oldRecords.Size() = 0 ) {
      pispips := ProductInStockingPointInPeriod::GetByMRPCalverNo( macroPlan, mrpCalverNo );
      traverse( pispips, Elements, item ) {
        PRData::FromSupplyPlanning( macroPlan, mappingRoot, item );
      }
    }
  *]
}
_Main/BL/Type_PRData/StaticMethod_ProductIdOver14Days.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,27 @@
Quintiq file version 2.0
#parent: #root
StaticMethod ProductIdOver14Days (
  PRDatas toChecks
) as String
{
  TextBody:
  [*
    // yypsybs Sep-12-2023 (created)
    result := "";
    productIds := selectuniquevalues( toChecks, Elements, item,
                                      (item.ProduceRequiredDate() - Duration::Days( 14 )).Date() > Date::Today() and item.SendStatus() = "",
                                      item.ProductID() );
    productIds := selectsortedset( productIds, Elements, item, item );
    if( productIds.Size() > 0 ) {
      result := result + productIds.Element( 0 );
      for( i := 1; i < productIds.Size(); i := i + 1 ) {
        result := result + ",";
        result := result + productIds.Element( 0 );
      }
    }
    return result;
  *]
}
_Main/BL/Type_PRData/StaticMethod_TestData.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,28 @@
Quintiq file version 2.0
#parent: #root
StaticMethod TestData (
  MacroPlan macroPlan
)
{
  TextBody:
  [*
    // yypsybs Sep-12-2023 (created)
    if( selectset( macroPlan, PRData, item, true ).Size() = 0 ) {
      info( "======== Create PR Test Data ========" );
      for( i := 0; i < 100; i := i + 1 ) {
        macroPlan.PRData( relnew,
                          MRPCalverNo := [String]Number::Random( 1, Number::MaxNumber() ),
                          BusinessType := [String]Number::Random( 1, Number::MaxNumber() ),
                          OrganCode := [String]Number::Random( 1, Number::MaxNumber() ),
                          ProductID := [String]Number::Random( 1, Number::MaxNumber() ),
                          StockingPointID := [String]Number::Random( 1, Number::MaxNumber() ),
                          Quantity := Number::Random( 1, Number::MaxNumber() ),
                          ProduceRequiredDate := Date::Construct( 2023,
                                                                  Number::Random( 9, 12 ),
                                                                  Number::Random( 13, 28 ) ),
                          DataID := [String]Number::Random( 1, Number::MaxNumber() ),
                          SendStatus := ifexpr( Number::Random( 1, 5 ) = 1, "T", "" ) );
      }
    }
  *]
}
_Main/BL/Type_PRData/_ROOT_Type_PRData.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
#root
#parent: #DomainModel
Type PRData
{
  #keys: '5[414384.0.787890167][414384.0.787890165][0.0.0][414384.0.787890166][414384.0.787890168]'
  BaseType: Object
  Description: 'PR数据'
  StructuredName: 'PRDatas'
}
_Main/BL/Type_PRHistoryData/Attribute_AuthorizationStatus.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute AuthorizationStatus
{
  #keys: '3[414384.0.796031550][414384.0.796031549][414384.0.796031551]'
  ValueType: String
}
_Main/BL/Type_PRHistoryData/Attribute_BusinessType.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute BusinessType
{
  #keys: '3[414384.0.789498626][414384.0.789498625][414384.0.789498627]'
  Description: '事业部'
  ValueType: String
}
_Main/BL/Type_PRHistoryData/Attribute_DataID.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute DataID
{
  #keys: '3[414384.0.795671680][414384.0.795671679][414384.0.795671681]'
  ValueType: String
}
_Main/BL/Type_PRHistoryData/Attribute_DeliverToRequestorId.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute DeliverToRequestorId
{
  #keys: '3[414384.0.795671590][414384.0.795671589][414384.0.795671591]'
  ValueType: String
}
_Main/BL/Type_PRHistoryData/Attribute_DestinationOrganizationID.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute DestinationOrganizationID
{
  #keys: '3[414384.0.795671654][414384.0.795671653][414384.0.795671655]'
  ValueType: String
}
_Main/BL/Type_PRHistoryData/Attribute_DestinationTypeCode.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute DestinationTypeCode
{
  #keys: '3[414384.0.795671530][414384.0.795671529][414384.0.795671531]'
  ValueType: String
}
_Main/BL/Type_PRHistoryData/Attribute_HeaderDescription#16.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute HeaderDescription
{
  #keys: '3[414384.0.796031566][414384.0.796031565][414384.0.796031567]'
  ValueType: String
}
_Main/BL/Type_PRHistoryData/Attribute_LineAttribute1.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute LineAttribute1
{
  #keys: '3[414384.0.795671611][414384.0.795671610][414384.0.795671612]'
  ValueType: String
}
_Main/BL/Type_PRHistoryData/Attribute_LineAttribute6.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute LineAttribute6
{
  #keys: '3[414384.0.795671621][414384.0.795671620][414384.0.795671622]'
  ValueType: String
}
_Main/BL/Type_PRHistoryData/Attribute_LineType.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute LineType
{
  #keys: '3[414384.0.795671560][414384.0.795671559][414384.0.795671561]'
  ValueType: String
}
_Main/BL/Type_PRHistoryData/Attribute_LineTypeId.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute LineTypeId
{
  #keys: '3[414384.0.795671550][414384.0.795671549][414384.0.795671551]'
  ValueType: String
}
_Main/BL/Type_PRHistoryData/Attribute_MRPCalverNo.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute MRPCalverNo
{
  #keys: '3[414384.0.787890315][414384.0.787890314][414384.0.787890316]'
  Description: 'MRP计算版本号'
  ValueType: String
}
_Main/BL/Type_PRHistoryData/Attribute_OrgId.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute OrgId
{
  #keys: '3[414384.0.795671631][414384.0.795671630][414384.0.795671632]'
  ValueType: String
}
_Main/BL/Type_PRHistoryData/Attribute_OrganCode.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute OrganCode
{
  #keys: '3[414384.0.787890338][414384.0.787890337][414384.0.787890339]'
  Description: '组织编码'
  ValueType: String
}
_Main/BL/Type_PRHistoryData/Attribute_PRDataReleaseDate.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute PRDataReleaseDate
{
  #keys: '3[414384.0.789526135][414384.0.789526134][414384.0.789526136]'
  Description: 'PR数据推送日期'
  ValueType: Date
}
_Main/BL/Type_PRHistoryData/Attribute_PlannerCode.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute PlannerCode
{
  #keys: '3[414384.0.787890388][414384.0.787890387][414384.0.787890389]'
  Description: '物料计划员'
  ValueType: String
}
_Main/BL/Type_PRHistoryData/Attribute_PreparerID.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute PreparerID
{
  #keys: '3[414384.0.789498615][414384.0.789498614][414384.0.789498616]'
  ValueType: String
}
_Main/BL/Type_PRHistoryData/Attribute_PreparerId#603.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute PreparerId
{
  #keys: '3[414384.0.795671570][414384.0.795671569][414384.0.795671571]'
  ValueType: String
}
_Main/BL/Type_PRHistoryData/Attribute_ProduceRequiredDate#168.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute ProduceRequiredDate
{
  #keys: '3[414384.0.795671764][414384.0.795671763][414384.0.795671765]'
  Description: '需求日期'
  ValueType: Date
}
_Main/BL/Type_PRHistoryData/Attribute_ProductID.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute ProductID
{
  #keys: '3[414384.0.787890275][414384.0.787890274][414384.0.787890276]'
  Description: '零件号'
  ValueType: String
}
_Main/BL/Type_PRHistoryData/Attribute_ProductName.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute ProductName
{
  #keys: '3[414384.0.787890295][414384.0.787890294][414384.0.787890296]'
  Description: '零件名称'
  ValueType: String
}
_Main/BL/Type_PRHistoryData/Attribute_ProviderCode.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute ProviderCode
{
  #keys: '3[414384.0.787890348][414384.0.787890347][414384.0.787890349]'
  Description: '供应商代码'
  ValueType: String
}
_Main/BL/Type_PRHistoryData/Attribute_ProviderName.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute ProviderName
{
  #keys: '3[414384.0.787890358][414384.0.787890357][414384.0.787890359]'
  Description: '供应商名称'
  ValueType: String
}
_Main/BL/Type_PRHistoryData/Attribute_Quantity.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute Quantity
{
  #keys: '3[414384.0.787890305][414384.0.787890304][414384.0.787890306]'
  Description: '需求数量'
  ValueType: Real
}
_Main/BL/Type_PRHistoryData/Attribute_ReceiveError.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute ReceiveError
{
  #keys: '3[414384.0.787890454][414384.0.787890453][414384.0.787890455]'
  Description: '错误描述'
  ValueType: String
}
_Main/BL/Type_PRHistoryData/Attribute_ReceiveStatus.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,12 @@
Quintiq file version 2.0
#parent: #root
Attribute ReceiveStatus
{
  #keys: '3[414384.0.787890428][414384.0.787890427][414384.0.787890429]'
  Description:
  [*
    ERP接收状态
    S成功,E失败
  *]
  ValueType: String
}
_Main/BL/Type_PRHistoryData/Attribute_ReceiveTime.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute ReceiveTime
{
  #keys: '3[414384.0.787890438][414384.0.787890437][414384.0.787890439]'
  Description: '接收时间'
  ValueType: DateTime
}
_Main/BL/Type_PRHistoryData/Attribute_ReleaseBy.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute ReleaseBy
{
  #keys: '3[414384.0.787890418][414384.0.787890417][414384.0.787890419]'
  Description: '释放人'
  ValueType: String
}
_Main/BL/Type_PRHistoryData/Attribute_RequisitionType.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute RequisitionType
{
  #keys: '3[414384.0.795671520][414384.0.795671519][414384.0.795671521]'
  ValueType: String
}
_Main/BL/Type_PRHistoryData/Attribute_SendStatus.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute SendStatus
{
  #keys: '3[414384.0.787890398][414384.0.787890397][414384.0.787890399]'
  Description: '发送状态'
  ValueType: String
}
_Main/BL/Type_PRHistoryData/Attribute_SendTime.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute SendTime
{
  #keys: '3[414384.0.787890408][414384.0.787890407][414384.0.787890409]'
  Description: '发送时间'
  ValueType: DateTime
}
_Main/BL/Type_PRHistoryData/Attribute_StockingPointID.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute StockingPointID
{
  #keys: '3[414384.0.787890368][414384.0.787890367][414384.0.787890369]'
  Description: '收货库存点'
  ValueType: String
}
_Main/BL/Type_PRHistoryData/Attribute_UnitOfMeasure.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute UnitOfMeasure
{
  #keys: '3[414384.0.787890378][414384.0.787890377][414384.0.787890379]'
  Description: '计量单位'
  ValueType: String
}
_Main/BL/Type_PRHistoryData/Attribute_UnitPrice.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute UnitPrice
{
  #keys: '3[414384.0.795671540][414384.0.795671539][414384.0.795671541]'
  ValueType: Real
}
_Main/BL/Type_PRHistoryData/DefaultValue_BusinessType.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,6 @@
Quintiq file version 2.0
#parent: #root
DefaultValue
{
  TargetAttribute: BusinessType
}
_Main/BL/Type_PRHistoryData/Method_Recall.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,29 @@
Quintiq file version 2.0
#parent: #root
Method ReCall (
  String callBy
) as PRHistoryData
{
  Description: '重调'
  TextBody:
  [*
    // yypsybs Sep-11-2023 (created)
    result := this.GlobalOTDTable().PRHistoryData( relcopy, this );
    // æ›´æ–°éƒ¨åˆ†
    result.PRDataReleaseDate( Date::Today() );
    result.ReleaseBy( callBy );
    result.SendTime( DateTime::Now() );
    // è¯·æ±‚
    request := ERPRequestOfPR::Create( result );
    response := request.DoCall();
    // å“åº”部分
    result.ReceiveError( response.ErrorDescription() );
    result.ReceiveStatus( response.Status() );
    result.ReceiveTime( DateTime::Now() );
    return result;
  *]
}
_Main/BL/Type_PRHistoryData/StaticMethod_ProductIdOver14Days.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,27 @@
Quintiq file version 2.0
#parent: #root
StaticMethod ProductIdOver14Days (
  PRHistoryDatas toChecks
) as String
{
  TextBody:
  [*
    // yypsybs Sep-12-2023 (created)
    result := "";
    productIds := selectuniquevalues( toChecks, Elements, item,
                                      (item.ProduceRequiredDate() - Duration::Days( 14 )).Date() > Date::Today() and item.SendStatus() = "",
                                      item.ProductID() );
    productIds := selectsortedset( productIds, Elements, item, item );
    if( productIds.Size() > 0 ) {
      result := result + productIds.Element( 0 );
      for( i := 1; i < productIds.Size(); i := i + 1 ) {
        result := result + ",";
        result := result + productIds.Element( 0 );
      }
    }
    return result;
  *]
}
_Main/BL/Type_PRHistoryData/StaticMethod_ReCall.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,15 @@
Quintiq file version 2.0
#parent: #root
StaticMethod ReCall (
  PRHistoryDatas toCalls,
  String callBy
)
{
  TextBody:
  [*
    // yypsybs Sep-12-2023 (created)
    traverse( toCalls, Elements, toCall ) {
      toCall.ReCall( callBy );
    }
  *]
}
_Main/BL/Type_PRHistoryData/_ROOT_Type_PRHistoryData.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
#root
#parent: #DomainModel
Type PRHistoryData
{
  #keys: '5[414384.0.787890172][414384.0.787890170][0.0.0][414384.0.787890171][414384.0.787890173]'
  BaseType: Object
  Description: '历史PR数据'
  StructuredName: 'PRHistoryDatas'
}
_Main/BL/Type_ProductInStockingPointInPeriod/Attribute_mrpCalverNo.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute MRPCalverNo
{
  #keys: '3[414384.0.796031432][414384.0.796031431][414384.0.796031433]'
  Description: 'MRP计算版本号'
  ValueType: String
}
_Main/BL/Type_ProductInStockingPointInPeriod/StaticMethod_GetByMRPCalverNo.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,17 @@
Quintiq file version 2.0
#parent: #root
StaticMethod GetByMRPCalverNo (
  MacroPlan parent,
  String mrpCalverNo
) as owning ProductInStockingPointInPeriods
{
  Description: '根据MRP计算版本号获取待处理数据'
  TextBody:
  [*
    // yypsybs Sep-12-2023 (created)
    result := selectset( parent, Product_MP.ProductInStockingPoint_MP.ProductInStockingPointInPeriod, pispip,
                         pispip.ProductInStockingPoint_MP().Product_MP().ID().StartsWith( "E" )
                         and pispip.MRPCalverNo() = mrpCalverNo );
    return &result;
  *]
}
_Main/BL/Type_ProductInStockingPointInPeriod/_ROOT_Type_ProductInStockingPointInPeriod.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,6 @@
Quintiq file version 2.0
#root
#parent: #DomainModel
Type ProductInStockingPointInPeriod #extension
{
}
_Main/BL/Type_SaleBudget/Attribute_Specs.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute Specs
{
  #keys: '3[414384.0.803580062][414384.0.803580061][414384.0.803580063]'
  ValueType: String
}
_Main/BL/Type_SaleBudget/_ROOT_Type_SaleBudget.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
#root
#parent: #DomainModel
Type SaleBudget
{
  #keys: '5[414384.0.803544585][414384.0.803544583][0.0.0][414384.0.803544584][414384.0.803544586]'
  BaseType: Object
  Description: '销售预算'
  StructuredName: 'SaleBudgets'
}
_Main/BL/Type_SaleBudgetItem/_ROOT_Type_SaleBudgetItem.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
#root
#parent: #DomainModel
Type SaleBudgetItem
{
  #keys: '5[414384.0.803544590][414384.0.803544588][0.0.0][414384.0.803544589][414384.0.803544591]'
  BaseType: Object
  Description: '销售预算明细'
  StructuredName: 'SaleBudgetItems'
}
_Main/BL/Type_ScenarioManager/Method_CapacityAndSaleBudgeCompare.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,185 @@
Quintiq file version 2.0
#parent: #root
Method CapacityAndSaleBudgeCompare (
  MacroPlans macroPlans,
  CapacityAndSaleBudgeFilterItems items,
  CapacityAndSaleBudgeFilterYears years,
  CapacityAndSaleBudgeFilterMonths months,
  MPSync mpSync,
  MacroPlan mappingParent
)
{
  Description: 'todo : mappingParent改为mpSync'
  TextBody:
  [*
    // yypsybs Sep-18-2023 (created)
    // ====不选时默认全选====
    if( years.Size() = 0 ) {
      years := selectsortedset( this, CapacityAndSaleBudgeFilterYear, item, item.YearNo() );
    }
    if( months.Size() = 0 ) {
      months := selectsortedset( this, CapacityAndSaleBudgeFilterMonth, item, item.MonthNo() );
    }
    traverse( macroPlans, Elements, item ) {
      info( "scenario : " + item.ScenarioName() );
    }
    traverse( items, Elements, item ) {
      info( "item : " + item.ItemName() );
    }
    traverse( years, Elements, item ) {
      info( "year : " + [String]item.YearNo() );
    }
    traverse( months, Elements, item ) {
      info( "month : " + [String]item.MonthNo() );
    }
    // ====清理旧数据====
    this.CapacityAndSaleBudgeCompareItemRow( relflush );
    this.CapacityAndSaleBudgeCompareItemColumn( relflush );
    // ====汇总所有出现的产品====
    productCodeList := construct( Strings );
    historyData := selectset( mpSync, MappingCapacityAndSaleBudge, item, true );
    traverse( historyData, Elements, one ) {
      productCodeList.Add( one.ProductCode() );
    }
    traverse( macroPlans, Elements, macroPlan ) {
      traverse( macroPlan, Product_MP.ProductInStockingPoint_MP.ProductInStockingPointInPeriod, pispip ) {
        productCodeList.Add( pispip.ProductInStockingPoint_MP().Product_MP().ID() );
      }
    }
    productCodeList := selectuniquevalues( productCodeList, Elements, item, item );
    info( "product count : " + [String]productCodeList.Size() )
    // ====根据产品查事业部和组织编码,然后按事业部和组织编码汇总====
    traverse( productCodeList, Elements, productCode ) {
      bom := MappingBOM::CreateTestData( mappingParent, [String](productCode.Length() mod 3), [String](productCode.Length() mod 4) );
    //  bom := select( mappingParent, MappingBOM, bom, bom.ProductCode() = productCode );
      if( not isnull( bom ) ) {
        businessType := bom.BusinessType();
        orgCode := bom.OrganCode();
        row := CapacityAndSaleBudgeCompareItemRow::CreateIfNotExist( this, businessType, orgCode );
        // è®°å½•每行包含哪些product
        CapacityAndSaleBudgeCompareItemRowProduct::CreateIfNotExist( row, productCode );
      }
    }
    // ====从左向右生成列头与内容====
    // äº‹ä¸šéƒ¨ï¼Œç»„织
    info( "dealing businessType and orgCode" )
    columnBusinessType := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "事业部" );
    columnOrgCode := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "组织编码" );
    traverse( this, CapacityAndSaleBudgeCompareItemRow, row ) {
      cell := columnBusinessType.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := row.BusinessType() );
      cell.CapacityAndSaleBudgeCompareItemRow( relset, row );
      cell := columnOrgCode.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := row.OrgCode() );
      cell.CapacityAndSaleBudgeCompareItemRow( relset, row );
    }
    // é¢æ¿åˆ†é…é‡ - å¹´åº¦é¢„ç®—
    // æ ¼å¼ï¼š é¢æ¿åˆ†é…é‡ - å¹´ - æœˆï¼ˆ1-12 & total) - å¹´åº¦é¢„ç®—/scenarioName
    info( "dealing é¢æ¿åˆ†é…é‡" )
    if( CapacityAndSaleBudgeFilterItem::Contains( items, "面板分配量" ) ) {
      // åŽ†å²æ•°æ®
      traverse( months, Elements, month ) {
        columnMonth := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "面板分配量-" + "-" + [String]month.MonthNo() + "-年度预算" );
        traverse( this, CapacityAndSaleBudgeCompareItemRow, row ) {
          cell := columnMonth.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]Number::Random( 0, 100 ) );
          cell.CapacityAndSaleBudgeCompareItemRow( relset, row );
        }
      }
      columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "面板分配量-" + "-total-年度预算" );
      traverse( this, CapacityAndSaleBudgeCompareItemRow, row ) {
        cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]Number::Random( 0, 100 ) );
        cell.CapacityAndSaleBudgeCompareItemRow( relset, row );
      }
      // S&OP数据
      traverse( years, Elements, year ) {
        traverse( macroPlans, Elements, macroPlan ) {
          traverse( months, Elements, month ) {
            columnMonth := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this,
                                                                                    "面板分配量-" + [String]year.YearNo() + "-" + [String]month.MonthNo() + "-" + macroPlan.ScenarioName() );
            traverse( this, CapacityAndSaleBudgeCompareItemRow, row ) {
              cell := columnMonth.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]Number::Random( 0, 100 ) );
              cell.CapacityAndSaleBudgeCompareItemRow( relset, row );
            }
          }
          columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this,
                                                                                 "面板分配量-" + [String]year.YearNo() + "-total-" + macroPlan.ScenarioName() );
          traverse( this, CapacityAndSaleBudgeCompareItemRow, row ) {
            cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]Number::Random( 0, 100 ) );
            cell.CapacityAndSaleBudgeCompareItemRow( relset, row );
          }
        }
      }
    }
    // å¹´åº¦é”€å”®é¢
    info( "dealing é”€å”®é¢" )
    if( CapacityAndSaleBudgeFilterItem::Contains( items, "销售额" ) ) {
      // åŽ†å²æ•°æ®
      traverse( months, Elements, month ) {
        columnMonth := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "对外销售额-" + "-" + [String]month.MonthNo() + "-年度预算" );
        traverse( this, CapacityAndSaleBudgeCompareItemRow, row ) {
          cell := columnMonth.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]Number::Random( 0, 100 ) );
          cell.CapacityAndSaleBudgeCompareItemRow( relset, row );
        }
      }
      columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "对外销售额-" + "-total-年度预算" );
      traverse( this, CapacityAndSaleBudgeCompareItemRow, row ) {
        cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]Number::Random( 0, 100 ) );
        cell.CapacityAndSaleBudgeCompareItemRow( relset, row );
      }
      // S&OP数据
      traverse( years, Elements, year ) {
        traverse( macroPlans, Elements, macroPlan ) {
          traverse( months, Elements, month ) {
            columnMonth := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "对外销售额-" + [String]year.YearNo() + "-" + [String]month.MonthNo() + "-" + macroPlan.ScenarioName() );
            traverse( this, CapacityAndSaleBudgeCompareItemRow, row ) {
              cell := columnMonth.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]Number::Random( 0, 100 ) );
              cell.CapacityAndSaleBudgeCompareItemRow( relset, row );
            }
          }
          columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "对外销售额-" + [String]year.YearNo() + "-total-" + macroPlan.ScenarioName() );
          traverse( this, CapacityAndSaleBudgeCompareItemRow, row ) {
            cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]Number::Random( 0, 100 ) );
            cell.CapacityAndSaleBudgeCompareItemRow( relset, row );
          }
        }
      }
    }
    // å¤§å¼ ç›ˆåˆ©é¢
    info( "dealing å¤§å¼ ç›ˆåˆ©é¢" )
    traverse( years, Elements, year ) {
      // åŽ†å²æ•°æ®
      columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "大张盈利额-年度预算" );
      traverse( this, CapacityAndSaleBudgeCompareItemRow, row ) {
        cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]Number::Random( 0, 100 ) );
        cell.CapacityAndSaleBudgeCompareItemRow( relset, row );
      }
      // S&OP数据
      traverse( macroPlans, Elements, macroPlan ) {
        columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "大张盈利额-" + [String]year.YearNo() );
        traverse( this, CapacityAndSaleBudgeCompareItemRow, row ) {
          cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]Number::Random( 0, 100 ) );
          cell.CapacityAndSaleBudgeCompareItemRow( relset, row );
        }
      }
    }
    // äº§å“ç›ˆåˆ©é¢
    info( "dealing äº§å“ç›ˆåˆ©é¢" )
    traverse( years, Elements, year ) {
      // åŽ†å²æ•°æ®
      columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "产品盈利额-年度预算" );
      traverse( this, CapacityAndSaleBudgeCompareItemRow, row ) {
        cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]Number::Random( 0, 100 ) );
        cell.CapacityAndSaleBudgeCompareItemRow( relset, row );
      }
      // S&OP数据
      traverse( macroPlans, Elements, macroPlan ) {
        columnYear := CapacityAndSaleBudgeCompareItemColumn::CreateIfNotExist( this, "产品盈利额-" + [String]year.YearNo() );
        traverse( this, CapacityAndSaleBudgeCompareItemRow, row ) {
          cell := columnYear.CapacityAndSaleBudgeCompareItemCell( relnew, CellContent := [String]Number::Random( 0, 100 ) );
          cell.CapacityAndSaleBudgeCompareItemRow( relset, row );
        }
      }
    }
    info( "done" );
  *]
}
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/_ROOT_Component_ApplicationMacroPlanner.def
@@ -13,5 +13,35 @@
        #child: ActionBarPageSales
      ]
    }
    Component DataHolderCapacityAndSaleBudgeFilterItem
    {
      #keys: '[414384.0.814451217]'
      BaseType: 'WebDataHolder'
      Databinding: 'structured[CapacityAndSaleBudgeFilterItem]*'
      Properties:
      [
        Taborder: 40
      ]
    }
    Component DataHolderCapacityAndSaleBudgeFilterMonth
    {
      #keys: '[414384.0.814441070]'
      BaseType: 'WebDataHolder'
      Databinding: 'structured[CapacityAndSaleBudgeFilterMonth]*'
      Properties:
      [
        Taborder: 41
      ]
    }
    Component DataHolderCapacityAndSaleBudgeFilterYear
    {
      #keys: '[414384.0.814441076]'
      BaseType: 'WebDataHolder'
      Databinding: 'structured[CapacityAndSaleBudgeFilterYear]*'
      Properties:
      [
        Taborder: 42
      ]
    }
  ]
}
_Main/UI/MacroPlannerWebApp/Component_Form633/Component_ListPRData#844.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,106 @@
Quintiq file version 2.0
Component ListPRData id:ListPRData_844
{
  #keys: '[414384.0.789711874]'
  BaseType: 'WebList'
  Children:
  [
    Component DataExtractorPRData
    {
      #keys: '[414384.0.789711875]'
      BaseType: 'WebDataExtractor'
      Properties:
      [
        DataType: 'MacroPlan'
        Source: 'MacroPlan'
        Taborder: 0
        Transformation: 'PRData'
      ]
    }
    Component DataSetLevelPRData
    {
      #keys: '[414384.0.789711876]'
      BaseType: 'WebDataSetLevel'
      Children:
      [
        #child: listContextMenuPRData_1
      ]
      Properties:
      [
        Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"MRPCalverNo","title":"MRPCalverNo","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"MRPCalverNo"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ProductID","title":"ProductID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ProductID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"StockingPointID","title":"StockingPointID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"StockingPointID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ProduceRequiredDate","title":"ProduceRequiredDate","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ProduceRequiredDate"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Quantity","title":"Quantity","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Quantity"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"SendStatus","title":"SendStatus","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"SendStatus"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"SendBy","title":"SendBy","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"SendBy"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"SendTIme","title":"SendTIme","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"SendTIme"}}]'
        ContextMenu: 'listContextMenuPRData'
        SortCriteria: 'BusinessType;MRPCalverNo'
        Taborder: 1
      ]
    }
    #child: listActionBarPagePRData_1
  ]
  Properties:
  [
    SelectionCheckboxes: true
    Taborder: 1
  ]
  ResponseDefinitions:
  [
    DelegatedResponseDefinition OnClick id:Responsedef_ListPRData_844_WebMenu_OnClick
    {
      #keys: '[414384.0.789711869]'
      Initiator: 'WebMenu'
      IsInherited: false
      ResponseType: 'OnClick'
      Arguments:
      [
        ResponseDefinitionArgument selection
        {
          #keys: '[2651.0.25404553]'
          Binding: 'this.Selection()'
        }
      ]
    }
    DelegatedResponseDefinition OnClick id:Responsedef_ListPRData_844_WebButton_OnClick
    {
      #keys: '[414384.0.789711868]'
      Initiator: 'WebButton'
      IsInherited: false
      ResponseType: 'OnClick'
      Arguments:
      [
        ResponseDefinitionArgument selection
        {
          #keys: '[6763.0.7953347]'
          Binding: 'this.Selection()'
        }
      ]
    }
    DelegatedResponseDefinition OnClick id:Responsedef_ListPRData_844_WebMenu_OnClick_870
    {
      #keys: '[414384.0.789711867]'
      Initiator: 'WebMenu'
      IsInherited: false
      ResponseType: 'OnClick'
      Arguments:
      [
        ResponseDefinitionArgument checked
        {
          #keys: '[6763.0.7953392]'
          Binding: 'this.Checked()'
        }
      ]
    }
    DelegatedResponseDefinition OnClick id:Responsedef_ListPRData_844_WebButton_OnClick_870
    {
      #keys: '[414384.0.789711866]'
      Initiator: 'WebButton'
      IsInherited: false
      ResponseType: 'OnClick'
      Arguments:
      [
        ResponseDefinitionArgument checked
        {
          #keys: '[6763.0.7953437]'
          Binding: 'this.Checked()'
        }
      ]
    }
  ]
}
_Main/UI/MacroPlannerWebApp/Component_Form633/Component_PanelPRDataButton.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,24 @@
Quintiq file version 2.0
Component PanelPRDataButton
{
  #keys: '[414384.0.798052026]'
  BaseType: 'WebPanel'
  Children:
  [
    Component ButtonSendPR
    {
      #keys: '[414384.0.798052096]'
      BaseType: 'WebButton'
      Properties:
      [
        Image: 'ARROW_RIGHT'
        Label: 'Send checked PRs'
        Taborder: 0
      ]
    }
  ]
  Properties:
  [
    Taborder: 0
  ]
}
_Main/UI/MacroPlannerWebApp/Component_Form633/Component_listActionBarPagePRData#1.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
Component listActionBarPagePRData id:listActionBarPagePRData_1
{
  #keys: '[414384.0.789711881]'
  BaseType: 'listActionBarPage'
  Properties:
  [
    Taborder: 2
  ]
}
_Main/UI/MacroPlannerWebApp/Component_Form633/Component_listContextMenuPRData#1.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,24 @@
Quintiq file version 2.0
Component listContextMenuPRData id:listContextMenuPRData_1
{
  #keys: '[414384.0.789711877]'
  BaseType: 'listContextMenu'
  Children:
  [
    Component MenuCall
    {
      #keys: '[414384.0.796101349]'
      BaseType: 'WebMenu'
      Properties:
      [
        Image: 'MEDIA_PLAY_GREEN'
        Taborder: 3
        Title: 'Send selected PRs'
      ]
    }
  ]
  Properties:
  [
    Taborder: 0
  ]
}
_Main/UI/MacroPlannerWebApp/Component_Form633/Response_DataHolderChecked_OnDataChanged#774.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,18 @@
Quintiq file version 2.0
#parent: DataHolderChecked_187
Response OnDataChanged () id:Response_ListPRData_844_DataHolderChecked_OnDataChanged_774
{
  #keys: '[414384.0.799231412]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebComponent_OnDataChanged'
  QuillAction
  {
    Body:
    [*
      //traverse ( this.Data(), Elements, e ) {
      //  info( "选中的物料号:", e.MatCode() );
      //}
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_Form633/Response_ListPRData_844_MenuCall_OnClick.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,30 @@
Quintiq file version 2.0
#parent: ListPRData_844
Response OnClick (
  structured[PRData] selection
) id:Response_ListPRData_844_MenuCall_OnClick
{
  #keys: '[414384.0.793461398]'
  CanBindMultiple: false
  DefinitionID => /ListPRData_844/Responsedef_ListPRData_844_WebMenu_OnClick
  Initiator: 'MenuCall'
  Precondition:
  [*
    return PRData::CanCall( selection, feedback );
  *]
  QuillAction
  {
    Body:
    [*
      productIdsOver14Days := PRData::ProductIdOver14Days( selection );
      if( productIdsOver14Days <> "" ) {
        if( WebMessageBox::Question( "该批次中的物料号" + productIdsOver14Days + "订单应该在2周后释放,请确认是否现在释放?(已释放的将被跳过)" ) = 0 ) {
          PRData::DoCall( GlobalOTDTable, selection, ApplicationMacroPlanner.GetUserName() );
        }
      } else if( WebMessageBox::Question( "是否发送选中的数据?(已释放的将被跳过)" ) = 0 ) {
        PRData::DoCall( GlobalOTDTable, selection, ApplicationMacroPlanner.GetUserName() );
      }
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_Form633/Response_ListPRData_844_OnUserCheckedChanged#613.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,17 @@
Quintiq file version 2.0
#parent: ListPRData_844
Response OnUserCheckedChanged () id:Response_ListPRData_844_OnUserCheckedChanged_613
{
  #keys: '[414384.0.798051611]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebList_OnUserCheckedChanged'
  GroupServerCalls: true
  QuillAction
  {
    Body:
    [*
      info( "checked 0 PRs" );
      DataHolderChecked.Data().Flush();
    *]
  }
}
_Main/UI/MacroPlannerWebApp/Component_Form633/Response_ListPRData_844_OnUserCheckedChanged.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,19 @@
Quintiq file version 2.0
#parent: ListPRData_844
Response OnUserCheckedChanged (
  structured[PRData] checkeditems
) id:Response_ListPRData_844_OnUserCheckedChanged
{
  #keys: '[414384.0.798051163]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebList_OnUserCheckedChanged'
  GroupServerCalls: true
  QuillAction
  {
    Body:
    [*
      info( "checked " + [String]checkeditems.Size() + " PRs" );
      DataHolderChecked.Data( checkeditems.Copy() );
    *]
  }
}
_Main/UI/MacroPlannerWebApp/Component_Form633/Response_OnCreated.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,22 @@
Quintiq file version 2.0
#parent: #root
Response OnCreated () id:Response_FormPRData_OnCreated
{
  #keys: '[414384.0.793421050]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebComponent_OnCreated'
  GroupServerCalls: true
  QuillAction
  {
    Body:
    [*
      if( not isnull( MacroPlan ) ) {
        MacroPlan.PRData( relflush );
        PRData::TestData( MacroPlan );
      }
      if( not isnull( GlobalOTDTable ) ) {
        GlobalOTDTable.PRHistoryData( relflush );
      }
    *]
  }
}
_Main/UI/MacroPlannerWebApp/Component_Form633/Response_PanelPRDataButton_ButtonSendPR_OnClick.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,27 @@
Quintiq file version 2.0
#parent: PanelPRDataButton/ButtonSendPR
Response OnClick () id:Response_PanelPRDataButton_ButtonSendPR_OnClick
{
  #keys: '[414384.0.799260793]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebButton_OnClick'
  Precondition:
  [*
    return PRData::CanCall( DataHolderChecked.Data(), feedback );
  *]
  QuillAction
  {
    Body:
    [*
      productIdsOver14Days := PRData::ProductIdOver14Days( DataHolderChecked.Data() );
      if( productIdsOver14Days <> "" ) {
        if( WebMessageBox::Question( "该批次中的物料号" + productIdsOver14Days + "订单应该在2周后释放,请确认是否现在释放?(已释放的将被跳过)" ) = 0 ) {
          PRData::DoCall( GlobalOTDTable, DataHolderChecked.Data(), ApplicationMacroPlanner.GetUserName() );
        }
      } else if( WebMessageBox::Question( "是否发送选中的数据?(已释放的将被跳过)" ) = 0 ) {
        PRData::DoCall( GlobalOTDTable, DataHolderChecked.Data(), ApplicationMacroPlanner.GetUserName() );
      }
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_Form633/_ROOT_Component_FormPRData#633.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,27 @@
Quintiq file version 2.0
#root
#parent: MacroPlannerWebApp
OrphanComponent FormPRData
{
  #keys: '[414384.0.789711717]'
  BaseType: 'WebForm'
  Children:
  [
    #child: ListPRData_844
    #child: PanelPRDataButton
    Component DataHolderChecked id:DataHolderChecked_187
    {
      #keys: '[414384.0.799231414]'
      BaseType: 'WebDataHolder'
      Databinding: 'structured[PRData]*'
      Properties:
      [
        Taborder: 2
      ]
    }
  ]
  Properties:
  [
    Title: 'PR'
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudge/Component_ListCapacityAndSaleBudge.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,42 @@
Quintiq file version 2.0
Component ListCapacityAndSaleBudge
{
  #keys: '[414384.0.813011646]'
  BaseType: 'WebList'
  Children:
  [
    Component DataExtractorCapacityAndSaleBudge
    {
      #keys: '[414384.0.813011647]'
      BaseType: 'WebDataExtractor'
      Properties:
      [
        DataType: 'GlobalOTDTable'
        Source: 'GlobalOTDTable'
        Taborder: 0
        Transformation: 'CapacityAndSaleBudge'
      ]
    }
    #child: listActionBarPageCapacityAndSaleBudge
    Component DataSetLevelCapacityAndSaleBudge
    {
      #keys: '[414384.0.813011652]'
      BaseType: 'WebDataSetLevel'
      Children:
      [
        #child: listContextMenuCapacityAndSaleBudge
      ]
      Properties:
      [
        Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Deleted","title":"Deleted","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Deleted"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"OrgCode","title":"OrgCode","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"OrgCode"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"DisplayTechnology","title":"DisplayTechnology","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"DisplayTechnology"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"BusinessType","title":"BusinessType","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"BusinessType"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"LineAndSpec","title":"LineAndSpec","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"LineAndSpec"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ProductCode","title":"ProductCode","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ProductCode"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"PlaceOfProductionOfArray","title":"PlaceOfProductionOfArray","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"PlaceOfProductionOfArray"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"PlaceOfProductionOfEvaporation","title":"PlaceOfProductionOfEvaporation","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"PlaceOfProductionOfEvaporation"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Resolution","title":"Resolution","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Resolution"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ShippingForm","title":"ShippingForm","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ShippingForm"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"NumberOfCut","title":"NumberOfCut","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"NumberOfCut"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"CapacityEquivalent","title":"CapacityEquivalent","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"CapacityEquivalent"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"NumberOfMask","title":"NumberOfMask","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"NumberOfMask"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"CapacityInPCSInMonth1","title":"CapacityInPCSInMonth1","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"CapacityInPCSInMonth1"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"CapacityInPCSInMonth2","title":"CapacityInPCSInMonth2","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"CapacityInPCSInMonth2"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"CapacityInPCSTotal","title":"CapacityInPCSTotal","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"CapacityInPCSTotal"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"CapacityInSheetInMonth1","title":"CapacityInSheetInMonth1","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"CapacityInSheetInMonth1"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"CapacityInSheetInMonth2","title":"CapacityInSheetInMonth2","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"CapacityInSheetInMonth2"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"CapacityInSheetTotal","title":"CapacityInSheetTotal","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"CapacityInSheetTotal"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"SaleAmountInMonth1","title":"SaleAmountInMonth1","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"SaleAmountInMonth1"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"SaleAmountInMonth2","title":"SaleAmountInMonth2","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"SaleAmountInMonth2"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"SaleAmountTotal","title":"SaleAmountTotal","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"SaleAmountTotal"}}]'
        ContextMenu: 'listContextMenuCapacityAndSaleBudge'
        SortCriteria: 'BusinessType;OrgCode;ProductCode'
        Taborder: 2
      ]
    }
  ]
  Properties:
  [
    Taborder: 0
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudge/Component_listActionBarPageCapacityAndSaleBudge.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
Component listActionBarPageCapacityAndSaleBudge
{
  #keys: '[414384.0.813011649]'
  BaseType: 'listActionBarPage'
  Properties:
  [
    Taborder: 1
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudge/Component_listContextMenuCapacityAndSaleBudge.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
Component listContextMenuCapacityAndSaleBudge
{
  #keys: '[414384.0.813011654]'
  BaseType: 'listContextMenu'
  Properties:
  [
    Taborder: 0
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudge/Response_OnCreated.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,16 @@
Quintiq file version 2.0
#parent: #root
Response OnCreated () id:Response_FormCapacityAndSaleBudge_OnCreated
{
  #keys: '[414384.0.813000551]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebComponent_OnCreated'
  GroupServerCalls: true
  QuillAction
  {
    Body:
    [*
      GlobalOTDTable.InitTestData();
    *]
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudge/_ROOT_Component_FormCapacityAndSaleBudge.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,16 @@
Quintiq file version 2.0
#root
#parent: MacroPlannerWebApp
OrphanComponent FormCapacityAndSaleBudge
{
  #keys: '[414384.0.811822656]'
  BaseType: 'WebForm'
  Children:
  [
    #child: ListCapacityAndSaleBudge
  ]
  Properties:
  [
    Title: '产销预算'
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeCompare/Response_ButtonCapacityAndSaleBudgeCompare_OnClick.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,21 @@
Quintiq file version 2.0
#parent: ButtonCapacityAndSaleBudgeCompare
Response OnClick () id:Response_FormCapacityAndSaleBudgeCompare_ButtonCapacityAndSaleBudgeCompare_OnClick
{
  #keys: '[414384.0.818241703]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebButton_OnClick'
  GroupServerCalls: true
  QuillAction
  {
    Body:
    [*
      ScenarioManager.CapacityAndSaleBudgeCompare( DataHolderMacroPlansForScenarioComparison.Data(),
                                                   DataHolderCapacityAndSaleBudgeFilterItem.Data(),
                                                   DataHolderCapacityAndSaleBudgeFilterYear.Data(),
                                                   DataHolderCapacityAndSaleBudgeFilterMonth.Data(),
                                                   MPSync,
                                                   MacroPlan );
    *]
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeCompare/_ROOT_Component_FormCapacityAndSaleBudgeCompare.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,25 @@
Quintiq file version 2.0
#root
#parent: MacroPlannerWebApp
OrphanComponent FormCapacityAndSaleBudgeCompare
{
  #keys: '[414384.0.818241648]'
  BaseType: 'WebForm'
  Children:
  [
    Component ButtonCapacityAndSaleBudgeCompare
    {
      #keys: '[414384.0.818241675]'
      BaseType: 'WebButton'
      Properties:
      [
        Label: '刷新'
        Taborder: 0
      ]
    }
  ]
  Properties:
  [
    Title: '产销预算对比'
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeFilterItem/Component_ListCapacityAndSaleBudgeFilterItem.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,42 @@
Quintiq file version 2.0
Component ListCapacityAndSaleBudgeFilterItem
{
  #keys: '[414384.0.814422398]'
  BaseType: 'WebList'
  Children:
  [
    Component DataExtractorCapacityAndSaleBudgeFilterItem
    {
      #keys: '[414384.0.814422399]'
      BaseType: 'WebDataExtractor'
      Properties:
      [
        DataType: 'ScenarioManager'
        Source: 'ScenarioManager'
        Taborder: 0
        Transformation: 'CapacityAndSaleBudgeFilterItem'
      ]
    }
    #child: listActionBarPageCapacityAndSaleBudgeFilterItem
    Component DataSetLevelCapacityAndSaleBudgeFilterItem
    {
      #keys: '[414384.0.814422404]'
      BaseType: 'WebDataSetLevel'
      Children:
      [
        #child: listContextMenuCapacityAndSaleBudgeFilterItem
      ]
      Properties:
      [
        Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ItemName","title":"ItemName","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ItemName"}}]'
        ContextMenu: 'listContextMenuCapacityAndSaleBudgeFilterItem'
        Taborder: 2
      ]
    }
  ]
  Properties:
  [
    SelectionCheckboxes: true
    Taborder: 0
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeFilterItem/Component_listActionBarPageCapacityAndSaleBudgeFilterItem.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
Component listActionBarPageCapacityAndSaleBudgeFilterItem
{
  #keys: '[414384.0.814422401]'
  BaseType: 'listActionBarPage'
  Properties:
  [
    Taborder: 1
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeFilterItem/Component_listContextMenuCapacityAndSaleBudgeFilterItem.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
Component listContextMenuCapacityAndSaleBudgeFilterItem
{
  #keys: '[414384.0.814422406]'
  BaseType: 'listContextMenu'
  Properties:
  [
    Taborder: 0
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeFilterItem/Response_ListCapacityAndSaleBudgeFilterItem_OnUserCheckedChanged#364.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,18 @@
Quintiq file version 2.0
#parent: ListCapacityAndSaleBudgeFilterItem
Response OnUserCheckedChanged (
  structured[CapacityAndSaleBudgeFilterItem] checkeditems
) id:Response_ListCapacityAndSaleBudgeFilterItem_OnUserCheckedChanged_364
{
  #keys: '[414384.0.814442050]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebList_OnUserCheckedChanged'
  GroupServerCalls: true
  QuillAction
  {
    Body:
    [*
      DataHolderCapacityAndSaleBudgeFilterItem.Data( checkeditems.Copy() );
    *]
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeFilterItem/Response_ListCapacityAndSaleBudgeFilterItem_OnUserCheckedChanged.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,16 @@
Quintiq file version 2.0
#parent: ListCapacityAndSaleBudgeFilterItem
Response OnUserCheckedChanged () id:Response_ListCapacityAndSaleBudgeFilterItem_OnUserCheckedChanged
{
  #keys: '[414384.0.814441975]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebList_OnUserCheckedChanged'
  GroupServerCalls: true
  QuillAction
  {
    Body:
    [*
      DataHolderCapacityAndSaleBudgeFilterItem.Data().Flush();
    *]
  }
}
_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: '[414384.0.813090410]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebComponent_OnCreated'
  GroupServerCalls: true
  QuillAction
  {
    Body:
    [*
      CapacityAndSaleBudgeFilterItem::Initial( ScenarioManager );
    *]
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeFilterItem/_ROOT_Component_FormCapacityAndSaleBudgeFilterItem.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,16 @@
Quintiq file version 2.0
#root
#parent: MacroPlannerWebApp
OrphanComponent FormCapacityAndSaleBudgeFilterItem
{
  #keys: '[414384.0.814110958]'
  BaseType: 'WebForm'
  Children:
  [
    #child: ListCapacityAndSaleBudgeFilterItem
  ]
  Properties:
  [
    Title: '产销预算对比项筛选'
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeFilterMonth/Component_ListCapacityAndSaleBudgeFilterMonth.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,43 @@
Quintiq file version 2.0
Component ListCapacityAndSaleBudgeFilterMonth
{
  #keys: '[414384.0.814421655]'
  BaseType: 'WebList'
  Children:
  [
    Component DataExtractorCapacityAndSaleBudgeFilterMonth
    {
      #keys: '[414384.0.814421656]'
      BaseType: 'WebDataExtractor'
      Properties:
      [
        DataType: 'ScenarioManager'
        Source: 'ScenarioManager'
        Taborder: 0
        Transformation: 'CapacityAndSaleBudgeFilterMonth'
      ]
    }
    #child: listActionBarPageCapacityAndSaleBudgeFilterMonth
    Component DataSetLevelCapacityAndSaleBudgeFilterMonth
    {
      #keys: '[414384.0.814421661]'
      BaseType: 'WebDataSetLevel'
      Children:
      [
        #child: listContextMenuCapacityAndSaleBudgeFilterMonth
      ]
      Properties:
      [
        Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"MonthNo","title":"MonthNo","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"MonthNo"}}]'
        ContextMenu: 'listContextMenuCapacityAndSaleBudgeFilterMonth'
        SortCriteria: 'MonthNo'
        Taborder: 2
      ]
    }
  ]
  Properties:
  [
    SelectionCheckboxes: true
    Taborder: 0
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeFilterMonth/Component_listActionBarPageCapacityAndSaleBudgeFilterMonth.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
Component listActionBarPageCapacityAndSaleBudgeFilterMonth
{
  #keys: '[414384.0.814421658]'
  BaseType: 'listActionBarPage'
  Properties:
  [
    Taborder: 1
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeFilterMonth/Component_listContextMenuCapacityAndSaleBudgeFilterMonth.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
Component listContextMenuCapacityAndSaleBudgeFilterMonth
{
  #keys: '[414384.0.814421663]'
  BaseType: 'listContextMenu'
  Properties:
  [
    Taborder: 0
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeFilterMonth/Response_ListCapacityAndSaleBudgeFilterMonth_OnUserCheckedChanged#608.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,18 @@
Quintiq file version 2.0
#parent: ListCapacityAndSaleBudgeFilterMonth
Response OnUserCheckedChanged (
  structured[CapacityAndSaleBudgeFilterMonth] checkeditems
) id:Response_ListCapacityAndSaleBudgeFilterMonth_OnUserCheckedChanged_608
{
  #keys: '[414384.0.814441861]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebList_OnUserCheckedChanged'
  GroupServerCalls: true
  QuillAction
  {
    Body:
    [*
      DataHolderCapacityAndSaleBudgeFilterMonth.Data( checkeditems.Copy() );
    *]
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeFilterMonth/Response_ListCapacityAndSaleBudgeFilterMonth_OnUserCheckedChanged.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,16 @@
Quintiq file version 2.0
#parent: ListCapacityAndSaleBudgeFilterMonth
Response OnUserCheckedChanged () id:Response_ListCapacityAndSaleBudgeFilterMonth_OnUserCheckedChanged
{
  #keys: '[414384.0.814441723]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebList_OnUserCheckedChanged'
  GroupServerCalls: true
  QuillAction
  {
    Body:
    [*
      DataHolderCapacityAndSaleBudgeFilterMonth.Data().Flush();
    *]
  }
}
_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: '[414384.0.813021080]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebComponent_OnCreated'
  GroupServerCalls: true
  QuillAction
  {
    Body:
    [*
      CapacityAndSaleBudgeFilterMonth::Initial( ScenarioManager );
    *]
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeFilterMonth/_ROOT_Component_FormCapacityAndSaleBudgeFilterMonth.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,16 @@
Quintiq file version 2.0
#root
#parent: MacroPlannerWebApp
OrphanComponent FormCapacityAndSaleBudgeFilterMonth
{
  #keys: '[414384.0.814110924]'
  BaseType: 'WebForm'
  Children:
  [
    #child: ListCapacityAndSaleBudgeFilterMonth
  ]
  Properties:
  [
    Title: '产销预算对比月份筛选'
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeFilterYear/Component_ListCapacityAndSaleBudgeFilterYear.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,43 @@
Quintiq file version 2.0
Component ListCapacityAndSaleBudgeFilterYear
{
  #keys: '[414384.0.814421895]'
  BaseType: 'WebList'
  Children:
  [
    Component DataExtractorCapacityAndSaleBudgeFilterYear
    {
      #keys: '[414384.0.814421896]'
      BaseType: 'WebDataExtractor'
      Properties:
      [
        DataType: 'ScenarioManager'
        Source: 'ScenarioManager'
        Taborder: 0
        Transformation: 'CapacityAndSaleBudgeFilterYear'
      ]
    }
    #child: listActionBarPageCapacityAndSaleBudgeFilterYear
    Component DataSetLevelCapacityAndSaleBudgeFilterYear
    {
      #keys: '[414384.0.814421901]'
      BaseType: 'WebDataSetLevel'
      Children:
      [
        #child: listContextMenuCapacityAndSaleBudgeFilterYear
      ]
      Properties:
      [
        Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"YearNo","title":"YearNo","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"YearNo"}}]'
        ContextMenu: 'listContextMenuCapacityAndSaleBudgeFilterYear'
        SortCriteria: 'YearNo'
        Taborder: 2
      ]
    }
  ]
  Properties:
  [
    SelectionCheckboxes: true
    Taborder: 0
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeFilterYear/Component_listActionBarPageCapacityAndSaleBudgeFilterYear.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
Component listActionBarPageCapacityAndSaleBudgeFilterYear
{
  #keys: '[414384.0.814421898]'
  BaseType: 'listActionBarPage'
  Properties:
  [
    Taborder: 1
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeFilterYear/Component_listContextMenuCapacityAndSaleBudgeFilterYear.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
Component listContextMenuCapacityAndSaleBudgeFilterYear
{
  #keys: '[414384.0.814421903]'
  BaseType: 'listContextMenu'
  Properties:
  [
    Taborder: 0
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeFilterYear/Response_ListCapacityAndSaleBudgeFilterYear_OnUserCheckedChanged#316.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,18 @@
Quintiq file version 2.0
#parent: ListCapacityAndSaleBudgeFilterYear
Response OnUserCheckedChanged (
  structured[CapacityAndSaleBudgeFilterYear] checkeditems
) id:Response_ListCapacityAndSaleBudgeFilterYear_OnUserCheckedChanged_316
{
  #keys: '[414384.0.814441614]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebList_OnUserCheckedChanged'
  GroupServerCalls: true
  QuillAction
  {
    Body:
    [*
      DataHolderCapacityAndSaleBudgeFilterYear.Data( checkeditems.Copy() );
    *]
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeFilterYear/Response_ListCapacityAndSaleBudgeFilterYear_OnUserCheckedChanged.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,16 @@
Quintiq file version 2.0
#parent: ListCapacityAndSaleBudgeFilterYear
Response OnUserCheckedChanged () id:Response_ListCapacityAndSaleBudgeFilterYear_OnUserCheckedChanged
{
  #keys: '[414384.0.814441542]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebList_OnUserCheckedChanged'
  GroupServerCalls: true
  QuillAction
  {
    Body:
    [*
      DataHolderCapacityAndSaleBudgeFilterYear.Data().Flush();
    *]
  }
}
_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: '[414384.0.814422656]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebComponent_OnCreated'
  GroupServerCalls: true
  QuillAction
  {
    Body:
    [*
      CapacityAndSaleBudgeFilterYear::Initial( ScenarioManager );
    *]
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAndSaleBudgeFilterYear/_ROOT_Component_FormCapacityAndSaleBudgeFilterYear.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,16 @@
Quintiq file version 2.0
#root
#parent: MacroPlannerWebApp
OrphanComponent FormCapacityAndSaleBudgeFilterYear
{
  #keys: '[414384.0.814110885]'
  BaseType: 'WebForm'
  Children:
  [
    #child: ListCapacityAndSaleBudgeFilterYear
  ]
  Properties:
  [
    Title: '产销预算对比年份筛选'
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormPRHistoryData/Component_ListPRHistoryData#844.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,106 @@
Quintiq file version 2.0
Component ListPRHistoryData id:ListPRHistoryData_844
{
  #keys: '[414384.0.789711912]'
  BaseType: 'WebList'
  Children:
  [
    Component DataExtractorPRHistoryData
    {
      #keys: '[414384.0.789711913]'
      BaseType: 'WebDataExtractor'
      Properties:
      [
        DataType: 'GlobalOTDTable'
        Source: 'GlobalOTDTable'
        Taborder: 0
        Transformation: 'PRHistoryData'
      ]
    }
    Component DataSetLevelPRHistoryData
    {
      #keys: '[414384.0.789711914]'
      BaseType: 'WebDataSetLevel'
      Children:
      [
        #child: listContextMenuPRHistoryData_1
      ]
      Properties:
      [
        Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"BusinessType","title":"BusinessType","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"BusinessType"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"MRPCalverNo","title":"MRPCalverNo","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"MRPCalverNo"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"OrganCode","title":"OrganCode","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"OrganCode"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ProductID","title":"ProductID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ProductID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"StockingPointID","title":"StockingPointID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"StockingPointID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Quantity","title":"Quantity","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Quantity"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"SendStatus","title":"SendStatus","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"SendStatus"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ReleaseBy","title":"ReleaseBy","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ReleaseBy"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"SendDate","title":"SendDate","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"SendDate"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ReceiveStatus","title":"ReceiveStatus","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ReceiveStatus"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ReceiveTime","title":"ReceiveTime","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ReceiveTime"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ReceiveError","title":"ReceiveError","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ReceiveError"}}]'
        ContextMenu: 'listContextMenuPRHistoryData'
        SortCriteria: 'BusinessType;MRPCalverNo'
        Taborder: 1
      ]
    }
    #child: listActionBarPagePRHistoryData_1
  ]
  Properties:
  [
    SelectionCheckboxes: true
    Taborder: 1
  ]
  ResponseDefinitions:
  [
    DelegatedResponseDefinition OnClick id:Responsedef_ListPRHistoryData_844_WebMenu_OnClick
    {
      #keys: '[414384.0.789711907]'
      Initiator: 'WebMenu'
      IsInherited: false
      ResponseType: 'OnClick'
      Arguments:
      [
        ResponseDefinitionArgument selection
        {
          #keys: '[2651.0.25404553]'
          Binding: 'this.Selection()'
        }
      ]
    }
    DelegatedResponseDefinition OnClick id:Responsedef_ListPRHistoryData_844_WebButton_OnClick
    {
      #keys: '[414384.0.789711906]'
      Initiator: 'WebButton'
      IsInherited: false
      ResponseType: 'OnClick'
      Arguments:
      [
        ResponseDefinitionArgument selection
        {
          #keys: '[6763.0.7953347]'
          Binding: 'this.Selection()'
        }
      ]
    }
    DelegatedResponseDefinition OnClick id:Responsedef_ListPRHistoryData_844_WebMenu_OnClick_799
    {
      #keys: '[414384.0.789711905]'
      Initiator: 'WebMenu'
      IsInherited: false
      ResponseType: 'OnClick'
      Arguments:
      [
        ResponseDefinitionArgument checked
        {
          #keys: '[6763.0.7953392]'
          Binding: 'this.Checked()'
        }
      ]
    }
    DelegatedResponseDefinition OnClick id:Responsedef_ListPRHistoryData_844_WebButton_OnClick_801
    {
      #keys: '[414384.0.789711904]'
      Initiator: 'WebButton'
      IsInherited: false
      ResponseType: 'OnClick'
      Arguments:
      [
        ResponseDefinitionArgument checked
        {
          #keys: '[6763.0.7953437]'
          Binding: 'this.Checked()'
        }
      ]
    }
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormPRHistoryData/Component_PanelPRHistoryButton.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,24 @@
Quintiq file version 2.0
Component PanelPRHistoryButton
{
  #keys: '[414384.0.799483156]'
  BaseType: 'WebPanel'
  Children:
  [
    Component ButtonResendPRA
    {
      #keys: '[414384.0.799483157]'
      BaseType: 'WebButton'
      Properties:
      [
        Image: 'ARROW_RIGHT'
        Label: 'Resend checked PRs'
        Taborder: 0
      ]
    }
  ]
  Properties:
  [
    Taborder: 0
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormPRHistoryData/Component_listActionBarPagePRHistoryData#1.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
Component listActionBarPagePRHistoryData id:listActionBarPagePRHistoryData_1
{
  #keys: '[414384.0.789711919]'
  BaseType: 'listActionBarPage'
  Properties:
  [
    Taborder: 2
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormPRHistoryData/Component_listContextMenuPRHistoryData#1.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,24 @@
Quintiq file version 2.0
Component listContextMenuPRHistoryData id:listContextMenuPRHistoryData_1
{
  #keys: '[414384.0.789711915]'
  BaseType: 'listContextMenu'
  Children:
  [
    Component MenuCall id:MenuCall_94
    {
      #keys: '[414384.0.793461623]'
      BaseType: 'WebMenu'
      Properties:
      [
        Image: 'MEDIA_PLAY_GREEN'
        Taborder: 3
        Title: 'Call'
      ]
    }
  ]
  Properties:
  [
    Taborder: 0
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormPRHistoryData/Response_DataHolderChecked_OnDataChanged.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,18 @@
Quintiq file version 2.0
#parent: DataHolderChecked
Response OnDataChanged () id:Response_FormPRData_DataHolderChecked_OnDataChanged
{
  #keys: '[414384.0.799483137]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebComponent_OnDataChanged'
  QuillAction
  {
    Body:
    [*
      //traverse ( this.Data(), Elements, e ) {
      //  info( "选中的物料号:", e.MatCode() );
      //}
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormPRHistoryData/Response_ListPRHistoryData_844_MenuCall_OnClick.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,26 @@
Quintiq file version 2.0
#parent: ListPRHistoryData_844
Response OnClick (
  structured[PRHistoryData] selection
) id:Response_ListPRHistoryData_844_MenuCall_OnClick
{
  #keys: '[414384.0.793461657]'
  CanBindMultiple: false
  DefinitionID => /ListPRHistoryData_844/Responsedef_ListPRHistoryData_844_WebMenu_OnClick
  Initiator: 'MenuCall'
  QuillAction
  {
    Body:
    [*
      productIdsOver14Days := PRHistoryData::ProductIdOver14Days( selection );
      if( productIdsOver14Days <> "" ) {
        if( WebMessageBox::Question( "该批次中的物料号" + productIdsOver14Days + "订单应该在2周后释放,请确认是否重新释放?" ) = 0 ) {
          PRHistoryData::ReCall( selection, ApplicationMacroPlanner.GetUserName() );
        }
      } else if( WebMessageBox::Question( "是否重新释放选中的内容?" ) = 0 ) {
        PRHistoryData::ReCall( selection, ApplicationMacroPlanner.GetUserName() );
      }
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormPRHistoryData/Response_ListPRHistoryData_844_OnUserCheckedChanged#635.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,17 @@
Quintiq file version 2.0
#parent: ListPRHistoryData_844
Response OnUserCheckedChanged () id:Response_ListPRHistoryData_844_OnUserCheckedChanged_635
{
  #keys: '[414384.0.799575492]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebList_OnUserCheckedChanged'
  GroupServerCalls: true
  QuillAction
  {
    Body:
    [*
      info( "checked 0 PRs" );
      DataHolderChecked.Data().Flush();
    *]
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormPRHistoryData/Response_ListPRHistoryData_844_OnUserCheckedChanged.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,19 @@
Quintiq file version 2.0
#parent: ListPRHistoryData_844
Response OnUserCheckedChanged (
  structured[PRHistoryData] checkeditems
) id:Response_ListPRHistoryData_844_OnUserCheckedChanged
{
  #keys: '[414384.0.799483356]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebList_OnUserCheckedChanged'
  GroupServerCalls: true
  QuillAction
  {
    Body:
    [*
      info( "checked " + [String]checkeditems.Size() + " PRs" );
      DataHolderChecked.Data( checkeditems.Copy() );
    *]
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormPRHistoryData/Response_PanelPRHistoryButton_ButtonResendPRA_OnClick.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,28 @@
Quintiq file version 2.0
#parent: PanelPRHistoryButton/ButtonResendPRA
Response OnClick () id:Response_PanelPRHistoryButton_ButtonResendPRA_OnClick
{
  #keys: '[414384.0.799483155]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebButton_OnClick'
  Precondition:
  [*
    info( DataHolderChecked.Data().Size() );
    return DataHolderChecked.Data().Size() > 0;
  *]
  QuillAction
  {
    Body:
    [*
      productIdsOver14Days := PRHistoryData::ProductIdOver14Days( DataHolderChecked.Data() );
      if( productIdsOver14Days <> "" ) {
        if( WebMessageBox::Question( "该批次中的物料号" + productIdsOver14Days + "订单应该在2周后释放,请确认是否重新释放?" ) = 0 ) {
          PRHistoryData::ReCall( DataHolderChecked.Data(), ApplicationMacroPlanner.GetUserName() );
        }
      } else if( WebMessageBox::Question( "是否重新释放选中的内容?" ) = 0 ) {
        PRHistoryData::ReCall( DataHolderChecked.Data(), ApplicationMacroPlanner.GetUserName() );
      }
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormPRHistoryData/_ROOT_Component_FormPRHistoryData.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,27 @@
Quintiq file version 2.0
#root
#parent: MacroPlannerWebApp
OrphanComponent FormPRHistoryData
{
  #keys: '[414384.0.789711755]'
  BaseType: 'WebForm'
  Children:
  [
    #child: ListPRHistoryData_844
    #child: PanelPRHistoryButton
    Component DataHolderChecked
    {
      #keys: '[414384.0.799483139]'
      BaseType: 'WebDataHolder'
      Databinding: 'structured[PRHistoryData]*'
      Properties:
      [
        Taborder: 2
      ]
    }
  ]
  Properties:
  [
    Title: 'PR History'
  ]
}
_var/_Main/ProjSettings/MacroPlannerWebApp/Views/Capacity___sale_budge.vw
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,205 @@
Quintiq file version 2.0
{
  viewcontents
  {
    forms
    {
      form_legacy_1
      {
        title: 'Scenario manager'
        shown: true
        componentID: 'FormScenarioManager'
        layout
        {
          mode: 'open'
          rowPosition: 1
          rowSpan: 8
          columnPosition: 1
          columnSpan: 5
        }
        components
        {
          FormScenarioManager_ListScenario
          {
          }
          FormScenarioManager_DataSetLevelScenario
          {
            groupDepth: -1
            column_All_constraints
            {
              columnId: 'All constraints'
              dataPath: 'All constraints'
              dataType: 'string'
              title: 'All constraints'
              index: 0
              subtotals: ''
              width: 90
            }
            column_Name
            {
              columnId: 'Name'
              dataPath: 'Name'
              dataType: 'string'
              title: '名称'
              index: 1
              subtotals: ''
              width: 197
            }
            column_ChangedBy
            {
              columnId: 'ChangedBy'
              dataPath: 'ChangedBy'
              dataType: 'string'
              title: 'Changed by'
              index: 2
              subtotals: ''
              width: 91
            }
            column_ChangedOn
            {
              columnId: 'ChangedOn'
              dataPath: 'ChangedOn'
              dataType: 'datetime'
              title: 'Changed on'
              index: 3
              subtotals: ''
              width: 99
            }
            column_StorageMode
            {
              columnId: 'StorageMode'
              dataPath: 'StorageMode'
              dataType: 'string'
              title: 'StorageMode'
              index: 4
              subtotals: ''
              width: 40
            }
          }
        }
      }
      form_FormOptimizerPuzzles
      {
        title: 'Optimizer Puzzles'
        shown: false
        componentID: 'FormOptimizerPuzzles'
        layout
        {
          mode: 'dockright'
          index: 0
        }
        components
        {
          FormOptimizerPuzzles_ListOptimizerPuzzles
          {
          }
          FormOptimizerPuzzles_DataSetLevelOptimizerPuzzles
          {
            groupDepth: -1
            column_All_constraints
            {
              columnId: 'All constraints'
              dataPath: 'All constraints'
              dataType: 'string'
              title: 'All constraints'
              index: 0
              subtotals: ''
              width: 32
            }
            column_Name
            {
              columnId: 'Name'
              dataPath: 'Name'
              dataType: 'string'
              title: '名称'
              index: 1
              subtotals: ''
              width: 109
            }
            column_Description
            {
              columnId: 'Description'
              dataPath: 'Description'
              dataType: 'string'
              title: '描述'
              index: 2
              subtotals: ''
              width: 207
            }
          }
        }
      }
      form_FormKPI
      {
        title: 'KPI Dashboard'
        shown: true
        componentID: 'FormKPI'
        layout
        {
          mode: 'dockright'
          index: 1
        }
        components
        {
          FormKPI_PanelKPI
          {
            sizeRatio: 1
            activeChild: 'PanelKPISelection'
          }
          FormKPI_PanelKPIDashboard
          {
            sizeRatio: 1
          }
          FormKPI_PanelKPISelection
          {
            sizeRatio: 1
          }
          FormKPI_ListKPISelection
          {
            QuillViewData
            {
              Food_KPISetting: 'Cost of sales;Fulfillment;Fulfillment target;Inventory holding cost;Labor cost;Margin;Safety stock;Sales;Sourcing cost;Total CO2 emission;Transportation cost;Volume'
            }
          }
          FormKPI_DataSetLevelKPISelection
          {
            groupDepth: -1
            column_All_constraints
            {
              columnId: 'All constraints'
              dataPath: 'All constraints'
              dataType: 'string'
              title: 'All constraints'
              index: 0
              subtotals: ''
              width: 32
            }
            column_Name
            {
              columnId: 'Name'
              dataPath: 'Name'
              dataType: 'string'
              title: '名称'
              index: 1
              subtotals: ''
              width: 200
            }
          }
        }
      }
    }
    userconfigurableinformation
    {
    }
    image: 'CHART_HI_LO'
    page: 'ActionBarPageScenarioComparison'
    group: ''
    index: 0
    description: ''
  }
  formatversion: 2
  id: 'Capacity___sale_budge'
  name: 'Capacity & sale budge'
  isglobal: false
  isroot: true
}