xiaoding721
2024-11-13 886d1f4f63de458a51f40d5966c7180ee64e0d22
重构计划汇总报表和全年计划报表
已重命名29个文件
已复制1个文件
已添加62个文件
已修改20个文件
已删除7个文件
1688 ■■■■ 文件已修改
_Main/BL/Relations/Relation_ArchiveCell_ArchiveColumn_ArchiveColumn_ArchiveCell.qbl 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Relations/Relation_ArchiveCell_ArchiveRow_ArchiveRow_ArchiveCell.qbl 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Relations/Relation_ArchiveTable_ArchiveColumn_ArchiveColumn_ArchiveTable.qbl 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Relations/Relation_ArchiveTable_ArchiveRow_ArchiveRow_ArchiveTable.qbl 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Relations/Relation_ArchiveTable_Archive_Archive_ArchiveTable.qbl 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_AcTable/Attribute_CreateTime.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_AcTable/Attribute_MacroPlanMDSID.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_AcTable/Attribute_MacroPlanName.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_AcTable/Attribute_Name.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_AcTable/Attribute_RowIndexCache.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_AcTable/DefaultValue_Name.qbl 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_AcTable/Method_GetRowIndexCache.qbl 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_AcTable/_ROOT_Type_ArchiveTable.qbl 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Cell0/_ROOT_Type_ArchiveCell#0.qbl 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Cell_AnnualPlanReport0/Attribute_NewSupply.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Cell_AnnualPlanReport0/StaticMethod_AsyncCreateTables.qbl 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Cell_AnnualPlanReport0/StaticMethod_Create.qbl 53 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Cell_AnnualPlanReport0/StaticMethod_CreateFullTable.qbl 179 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Cell_AnnualPlanReport0/StaticMethod_GetTableName.qbl 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Cell_AnnualPlanReport0/_ROOT_Type_ArchiveCell_AnnualPlanReport#0.qbl 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Cell_ScheduleSummary0/Attribute_Capacity.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Cell_ScheduleSummary0/Attribute_IsFristWeekData.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Cell_ScheduleSummary0/Attribute_Output.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Cell_ScheduleSummary0/Attribute_ShiftPattern.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Cell_ScheduleSummary0/Attribute_WorkingDay.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Cell_ScheduleSummary0/DefaultValue_ShiftPattern.qbl 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Cell_ScheduleSummary0/StaticMethod_AsyncCreateTables.qbl 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Cell_ScheduleSummary0/StaticMethod_Create.qbl 88 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Cell_ScheduleSummary0/StaticMethod_CreateFullTable.qbl 155 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Cell_ScheduleSummary0/StaticMethod_ExportOutputTemplate.qbl 36 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Cell_ScheduleSummary0/StaticMethod_GetTableName.qbl 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Cell_ScheduleSummary0/StaticMethod_ImportOutput.qbl 68 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Cell_ScheduleSummary0/_ROOT_Type_ArchiveCell_ScheduleSummary#0.qbl 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Column0/Attribute_CustomDate.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Column0/Attribute_CustomIndex.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Column0/Attribute_Date.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Column0/Attribute_Index.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Column0/Attribute_IsAttrbuteColumn.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Column0/Attribute_Name.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Column0/DefaultValue_CustomIndex.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Column0/DefaultValue_Name.qbl 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Column0/Function_CalcDate.qbl 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Column0/Function_CalcIndex.qbl 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Column0/_ROOT_Type_ArchiveColumn#0.qbl 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Row0/Attribute_CustomName.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Row0/Attribute_Index.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Row0/Attribute_Name.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Row0/Attribute_ProductID.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Row0/Attribute_ProductionLine.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Row0/Attribute_Remark.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Row0/Attribute_StockingPointID.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Row0/DefaultValue_CustomName.qbl 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Row0/DefaultValue_Name.qbl 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Row0/DefaultValue_ProductID.qbl 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Row0/DefaultValue_ProductionLine.qbl 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Row0/DefaultValue_Remark.qbl 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Row0/DefaultValue_StockingPointID.qbl 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Row0/Function_CalcName.qbl 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MP_Row0/_ROOT_Type_ArchiveRow#0.qbl 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_ListGenerations#916.def 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_ListMQBMLB#865.def 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_ListPowers#509.def 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_MatrixEditor.def 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_listActionBarPage245#1.def 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_listActionBarPage519#1.def 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_listActionBarPage963#1.def 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_listContextMenu319#1.def 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_listContextMenu623#1.def 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_listContextMenu687#1.def 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_matrixEditorActionBarPageDemandComparison.def 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_matrixeditorContextMenuDemandComparison.def 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_pAnnualPlanReport#921.def 34 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_pExport#94.def 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_pGeneration#523.def 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_pMQBMLB#567.def 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_pMainLeft.def 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_pMainPanel.def 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_pMainRight.def 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_pPower#266.def 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_pProductAttributeFilter#565.def 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_pProductAttributeFilter#791.def 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_pRibbon.def 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_pRibbonDown.def 57 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_pRibbonUp.def 18 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_ListGenerations_916_OnClick.def 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_ListMQBMLB_865_OnClick.def 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_ListMQBMLB_925_OnClick.def 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_ListPowers_509_OnClick.def 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pAnnualPlanReport_921_dhAnnualPlanTable_OnDataChanged.def 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pAnnualPlanReport_921_dhCheckedEntitys_OnDataChanged.def 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pAnnualPlanReport_921_dhCheckedProducts_OnDataChanged.def 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pAnnualPlanReport_921_dhFinelEntitys_OnCreated.def 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pAnnualPlanReport_921_dhFinelProducts_OnCreated.def 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pExport_94_bExport_OnClick.def 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pExport_94_dhXMLDataListener_OnDataChanged.def 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pGeneration_523_dhCheckGenerations_OnDataChanged.def 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pGeneration_523_dhGenerations_OnCreated.def 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pMQBMLB_567_dhCheckMQBMLB_OnDataChanged.def 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pMQBMLB_567_dhMQBMLB_OnCreated.def 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pPower_266_dhCheckPowers_OnDataChanged.def 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pPower_266_dhPowers_OnCreated.def 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pRibbonDown_dhAsyncFlag_OnDataChanged.def 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pRibbonDown_dhEndDate_OnCreated.def 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pRibbonDown_dhStartDate_OnCreated.def 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pRibbonDown_dsEndDate_OnChanged.def 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pRibbonDown_dsStartDate_OnChanged.def 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pRibbonUp_bCreateBaseData_OnClick#480.def 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pRibbonUp_bCreateBaseData_OnClick.def 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pRibbonUp_bCreateFullTable_OnClick#393.def 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pRibbonUp_bCreateFullTable_OnClick.def 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pRibbonUp_dhTimeUnit_OnCreated.def 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pRibbonUp_rbgTimeUnit_OnUserChanged.def 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormDemandComparison/Component_MatrixEditor#298.def 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Component_pRibbonDown#478.def 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Component_pScheduleSummary.def 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Response_pRibbonDown_478_dhAsyncFlag_OnDataChanged.def 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Response_pRibbonUp_88_bCreateBaseData_OnClick#88.def 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Response_pRibbonUp_88_bCreateFullTable_OnClick#71.def 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Response_pScheduleSummary_dhScheduleSummaryTable_OnCreated.def 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Relations/Relation_ArchiveCell_ArchiveColumn_ArchiveColumn_ArchiveCell.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
Quintiq file version 2.0
#parent: #root
Relation ArchiveCell_ArchiveColumn_ArchiveColumn_ArchiveCell
{
  #keys: '1[414996.1.219180210]'
  DefaultRelationStrategy
  {
  }
  RelationSide.LeftSide ArchiveColumn
  {
    #keys: '3[414996.1.219180212][414996.1.219180211][414996.1.219180213]'
    Cardinality: '0to1'
    ObjectDefinition: ArchiveCell
    OwningSide: 'Reference'
  }
  RelationSide.RightSide ArchiveCell
  {
    #keys: '3[414996.1.219180215][414996.1.219180214][414996.1.219180216]'
    Cardinality: '1toN'
    ObjectDefinition: ArchiveColumn
    OwningSide: 'Reference'
  }
}
_Main/BL/Relations/Relation_ArchiveCell_ArchiveRow_ArchiveRow_ArchiveCell.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
Quintiq file version 2.0
#parent: #root
Relation ArchiveCell_ArchiveRow_ArchiveRow_ArchiveCell
{
  #keys: '1[414996.1.219180226]'
  DefaultRelationStrategy
  {
  }
  RelationSide.LeftSide ArchiveRow
  {
    #keys: '3[414996.1.219180228][414996.1.219180227][414996.1.219180229]'
    Cardinality: '0to1'
    ObjectDefinition: ArchiveCell
    OwningSide: 'Reference'
  }
  RelationSide.RightSide ArchiveCell
  {
    #keys: '3[414996.1.219180231][414996.1.219180230][414996.1.219180232]'
    Cardinality: '1toN'
    ObjectDefinition: ArchiveRow
    OwningSide: 'Owned'
  }
}
_Main/BL/Relations/Relation_ArchiveTable_ArchiveColumn_ArchiveColumn_ArchiveTable.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
Quintiq file version 2.0
#parent: #root
Relation ArchiveTable_ArchiveColumn_ArchiveColumn_ArchiveTable
{
  #keys: '1[414996.1.219180239]'
  DefaultRelationStrategy
  {
  }
  RelationSide.LeftSide ArchiveColumn
  {
    #keys: '3[414996.1.219180241][414996.1.219180240][414996.1.219180242]'
    Cardinality: '1toN'
    ObjectDefinition: ArchiveTable
    OwningSide: 'Owned'
  }
  RelationSide.RightSide ArchiveTable
  {
    #keys: '3[414996.1.219180244][414996.1.219180243][414996.1.219180245]'
    Cardinality: '0to1'
    ObjectDefinition: ArchiveColumn
    OwningSide: 'Reference'
  }
}
_Main/BL/Relations/Relation_ArchiveTable_ArchiveRow_ArchiveRow_ArchiveTable.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
Quintiq file version 2.0
#parent: #root
Relation ArchiveTable_ArchiveRow_ArchiveRow_ArchiveTable
{
  #keys: '1[414996.1.219180252]'
  DefaultRelationStrategy
  {
  }
  RelationSide.LeftSide ArchiveRow
  {
    #keys: '3[414996.1.219180254][414996.1.219180253][414996.1.219180255]'
    Cardinality: '1toN'
    ObjectDefinition: ArchiveTable
    OwningSide: 'Owned'
  }
  RelationSide.RightSide ArchiveTable
  {
    #keys: '3[414996.1.219180257][414996.1.219180256][414996.1.219180258]'
    Cardinality: '0to1'
    ObjectDefinition: ArchiveRow
    OwningSide: 'Reference'
  }
}
_Main/BL/Relations/Relation_ArchiveTable_Archive_Archive_ArchiveTable.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
Quintiq file version 2.0
#parent: #root
Relation ArchiveTable_Archive_Archive_ArchiveTable
{
  #keys: '1[414996.1.219180265]'
  DefaultRelationStrategy
  {
  }
  RelationSide.LeftSide Archive
  {
    #keys: '3[414996.1.219180267][414996.1.219180266][414996.1.219180268]'
    Cardinality: '0to1'
    ObjectDefinition: ArchiveTable
    OwningSide: 'Reference'
  }
  RelationSide.RightSide ArchiveTable
  {
    #keys: '3[414996.1.219180270][414996.1.219180269][414996.1.219180271]'
    Cardinality: '1toN'
    ObjectDefinition: Archive
    OwningSide: 'Owned'
  }
}
_Main/BL/Type_AcTable/Attribute_CreateTime.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute CreateTime
{
  #keys: '3[414996.1.219180095][414996.1.219180094][414996.1.219180096]'
  ValueType: DateTime
}
_Main/BL/Type_AcTable/Attribute_MacroPlanMDSID.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute MacroPlanMDSID
{
  #keys: '3[414996.1.219180289][414996.1.219180288][414996.1.219180290]'
  ValueType: Key
}
_Main/BL/Type_AcTable/Attribute_MacroPlanName.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute MacroPlanName
{
  #keys: '3[414996.1.219180279][414996.1.219180278][414996.1.219180280]'
  ValueType: String
}
_Main/BL/Type_AcTable/Attribute_Name.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute Name
{
  #keys: '3[414996.1.219180098][414996.1.219180097][414996.1.219180099]'
  ValueType: String
}
_Main/BL/Type_AcTable/Attribute_RowIndexCache.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute RowIndexCache
{
  #keys: '3[414996.1.219180101][414996.1.219180100][414996.1.219180102]'
  ValueType: Number
}
_Main/BL/Type_AcTable/DefaultValue_Name.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,6 @@
Quintiq file version 2.0
#parent: #root
DefaultValue
{
  TargetAttribute: Name
}
_Main/BL/Type_AcTable/Method_GetRowIndexCache.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,12 @@
Quintiq file version 2.0
#parent: #root
Method GetRowIndexCache () declarative as Number
{
  TextBody:
  [*
    // rislai Jun-20-2024 (created)
    this.RowIndexCache( this.RowIndexCache() + 1 );
    return this.RowIndexCache();
  *]
}
_Main/BL/Type_AcTable/_ROOT_Type_ArchiveTable.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
#root
#parent: #DomainModel
Type ArchiveTable
{
  #keys: '5[414996.1.219180092][414996.1.219180090][0.0.0][414996.1.219180091][414996.1.219180093]'
  BaseType: Object
  OnCreate: 'this.CreateTime( DateTime::Now() );'
  StructuredName: 'ArchiveTables'
}
_Main/BL/Type_MP_Cell0/_ROOT_Type_ArchiveCell#0.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,9 @@
Quintiq file version 2.0
#root
#parent: #DomainModel
Type ArchiveCell
{
  #keys: '5[414996.1.219180181][414996.1.219180179][0.0.0][414996.1.219180180][414996.1.219180182]'
  BaseType: Object
  StructuredName: 'ArchiveCells'
}
_Main/BL/Type_MP_Cell_AnnualPlanReport0/Attribute_NewSupply.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute NewSupply
{
  #keys: '3[414996.1.219180175][414996.1.219180174][414996.1.219180176]'
  ValueType: Real
}
_Main/BL/Type_MP_Cell_AnnualPlanReport0/StaticMethod_AsyncCreateTables.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,16 @@
Quintiq file version 2.0
#parent: #root
StaticMethod AsyncCreateTables (
  const Keys macroPlanMDSIDs,
  Archive archive
)
{
  TextBody:
  [*
    // Akari Nov-11-2024 (created)
    traverse( macroPlanMDSIDs,Elements,mdsid ){
      streamMacroPlan := LocalTool::LoadMacroPlan( mdsid );
      streamMacroPlan -> ArchiveCell_AnnualPlanReport::Create( archive );
    }
  *]
}
_Main/BL/Type_MP_Cell_AnnualPlanReport0/StaticMethod_Create.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,53 @@
Quintiq file version 2.0
#parent: #root
StaticMethod Create (
  const MacroPlan macroPlan,
  Archive archive
) as ArchiveTable
{
  TextBody:
  [*
    // rislai Aug-6-2024 (created)
    traverse( archive,ArchiveTable,table,table.Name() = ArchiveCell_AnnualPlanReport::GetTableName() and table.MacroPlanMDSID() = macroPlan.MDSID() ){
      table.Delete();
    }
    table := archive.ArchiveTable( relnew,Name := ArchiveCell_AnnualPlanReport::GetTableName(),MacroPlanMDSID := macroPlan.MDSID(),MacroPlanName := macroPlan.MDSMacroPlan().Description());
    startDate := macroPlan.StartOfPlanning().Date();
    endDate := startDate.StartOfNextWeek();
    columns := construct( ArchiveColumns );
    columnIndexTree := NamedValueTree::Create();
    for( i := startDate;i < endDate; i := i + 1){
      column := table.ArchiveColumn( relnew,CustomDate := i );
      columnHandle := columnIndexTree.GetHandle( i.AsQUILL() );
      columns.Add( column );
      columnIndexTree.Root().AddChild( columnHandle,columns.Size() - 1 );
    }
    traverse( macroPlan,Product_MP.ProductInStockingPoint_MP,pisp_mp ){
      // unit.AsEntity().DisplayNameForSelection()
      pispippls := selectset( pisp_mp,ProductInStockingPointInPeriod.astype( ProductInStockingPointInPeriodPlanningLeaf ),pispippl,
                                        pispippl.Period_MP().StartDate() >= startDate
                                    and pispippl.Period_MP().EndDate() <= endDate
                                    and pispippl.Period_MP().TimeUnit() = Translations::MP_GlobalParameters_Day());
      if( pispippls.Size() <> 0 ){
        productionLine := pisp_mp.StockingPoint_MP().Unit().Name();
        row := table.ArchiveRow( relnew,ProductID := pisp_mp.ProductID() ,Index := table.GetRowIndexCache() );
        row.ProductionLine( productionLine );
        row.CustomName( row.ProductID() + " > " + row.ProductionLine() );
        traverse( pispippls,Elements,pispippl ){
          columnHandle := columnIndexTree.GetHandle( pispippl.Period_MP().StartDate().AsQUILL() );
          columnIndex := guard( columnIndexTree.Root().Child( columnHandle ),null( NamedValue ));
          if( not isnull( columnIndex )){
            column := columns.Element( columnIndex.GetValueAsNumber() );
            row.ArchiveCell( relnew,ArchiveCell_AnnualPlanReport,ArchiveColumn := column ,NewSupply := pispippl.NewSupplyQuantity());
          }
        }
      }
    }
    return table;
  *]
}
_Main/BL/Type_MP_Cell_AnnualPlanReport0/StaticMethod_CreateFullTable.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,179 @@
Quintiq file version 2.0
#parent: #root
StaticMethod CreateFullTable (
  const Archive archive,
  RecycleBin recycleBin,
  const MacroPlan macroPlan
) as LocalTable
{
  TextBody:
  [*
    // rislai Aug-7-2024 (created)
    traverse( recycleBin,LocalTable,table,table.Name() = ArchiveCell_AnnualPlanReport::GetTableName() ){
      table.Delete();
    }
    localTable := recycleBin.LocalTable( relnew,Name := ArchiveCell_AnnualPlanReport::GetTableName() );
    info( "111" );
    tables := selectset( archive,ArchiveTable,table,table.Name() = ArchiveCell_AnnualPlanReport::GetTableName());
    startDate := minselect( tables,Elements.ArchiveColumn,column,column.CustomDate() ).CustomDate();
    endDate := maxselect( tables,Elements.ArchiveColumn,column,column.CustomDate() ).CustomDate();
    localCells := construct( LocalCell_Defaults );
    localCellIndexTree := NamedValueTree::Create();
    localRows := construct( LocalRows );
    localRowIndexTree := NamedValueTree::Create();
    localColumns := construct( LocalColumns );
    localColumnIndexTree := NamedValueTree::Create();
    for( i := startDate; i <= endDate; i := i + 1 ){
       localColumn := localTable.LocalColumn( relnew,CustomDate := i ,TimeUnit := "Day");
       localColumnHandle := localColumnIndexTree.GetHandle( i.AsQUILL() );
       localColumns.Add( localColumn );
       localColumnIndexTree.Root().AddChild( localColumnHandle,localColumns.Size() - 1 );
    }
    traverse( tables,Elements.ArchiveRow,row ){
       localRowHandle := localRowIndexTree.GetHandle( row.ProductID() + row.ProductionLine() );
       localRowIndex := guard( localRowIndexTree.Root().Child( localRowHandle ),null( NamedValue ));
       localRow := null( LocalRow );
       if( isnull( localRowIndex )){
         localRow := localTable.LocalRow( relnew,CustomName := row.Name(),ProductID := row.ProductID(),ProductionLine := row.ProductionLine(),Index := localTable.GetRowIndexCache() );
         localRows.Add( localRow );
         localRowIndexTree.Root().AddChild( localRowHandle,localRows.Size() - 1 );
       }else{
         localRow := localRows.Element( localRowIndex.GetValueAsNumber() );
       }
       traverse( row,ArchiveCell.astype( ArchiveCell_AnnualPlanReport ),cell ){
         localColumnHandle := localColumnIndexTree.GetHandle( cell.ArchiveColumn().Date().AsQUILL());
         localColumnIndex := guard( localColumnIndexTree.Root().Child( localColumnHandle ),null( NamedValue ));
         if( not isnull( localColumnIndex )){
           localColumn := localColumns.Element( localColumnIndex.GetValueAsNumber() );
           localCellHandle := localCellIndexTree.GetHandle( localRow.ProductID() + localRow.ProductionLine() + localColumn.CustomDate().AsQUILL() + localColumn.TimeUnit() );
           localCellIndex := guard( localCellIndexTree.Root().Child( localCellHandle ),null( NamedValue ));
           if( isnull( localCellIndex )){
             localCell := localRow.LocalCell( relnew,LocalCell_Default,LocalColumn := localColumn );
             localCell.RealValue( cell.NewSupply() );
             localCells.Add( localCell );
             localCellIndexTree.Root().AddChild( localCellHandle,localCells.Size() - 1 );
           }else{
             localCell := localCells.Element( localCellIndex.GetValueAsNumber() );
             localCell.RealValue( localCell.RealValue() + cell.NewSupply() );
           }
         }
       }
    }
    //owner := maxselect( owners,Elements,element,element.StartOfPlanning() );
    traverse( macroPlan,Product_MP.ProductInStockingPoint_MP,pisp_mp ){
      pispippls := selectset( pisp_mp,ProductInStockingPointInPeriod.astype( ProductInStockingPointInPeriodPlanningLeaf ),pispippl,
                              pispippl.Period_MP().StartDate() > endDate
                              and pispippl.Period_MP().TimeUnit() = Translations::MP_GlobalParameters_Day());
      if( pispippls.Size() <> 0 ){
        localRowHandle := localRowIndexTree.GetHandle( pisp_mp.ProductID() + pisp_mp.StockingPoint_MP().Unit().Name() );
        localRowIndex := guard( localRowIndexTree.Root().Child( localRowHandle ),null( NamedValue ));
        localRow := null( LocalRow );
        if( isnull( localRowIndex )){
          localRow := localTable.LocalRow( relnew,CustomName := pisp_mp.Name(),ProductID := pisp_mp.ProductID(),ProductionLine := pisp_mp.StockingPoint_MP().Unit().Name(),Index := localTable.GetRowIndexCache() );
          localRows.Add( localRow );
          localRowIndexTree.Root().AddChild( localRowHandle,localRows.Size() - 1 );
        }else{
          localRow := localRows.Element( localRowIndex.GetValueAsNumber() );
        }
        traverse( pispippls,Elements,pispippl ){
          columnHandle := localColumnIndexTree.GetHandle( pispippl.Period_MP().StartDate().AsQUILL() );
          columnIndex := guard( localColumnIndexTree.Root().Child( columnHandle ),null( NamedValue ));
          column := null( LocalColumn );
          if( not isnull( columnIndex )){
            column := localColumns.Element( columnIndex.GetValueAsNumber() );
          }else{
            column := localTable.LocalColumn( relnew,CustomDate := pispippl.Period_MP().StartDate() ,TimeUnit := "Day");
            localColumns.Add( column );
            localColumnIndexTree.Root().AddChild( columnHandle,localColumns.Size() - 1 );
          }
          localCellHandle := localCellIndexTree.GetHandle( localRow.ProductID() + localRow.ProductionLine() + column.CustomDate().AsQUILL() + column.TimeUnit() );
          localCellIndex := guard( localCellIndexTree.Root().Child( localCellHandle ),null( NamedValue ));
          if( isnull( localCellIndex )){
            localCell := localRow.LocalCell( relnew,LocalCell_Default,LocalColumn := column );
            localCell.RealValue( pispippl.NewSupplyQuantity() );
            localCells.Add( localCell );
            localCellIndexTree.Root().AddChild( localCellHandle,localCells.Size() - 1 );
          }else{
            localCell := localCells.Element( localCellIndex.GetValueAsNumber() );
            localCell.RealValue( localCell.RealValue() + pispippl.NewSupplyQuantity() );
          }
        }
      }
    }
    endDate := maxselect( localColumns,Elements,column,column.CustomDate() ).CustomDate();
    for( i := startDate.StartOfWeek(); i <= endDate.StartOfNextWeek(); i := i.StartOfNextWeek() ){
       localColumn := localTable.LocalColumn( relnew,CustomDate := i ,TimeUnit := "Week");
       localColumnHandle := localColumnIndexTree.GetHandle( i.AsQUILL() + "Week" );
       localColumns.Add( localColumn );
       localColumnIndexTree.Root().AddChild( localColumnHandle,localColumns.Size() - 1 );
    }
    for( i := startDate.StartOfMonth(); i <= endDate.StartOfNextMonth(); i := i.StartOfNextMonth() ){
       localColumn := localTable.LocalColumn( relnew,CustomDate := i ,TimeUnit := "Month");
       localColumnHandle := localColumnIndexTree.GetHandle( i.AsQUILL() + "Month" );
       localColumns.Add( localColumn );
       localColumnIndexTree.Root().AddChild( localColumnHandle,localColumns.Size() - 1 );
    }
    traverse( localTable,LocalRow,row ){
      traverse( localTable,LocalColumn,column,column.TimeUnit() = "Week" ){
        value := sum( row,LocalCell.astype( LocalCell_Default ),cell,
                      cell.LocalColumn().TimeUnit() = "Day" and
                      cell.LocalColumn().CustomDate() >= column.CustomDate() and
                      cell.LocalColumn().CustomDate() < column.CustomDate().StartOfNextWeek(),cell.RealValue());
        localCell := row.LocalCell( relnew,LocalCell_Default,LocalColumn := column,RealValue := value );
        localCellHandle := localCellIndexTree.GetHandle( row.ProductID() + row.ProductionLine() + column.CustomDate().AsQUILL() + column.TimeUnit() );
        localCells.Add( localCell );
        localCellIndexTree.Root().AddChild( localCellHandle,localCells.Size() - 1 );
      }
      traverse( localTable,LocalColumn,column,column.TimeUnit() = "Month" ){
        value := sum( row,LocalCell.astype( LocalCell_Default ),cell,
                      cell.LocalColumn().TimeUnit() = "Day" and
                      cell.LocalColumn().CustomDate() >= column.CustomDate() and
                      cell.LocalColumn().CustomDate() < column.CustomDate().StartOfNextMonth(),cell.RealValue());
        localCell := row.LocalCell( relnew,LocalCell_Default,LocalColumn := column,RealValue := value );
        localCellHandle := localCellIndexTree.GetHandle( row.ProductID() + row.ProductionLine() + column.CustomDate().AsQUILL() + column.TimeUnit() );
        localCells.Add( localCell );
        localCellIndexTree.Root().AddChild( localCellHandle,localCells.Size() - 1 );
      }
    }
    traverse( localTable,LocalColumn,column,column.LocalCell( relsize ) = 0 ){
      column.Delete();
    }
    traverse( localTable,LocalRow,row,row.LocalCell( relsize ) = 0 ){
      row.Delete();
    }
    //traverse( localTable,LocalRow,row ){
    //  traverse( localTable,LocalColumn,column ){
    //    localCellHandle := localCellIndexTree.GetHandle( row.ProductID() + row.StockingPointID() + column.CustomDate().AsQUILL() + column.TimeUnit() );
    //    localCellIndex := guard( localCellIndexTree.Root().Child( localCellHandle ),null( NamedValue ));
    //    if( isnull( localCellIndex )){
    //      localCell := row.LocalCell( relnew,LocalCell_Default,LocalColumn := column,RealValue := 0.0 );
    //      localCells.Add( localCell );
    //      localCellIndexTree.Root().AddChild( localCellHandle,localCells.Size() - 1 );
    //    }
    //  }
    //}
    AsyncFlag::Success( recycleBin,ArchiveCell_AnnualPlanReport::GetTableName() );
    info( localTable.LocalRow( relsize ) )
    return localTable;
  *]
}
_Main/BL/Type_MP_Cell_AnnualPlanReport0/StaticMethod_GetTableName.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
#parent: #root
StaticMethod GetTableName () const declarative remote as owning String
{
  TextBody:
  [*
    // rislai Aug-7-2024 (created)
    return "全年计划报表";
  *]
}
_Main/BL/Type_MP_Cell_AnnualPlanReport0/_ROOT_Type_ArchiveCell_AnnualPlanReport#0.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
#root
#parent: #DomainModel
TypeSpecialization ArchiveCell_AnnualPlanReport
{
  #keys: '2[414996.1.219180173][414996.1.219180172]'
  Description: '全年计划报表'
  Parent: ArchiveCell
  StructuredName: 'ArchiveCell_AnnualPlanReports'
}
_Main/BL/Type_MP_Cell_ScheduleSummary0/Attribute_Capacity.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute Capacity
{
  #keys: '3[414996.1.219180156][414996.1.219180155][414996.1.219180157]'
  Description: '产能'
  ValueType: Real
}
_Main/BL/Type_MP_Cell_ScheduleSummary0/Attribute_IsFristWeekData.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute IsFristWeekData
{
  #keys: '3[414996.1.219180159][414996.1.219180158][414996.1.219180160]'
  ValueType: Boolean
}
_Main/BL/Type_MP_Cell_ScheduleSummary0/Attribute_Output.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute Output
{
  #keys: '3[414996.1.219180162][414996.1.219180161][414996.1.219180163]'
  Description: '产出'
  ValueType: Real
}
_Main/BL/Type_MP_Cell_ScheduleSummary0/Attribute_ShiftPattern.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute ShiftPattern
{
  #keys: '3[414996.1.219180165][414996.1.219180164][414996.1.219180166]'
  ValueType: String
}
_Main/BL/Type_MP_Cell_ScheduleSummary0/Attribute_WorkingDay.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute WorkingDay
{
  #keys: '3[414996.1.219180168][414996.1.219180167][414996.1.219180169]'
  Description: '工作日'
  ValueType: Number
}
_Main/BL/Type_MP_Cell_ScheduleSummary0/DefaultValue_ShiftPattern.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,6 @@
Quintiq file version 2.0
#parent: #root
DefaultValue
{
  TargetAttribute: ShiftPattern
}
_Main/BL/Type_MP_Cell_ScheduleSummary0/StaticMethod_AsyncCreateTables.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,16 @@
Quintiq file version 2.0
#parent: #root
StaticMethod AsyncCreateTables (
  const Keys macroPlanMDSIDs,
  Archive archive
)
{
  TextBody:
  [*
    // Akari Nov-11-2024 (created)
    traverse( macroPlanMDSIDs,Elements,mdsid ){
      streamMacroPlan := LocalTool::LoadMacroPlan( mdsid );
      streamMacroPlan -> ArchiveCell_ScheduleSummary::Create( archive );
    }
  *]
}
_Main/BL/Type_MP_Cell_ScheduleSummary0/StaticMethod_Create.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,88 @@
Quintiq file version 2.0
#parent: #root
StaticMethod Create (
  const MacroPlan macroPlan,
  Archive archive
) as ArchiveTable
{
  TextBody:
  [*
      // rislai Aug-6-2024 (created)
    traverse( archive,ArchiveTable,table,table.Name() = ArchiveCell_ScheduleSummary::GetTableName() and table.MacroPlanMDSID() = macroPlan.MDSID() ){
      table.Delete();
    }
    zeroDuration := Duration::Construct( 0,0,0,0 );
    table := archive.ArchiveTable( relnew,Name := ArchiveCell_ScheduleSummary::GetTableName(),MacroPlanMDSID := macroPlan.MDSID(),MacroPlanName := macroPlan.MDSMacroPlan().Description());
    startDate := macroPlan.StartOfPlanning().Date();
    endDate := maxselect( macroPlan,Unit.UnitPeriod.astype( UnitPeriodTime ).Period_MP,period,period.TimeUnit() = Translations::MP_GlobalParameters_Day(),period.EndDate()).EndDate();
    columns := construct( ArchiveColumns );
    columnIndexTree := NamedValueTree::Create();
    for( i := startDate;i < endDate; i := i + 1){
      column := table.ArchiveColumn( relnew,CustomDate := i );
      columnHandle := columnIndexTree.GetHandle( i.AsQUILL() );
      columns.Add( column );
      columnIndexTree.Root().AddChild( columnHandle,columns.Size() - 1 );
    }
    traverse( macroPlan,Unit,unit,unit.HasCapacityTypeTime() and not unit.HasChild()){
      // unit.AsEntity().DisplayNameForSelection()
      row := table.ArchiveRow( relnew,CustomName := unit.ID(),Index := table.GetRowIndexCache() );
      throughput := guard( sum( unit,Operation,operation,operation.Throughput() ) / unit.Operation( relsize ) , 0 );
      unitPeriodTimes := selectset( unit,UnitPeriod.astype( UnitPeriodTime ),unitPeriodTime,
                                        unitPeriodTime.Period_MP().StartDate() >= startDate
                                    and unitPeriodTime.Period_MP().EndDate() <= endDate
                                    and unitPeriodTime.Period_MP().TimeUnit() = Translations::MP_GlobalParameters_Day());
      traverse( unitPeriodTimes,Elements,unitPeriodTime ){
        columnHandle := columnIndexTree.GetHandle( unitPeriodTime.Period_MP().StartDate().AsQUILL() );
        columnIndex := guard( columnIndexTree.Root().Child( columnHandle ),null( NamedValue ));
        if( not isnull( columnIndex )){
          // å½“arrowedAvailableCapacity不为0,工作日 + 1
          arrowedAvailableCapacity := unitPeriodTime.TotalAvailableCapacity();
          workDay := ifexpr( arrowedAvailableCapacity <> zeroDuration, 1,0 );
          if( workDay = 0 ){
            workDay := ifexpr( unitPeriodTime.ShiftPlan().Outcome() <> "",1,0 );
          }
          column := columns.Element( columnIndex.GetValueAsNumber() );
          dayOfWeek := column.CustomDate().DayOfWeek();
          workHours := select( unitPeriodTime,ShiftPattern.ShiftDay,shifDay,shifDay.Day_MP().ID() = dayOfWeek );
          capacity := 0.0;
          if( not isnull( workHours )){
            capacity := workDay * throughput * workHours.Capacity().HoursAsReal()
          }
          isFirstWeekData := true;
          if( column.CustomDate() > startDate + 7 ){
            isFirstWeekData := false;
          }
          row.ArchiveCell( relnew,ArchiveCell_ScheduleSummary,ArchiveColumn := column,
                       IsFristWeekData := isFirstWeekData,
                       ShiftPattern := unitPeriodTime.ShiftPatternName(),
                       WorkingDay := workDay,
                       Capacity := capacity,
                       Output := 0 );
        }
      }
    }
    traverse( table,ArchiveColumn,column,column.ArchiveCell( relsize ) = 0 ){
      column.Delete();
    }
    return table;
  *]
}
_Main/BL/Type_MP_Cell_ScheduleSummary0/StaticMethod_CreateFullTable.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,155 @@
Quintiq file version 2.0
#parent: #root
StaticMethod CreateFullTable (
  const Archive archive,
  RecycleBin recycleBin,
  const MacroPlan macroPlan
) as LocalTable
{
  TextBody:
  [*
    // rislai Aug-7-2024 (created)
    tables := selectset( archive,ArchiveTable,table,table.Name() = ArchiveCell_ScheduleSummary::GetTableName() );
    info( isnull( archive ))
    scheduleSummaryOutputDataIndexTree := NamedValueTree::Create();
    scheduleSummaryOutputDatas := selectset( archive,ScheduleSummaryOutputLine.ScheduleSummaryOutputData,data,
                                             exists( tables,Elements.ArchiveRow,row,row.CustomName() = data.ScheduleSummaryOutputLine().LineName() ));
    for( i :=0;i < scheduleSummaryOutputDatas.Size();i++ ){
      scheduleSummaryOutputData := scheduleSummaryOutputDatas.Element( i );
      scheduleSummaryOutputDataKey := scheduleSummaryOutputData.ScheduleSummaryOutputLine().LineName() + scheduleSummaryOutputData.Date().AsQUILL();
      scheduleSummaryOutputDataHandle := scheduleSummaryOutputDataIndexTree.GetHandle( scheduleSummaryOutputDataKey );
      scheduleSummaryOutputDataIndexTree.Root().AddChild( scheduleSummaryOutputDataHandle,i );
    }
    traverse( recycleBin,LocalTable,table,table.Name() = ArchiveCell_ScheduleSummary::GetTableName() ){
      table.Delete();
    }
    localTable := recycleBin.LocalTable( relnew,Name := ArchiveCell_ScheduleSummary::GetTableName() );
    startDate := minselect( tables,Elements.ArchiveColumn,column,column.CustomDate() ).CustomDate();
    endDate := maxselect( tables,Elements.ArchiveColumn,column,column.CustomDate() ).CustomDate();
    localColumns := construct( LocalColumns );
    localColumnIndexTree := NamedValueTree::Create();
    for( i := startDate.StartOfMonth(); i <= endDate.StartOfMonth(); i := i.StartOfNextMonth() ){
       localColumn := localTable.LocalColumn( relnew,CustomDate := i );
       localColumnHandle := localColumnIndexTree.GetHandle( i.AsQUILL() );
       localColumns.Add( localColumn );
       localColumnIndexTree.Root().AddChild( localColumnHandle,localColumns.Size() - 1 );
    }
    localRows := construct( LocalRows );
    localRowIndexTree := NamedValueTree::Create();
    localCells := construct( LocalCell_ScheduleSummarys );
    localCellIndexTree := NamedValueTree::Create();
    units := selectset( macroPlan,Unit,unit,unit.HasCapacityTypeTime() and not unit.HasChild());
    unitIndexTree := NamedValueTree::Create();
    for( i := 0 ; i< units.Size() ; i++ ){
      unit := units.Element( i );
      unitHandle := unitIndexTree.GetHandle( unit.ID() );
      unitIndexTree.Root().AddChild( unitHandle,i );
    }
    traverse( tables,Elements.ArchiveRow,row ){
       rowMacroPlanMDSID := row.ArchiveTable().MacroPlanMDSID();
       localRow := null( LocalRow );
       {
         localRowHandle := localRowIndexTree.GetHandle( row.Name() );
         localRowIndex := guard( localRowIndexTree.Root().Child( localRowHandle ),null( NamedValue ));
         if( isnull( localRowIndex )){
           localRow := localTable.LocalRow( relnew,CustomName := row.Name(),Index := localTable.GetRowIndexCache() );
           localRows.Add( localRow );
           localRowIndexTree.Root().AddChild( localRowHandle,localRows.Size() - 1 );
         }else{
           localRow := localRows.Element( localRowIndex.GetValueAsNumber());
         }
       }
       traverse( localColumns,Elements,localColumn ){
          cells := selectset( row,ArchiveCell.astype( ArchiveCell_ScheduleSummary ),cell,
                              ifexpr( rowMacroPlanMDSID = macroPlan.MDSID() , true , cell.IsFristWeekData()) and
                              cell.ArchiveColumn().CustomDate() >= localColumn.CustomDate() and
                              cell.ArchiveColumn().CustomDate() < localColumn.CustomDate().StartOfNextMonth() );
          isFuture := macroPlan.StartOfPlanning().Date() < localColumn.CustomDate();
          output := 0.0;
          if( isFuture ){
            unitHandle := unitIndexTree.GetHandle( row.Name() );
            unitIndex := guard( unitIndexTree.Root().Child( unitHandle ),null( NamedValue ));
            if( not isnull( unitIndex )){
              unit := units.Element( unitIndex.GetValueAsNumber() );
              output := sum( unit,UnitPeriod.astype( UnitPeriodTime ).PeriodTask_MP.NewSupply,np,
                             np.PeriodTask_MP().UnitPeriod().StartDate() >= localColumn.CustomDate() and
                             np.PeriodTask_MP().UnitPeriod().StartDate() < localColumn.CustomDate().StartOfNextMonth() and
                             np.PeriodTask_MP().UnitPeriod().Period_MP().TimeUnit() = "Day",
                             np.Quantity() );
              output := sum( unit,StockingPoint_MP.ProductInStockingPoint_MP.ProductInStockingPointInPeriod,pispip,
                             pispip.Period_MP().StartDate() >= localColumn.CustomDate() and
                             pispip.Period_MP().StartDate() < localColumn.CustomDate().StartOfNextMonth() and
                             pispip.Period_MP().TimeUnit() = "Day",
                             pispip.NewSupplyProductionQuantity());
            }
          }else{
            scheduleSummaryOutputDataKey := row.Name() + localColumn.CustomDate().AsQUILL();
            scheduleSummaryOutputDataHandle := scheduleSummaryOutputDataIndexTree.GetHandle( scheduleSummaryOutputDataKey );
            scheduleSummaryOutputDataIndex := guard( scheduleSummaryOutputDataIndexTree.Root().Child( scheduleSummaryOutputDataHandle ),null( NamedValue ));
            if( not isnull( scheduleSummaryOutputDataIndex )){
              scheduleSummaryOutputData := scheduleSummaryOutputDatas.Element( scheduleSummaryOutputDataIndex.GetValueAsNumber() );
              output := scheduleSummaryOutputData.Output();
            }
          }
          workingDay := 0;
          capacity := 0.0;
          shiftPatterns := construct( Strings );
          traverse( cells,Elements,cell ){
             workingDay := workingDay + cell.WorkingDay();
             capacity := capacity + cell.Capacity();
             if( cell.ShiftPattern() <> "" ){
               shiftPatterns.Add( cell.ShiftPattern() );
             }
          }
          localCell := null( LocalCell_ScheduleSummary );
          {
            localCellHandle := localCellIndexTree.GetHandle( row.Name() + localColumn.CustomDate().AsQUILL() );
            localCellIndex := guard( localCellIndexTree.Root().Child( localCellHandle ),null( NamedValue ));
            if( isnull( localCellIndex )){
              localCell := localRow.LocalCell( relnew,LocalCell_ScheduleSummary,LocalColumn := localColumn );
              localCells.Add( localCell );
              localCellIndexTree.Root().AddChild( localCellHandle , localCells.Size() - 1 );
            }else{
              localCell := localCells.Element( localCellIndex.GetValueAsNumber() );
            }
          }
          localCell.ShiftPattern( selectuniquevalues( shiftPatterns,Elements,element,element ).Concatenate( "/" ) );
          localCell.WorkingDay( localCell.WorkingDay() + workingDay );
          localCell.Capacity( localCell.Capacity() + capacity );
          localCell.Output( localCell.Output() + output );
       }
    }
    traverse( localTable,LocalRow.LocalCell.astype( LocalCell_ScheduleSummary ),cell ){
      cell.Capacity( cell.Capacity() / tables.Size() );
      cell.Output( cell.Output() / tables.Size() );
    }
    //startDate := owner.StartOfPlanning().Date() + 7;
    //endDate := maxselect( owner,Unit.UnitPeriod.astype( UnitPeriodTime ).Period_MP,period,period.EndDate(),period.TimeUnit() = "Month" ).EndDate();
    //columns := construct( ArchiveColumns );
    //columnIndexTree := NamedValueTree::Create();
    //for( i := startDate;i < endDate; i := i + 1){
    //  column := table.ArchiveColumn( relnew,CustomDate := i );
    //  columnHandle := columnIndexTree.GetHandle( i.AsQUILL() );
    //  columns.Add( column );
    //  columnIndexTree.Root().AddChild( columnHandle,columns.Size() - 1 );
    //}
    AsyncFlag::Success( recycleBin,ArchiveCell_ScheduleSummary::GetTableName() );
    return localTable;
  *]
}
_Main/BL/Type_MP_Cell_ScheduleSummary0/StaticMethod_ExportOutputTemplate.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,36 @@
Quintiq file version 2.0
#parent: #root
StaticMethod ExportOutputTemplate (
  Number year
) as BinaryValue
{
  Description: '导出产出导入模板'
  TextBody:
  [*
    // rislai Aug-6-2024 (created)
    // Akari May-18-2024 (created)
    // rislai Jan-19-2024 (created)
    sheetName := "产出";
    xmlTemplate := '<?xml version="1.0" encoding="UTF-16"?><table><name>'+ sheetName +'</name>';
    xmlTemplate := xmlTemplate + "<column><name>产线</name><type>String</type>";
    // xmlTemplate := xmlTemplate + '<cell value=" "/>';
    xmlTemplate := xmlTemplate + "</column>";
    for( i := 1 ; i <= 12 ; i++ ){
      xmlTemplate := xmlTemplate + "<column><name>" + Date::Construct( year,i,1 ).Format( "Y/M/D" ) + "</name><type>Number</type>";
      // xmlTemplate := xmlTemplate + '<cell value=" "/>';
      xmlTemplate := xmlTemplate + "</column>";
    }
    xmlTemplate := xmlTemplate + "</table>";
    tableHandle := TableHandle::ImportXML( BinaryValue::Construct( xmlTemplate ) );
    XLS::SaveTable( tableHandle, OS::TempPath() + "template.xlsx" );
    file := OSFile::Construct();
    file.Open( OS::TempPath() + "template.xlsx", "Read", true );
    data := file.ReadBinary();
    return data;
  *]
}
_Main/BL/Type_MP_Cell_ScheduleSummary0/StaticMethod_GetTableName.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
#parent: #root
StaticMethod GetTableName () const declarative remote as owning String
{
  TextBody:
  [*
    // rislai Aug-7-2024 (created)
    return "计划汇总报表";
  *]
}
_Main/BL/Type_MP_Cell_ScheduleSummary0/StaticMethod_ImportOutput.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,68 @@
Quintiq file version 2.0
#parent: #root
StaticMethod ImportOutput (
  Archive archive,
  const GeneralExcelImportAndExportDataSource outputSource
)
{
  Description: '产出导入'
  TextBody:
  [*
    // rislai Aug-6-2024 (created)
    outputTable := select( outputSource,GeneralExcelImportAndExportDataTable,table,table.Name() = "产出");
    if( isnull( outputTable )){
      error( "导入的文件不正确" );
    }
    archive.ScheduleSummaryOutputLine( relflush );
    lines := construct( ScheduleSummaryOutputLines );
    lineIndexTree := NamedValueTree::Create();
    traverse( archive,ScheduleSummaryOutputLine,line ){
      lineHandle := lineIndexTree.GetHandle( line.LineName() );
      lines.Add( line );
      lineIndexTree.Root().AddChild( lineHandle,lines.Size() - 1 );
    }
    traverse( outputTable,GeneralExcelImportAndExportDataRow,row ){
      count := 0;
      line := null( ScheduleSummaryOutputLine );
      datas := construct( ScheduleSummaryOutputDatas );
      dataIndexTree := NamedValueTree::Create();
      traverse( row,GeneralExcelImportAndExportDataCell,cell ){
        if( count = 0 ){
          lineName := cell.Value();
          lineHandle := lineIndexTree.GetHandle( lineName );
          lineIndex := guard( lineIndexTree.Root().Child( lineHandle ),null( NamedValue ));
          if( isnull( lineIndex )){
            line := archive.ScheduleSummaryOutputLine( relnew,LineName := lineName );
            lines.Add( line );
            lineIndexTree.Root().AddChild( lineHandle,lines.Size() - 1 );
          }else{
            line := lines.Element( lineIndex.GetValueAsNumber() );
            traverse( line,ScheduleSummaryOutputData,data ){
              dataHandle := dataIndexTree.GetHandle( data.Date().AsQUILL() );
              datas.Add( data );
              dataIndexTree.Root().AddChild( dataHandle,datas.Size() - 1 );
            }
          }
        }else{
          stringsDate := cell.GeneralExcelImportAndExportDataColumn().Name().Tokenize( "/" );
          date := guard( Date::Construct( [Number]stringsDate.Element( 0 ),[Number]stringsDate.Element( 1 ),[Number]stringsDate.Element( 2 )),Date::MinDate() );
          dataHandle := dataIndexTree.GetHandle( date.AsQUILL() );
          dataIndex := guard( dataIndexTree.Root().Child( dataHandle ),null( NamedValue ));
          if( isnull( dataIndex )){
            data := line.ScheduleSummaryOutputData( relnew,Date := date,Output := [Real]cell.Value() );
            datas.Add( data );
            dataIndexTree.Root().AddChild( dataHandle,datas.Size() - 1 );
          }else{
            data := datas.Element( dataIndex.GetValueAsNumber() );
            data.Output( [Real]cell.Value() );
          }
        }
        count ++;
      }
    }
  *]
}
_Main/BL/Type_MP_Cell_ScheduleSummary0/_ROOT_Type_ArchiveCell_ScheduleSummary#0.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
#root
#parent: #DomainModel
TypeSpecialization ArchiveCell_ScheduleSummary
{
  #keys: '2[414996.1.219180154][414996.1.219180153]'
  Description: '计划汇总报表'
  Parent: ArchiveCell
  StructuredName: 'ArchiveCell_ScheduleSummarys'
}
_Main/BL/Type_MP_Column0/Attribute_CustomDate.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute CustomDate
{
  #keys: '3[414996.1.219180135][414996.1.219180134][414996.1.219180136]'
  ValueType: Date
}
_Main/BL/Type_MP_Column0/Attribute_CustomIndex.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute CustomIndex
{
  #keys: '3[414996.1.219180138][414996.1.219180137][414996.1.219180139]'
  ValueType: Number
}
_Main/BL/Type_MP_Column0/Attribute_Date.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute Date
{
  #keys: '3[414996.1.219180141][414996.1.219180140][414996.1.219180142]'
  ValueType: Date
}
_Main/BL/Type_MP_Column0/Attribute_Index.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute Index
{
  #keys: '3[414996.1.219180144][414996.1.219180143][414996.1.219180145]'
  ValueType: Number
}
_Main/BL/Type_MP_Column0/Attribute_IsAttrbuteColumn.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute IsAttrbuteColumn
{
  #keys: '3[414996.1.219180147][414996.1.219180146][414996.1.219180148]'
  ValueType: Boolean
}
_Main/BL/Type_MP_Column0/Attribute_Name.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute Name
{
  #keys: '3[414996.1.219180150][414996.1.219180149][414996.1.219180151]'
  ValueType: String
}
_Main/BL/Type_MP_Column0/DefaultValue_CustomIndex.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
DefaultValue
{
  ISOValue: '-999'
  TargetAttribute: CustomIndex
}
_Main/BL/Type_MP_Column0/DefaultValue_Name.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,6 @@
Quintiq file version 2.0
#parent: #root
DefaultValue
{
  TargetAttribute: Name
}
_Main/BL/Type_MP_Column0/Function_CalcDate.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,13 @@
Quintiq file version 2.0
#parent: #root
Function CalcDate
{
  TextBody:
  [*
    // rislai Jun-28-2024 (created)
    if( not this.IsAttrbuteColumn() ){
      names := this.Name().Tokenize( "/" );
      this.Date( ifexpr( this.CustomDate() <> Date::MinDate(),this.CustomDate(),guard( Date::Construct( [Number]names.Element( 0 ),[Number]names.Element( 1 ),[Number]names.Element( 2 )),Date::MinDate() )));
    }
  *]
}
_Main/BL/Type_MP_Column0/Function_CalcIndex.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,29 @@
Quintiq file version 2.0
#parent: #root
Function CalcIndex
{
  TextBody:
  [*
    // rislai Jul-24-2024 (created)
    year := this.Date().Year();
    month := this.Date().Month();
    day := this.Date().Day();
    index := [String]year;
    if( month < 10 ){
      index := index + "0" + [String]month;
    }else{
      index := index + [String]month;
    }
    if( day < 10 ){
      index := index + "0" + [String]day;
    }else{
      index := index + [String]day;
    }
    value := ifexpr( this.CustomIndex() = -999,[Number]index,this.CustomIndex() );
    this.Index( value );
  *]
}
_Main/BL/Type_MP_Column0/_ROOT_Type_ArchiveColumn#0.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,9 @@
Quintiq file version 2.0
#root
#parent: #DomainModel
Type ArchiveColumn
{
  #keys: '5[414996.1.219180132][414996.1.219180130][0.0.0][414996.1.219180131][414996.1.219180133]'
  BaseType: Object
  StructuredName: 'ArchiveColumns'
}
_Main/BL/Type_MP_Row0/Attribute_CustomName.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute CustomName
{
  #keys: '3[414996.1.219180109][414996.1.219180108][414996.1.219180110]'
  ValueType: String
}
_Main/BL/Type_MP_Row0/Attribute_Index.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute Index
{
  #keys: '3[414996.1.219180112][414996.1.219180111][414996.1.219180113]'
  ValueType: Number
}
_Main/BL/Type_MP_Row0/Attribute_Name.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute Name
{
  #keys: '3[414996.1.219180115][414996.1.219180114][414996.1.219180116]'
  ValueType: String
}
_Main/BL/Type_MP_Row0/Attribute_ProductID.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute ProductID
{
  #keys: '3[414996.1.219180118][414996.1.219180117][414996.1.219180119]'
  ValueType: String
}
_Main/BL/Type_MP_Row0/Attribute_ProductionLine.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute ProductionLine
{
  #keys: '3[414996.1.219180121][414996.1.219180120][414996.1.219180122]'
  ValueType: String
}
_Main/BL/Type_MP_Row0/Attribute_Remark.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute Remark
{
  #keys: '3[414996.1.219180124][414996.1.219180123][414996.1.219180125]'
  ValueType: String
}
_Main/BL/Type_MP_Row0/Attribute_StockingPointID.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute StockingPointID
{
  #keys: '3[414996.1.219180127][414996.1.219180126][414996.1.219180128]'
  ValueType: String
}
_Main/BL/Type_MP_Row0/DefaultValue_CustomName.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,6 @@
Quintiq file version 2.0
#parent: #root
DefaultValue
{
  TargetAttribute: CustomName
}
_Main/BL/Type_MP_Row0/DefaultValue_Name.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,6 @@
Quintiq file version 2.0
#parent: #root
DefaultValue
{
  TargetAttribute: Name
}
_Main/BL/Type_MP_Row0/DefaultValue_ProductID.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,6 @@
Quintiq file version 2.0
#parent: #root
DefaultValue
{
  TargetAttribute: ProductID
}
_Main/BL/Type_MP_Row0/DefaultValue_ProductionLine.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,6 @@
Quintiq file version 2.0
#parent: #root
DefaultValue
{
  TargetAttribute: ProductionLine
}
_Main/BL/Type_MP_Row0/DefaultValue_Remark.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,6 @@
Quintiq file version 2.0
#parent: #root
DefaultValue
{
  TargetAttribute: Remark
}
_Main/BL/Type_MP_Row0/DefaultValue_StockingPointID.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,6 @@
Quintiq file version 2.0
#parent: #root
DefaultValue
{
  TargetAttribute: StockingPointID
}
_Main/BL/Type_MP_Row0/Function_CalcName.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,13 @@
Quintiq file version 2.0
#parent: #root
Function CalcName
{
  TextBody:
  [*
    // rislai Jun-22-2024 (created)
    value := ifexpr( this.CustomName() = "",[String]this.Index(),this.CustomName() );
    this.Name( value );
  *]
}
_Main/BL/Type_MP_Row0/_ROOT_Type_ArchiveRow#0.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,9 @@
Quintiq file version 2.0
#root
#parent: #DomainModel
Type ArchiveRow
{
  #keys: '5[414996.1.219180106][414996.1.219180104][0.0.0][414996.1.219180105][414996.1.219180107]'
  BaseType: Object
  StructuredName: 'ArchiveRows'
}
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_ListGenerations#916.def
ÎļþÃû´Ó _Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_ListGenerations#529.def ÐÞ¸Ä
@@ -1,14 +1,13 @@
Quintiq file version 2.0
Component ListGenerations id:ListGenerations_529
Component ListGenerations id:ListGenerations_916
{
  #keys: '[414996.1.209190762]'
  #keys: '[414996.1.230731090]'
  BaseType: 'WebList'
  Children:
  [
    #child: listActionBarPage963_1
    Component DataExtractor989
    {
      #keys: '[414996.1.209190763]'
      #keys: '[414996.1.230731091]'
      BaseType: 'WebDataExtractor'
      Properties:
      [
@@ -18,9 +17,10 @@
        Transformation: 'Elements'
      ]
    }
    #child: listActionBarPage963_1
    Component DataSetLevel191
    {
      #keys: '[414996.1.209190765]'
      #keys: '[414996.1.230731093]'
      BaseType: 'WebDataSetLevel'
      Children:
      [
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_ListMQBMLB#865.def
ÎļþÃû´Ó _Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_ListMQBMLB#925.def ÐÞ¸Ä
@@ -1,13 +1,13 @@
Quintiq file version 2.0
Component ListMQBMLB id:ListMQBMLB_925
Component ListMQBMLB id:ListMQBMLB_865
{
  #keys: '[414996.1.209190780]'
  #keys: '[414996.1.230731070]'
  BaseType: 'WebList'
  Children:
  [
    Component DataExtractor472
    {
      #keys: '[414996.1.209190781]'
      #keys: '[414996.1.230731071]'
      BaseType: 'WebDataExtractor'
      Properties:
      [
@@ -20,7 +20,7 @@
    #child: listActionBarPage519_1
    Component DataSetLevel527
    {
      #keys: '[414996.1.209190783]'
      #keys: '[414996.1.230731073]'
      BaseType: 'WebDataSetLevel'
      Children:
      [
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_ListPowers#509.def
ÎļþÃû´Ó _Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_ListPowers#568.def ÐÞ¸Ä
@@ -1,13 +1,13 @@
Quintiq file version 2.0
Component ListPowers id:ListPowers_568
Component ListPowers id:ListPowers_509
{
  #keys: '[414996.1.209190771]'
  #keys: '[414996.1.230731079]'
  BaseType: 'WebList'
  Children:
  [
    Component DataExtractor671
    {
      #keys: '[414996.1.209190772]'
      #keys: '[414996.1.230731080]'
      BaseType: 'WebDataExtractor'
      Properties:
      [
@@ -20,7 +20,7 @@
    #child: listActionBarPage245_1
    Component DataSetLevel995
    {
      #keys: '[414996.1.209190774]'
      #keys: '[414996.1.230731082]'
      BaseType: 'WebDataSetLevel'
      Children:
      [
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_MatrixEditor.def
@@ -1,19 +1,19 @@
Quintiq file version 2.0
Component MatrixEditor
{
  #keys: '[414996.1.209190963]'
  #keys: '[414996.1.230731119]'
  BaseType: 'WebMatrixEditor'
  Children:
  [
    Component MatrixEditorCell
    {
      #keys: '[414996.1.209190964]'
      #keys: '[414996.1.230731120]'
      BaseType: 'WebMatrixEditorCell'
      Children:
      [
        Component DataExtractorCells
        {
          #keys: '[414996.1.209190965]'
          #keys: '[414996.1.230731121]'
          BaseType: 'WebDataExtractor'
          Properties:
          [
@@ -34,13 +34,13 @@
    }
    Component MatrixEditorRows
    {
      #keys: '[414996.1.209190966]'
      #keys: '[414996.1.230731122]'
      BaseType: 'WebMatrixEditorHeaderLevel'
      Children:
      [
        Component DataExtractorRows
        {
          #keys: '[414996.1.209190967]'
          #keys: '[414996.1.230731123]'
          BaseType: 'WebDataExtractor'
          Properties:
          [
@@ -62,13 +62,13 @@
    }
    Component MatrixEditorColumns
    {
      #keys: '[414996.1.209190968]'
      #keys: '[414996.1.230731124]'
      BaseType: 'WebMatrixEditorHeaderLevel'
      Children:
      [
        Component DataExtractorColumns
        {
          #keys: '[414996.1.209190969]'
          #keys: '[414996.1.230731125]'
          BaseType: 'WebDataExtractor'
          Properties:
          [
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_listActionBarPage245#1.def
@@ -1,7 +1,7 @@
Quintiq file version 2.0
Component listActionBarPage245 id:listActionBarPage245_1
{
  #keys: '[414996.1.209190773]'
  #keys: '[414996.1.230731081]'
  BaseType: 'listActionBarPage'
  Properties:
  [
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_listActionBarPage519#1.def
@@ -1,7 +1,7 @@
Quintiq file version 2.0
Component listActionBarPage519 id:listActionBarPage519_1
{
  #keys: '[414996.1.209190782]'
  #keys: '[414996.1.230731072]'
  BaseType: 'listActionBarPage'
  Properties:
  [
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_listActionBarPage963#1.def
@@ -1,7 +1,7 @@
Quintiq file version 2.0
Component listActionBarPage963 id:listActionBarPage963_1
{
  #keys: '[414996.1.209190764]'
  #keys: '[414996.1.230731092]'
  BaseType: 'listActionBarPage'
  Properties:
  [
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_listContextMenu319#1.def
@@ -1,7 +1,7 @@
Quintiq file version 2.0
Component listContextMenu319 id:listContextMenu319_1
{
  #keys: '[414996.1.209190784]'
  #keys: '[414996.1.230731074]'
  BaseType: 'listContextMenu'
  Properties:
  [
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_listContextMenu623#1.def
@@ -1,7 +1,7 @@
Quintiq file version 2.0
Component listContextMenu623 id:listContextMenu623_1
{
  #keys: '[414996.1.209190775]'
  #keys: '[414996.1.230731083]'
  BaseType: 'listContextMenu'
  Properties:
  [
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_listContextMenu687#1.def
@@ -1,7 +1,7 @@
Quintiq file version 2.0
Component listContextMenu687 id:listContextMenu687_1
{
  #keys: '[414996.1.209190766]'
  #keys: '[414996.1.230731094]'
  BaseType: 'listContextMenu'
  Properties:
  [
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_matrixEditorActionBarPageDemandComparison.def
@@ -1,7 +1,7 @@
Quintiq file version 2.0
Component matrixEditorActionBarPageDemandComparison
{
  #keys: '[414996.1.209190970]'
  #keys: '[414996.1.230731126]'
  BaseType: 'matrixEditorActionBarPage'
  Properties:
  [
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_matrixeditorContextMenuDemandComparison.def
@@ -1,7 +1,7 @@
Quintiq file version 2.0
Component matrixeditorContextMenuDemandComparison
{
  #keys: '[414996.1.209190971]'
  #keys: '[414996.1.230731127]'
  BaseType: 'matrixeditorContextMenu'
  Properties:
  [
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_pAnnualPlanReport#921.def
ÎļþÃû´Ó _Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_pAnnualPlanReport#439.def ÐÞ¸Ä
@@ -1,20 +1,20 @@
Quintiq file version 2.0
Component pAnnualPlanReport id:pAnnualPlanReport_439
Component pAnnualPlanReport id:pAnnualPlanReport_921
{
  #keys: '[414996.1.209190957]'
  #keys: '[414996.1.230731114]'
  BaseType: 'WebPanel'
  Children:
  [
    Component dhCheckedProducts
    {
      #keys: '[414996.1.209190958]'
      #keys: '[414996.1.230731115]'
      BaseType: 'WebDataHolder'
      Databinding: 'structured[Product_MP]*'
      Children:
      [
        Component deCheckedProduct
        {
          #keys: '[414996.1.209190959]'
          #keys: '[414996.1.230731116]'
          BaseType: 'WebDataExtractor'
          Properties:
          [
@@ -32,7 +32,7 @@
    }
    Component dhFinelProducts
    {
      #keys: '[414996.1.209190960]'
      #keys: '[414996.1.230731117]'
      BaseType: 'WebDataHolder'
      Databinding: 'structured[Product_MP]*'
      Properties:
@@ -42,25 +42,9 @@
    }
    Component dhAnnualPlanTable
    {
      #keys: '[414996.1.209190961]'
      #keys: '[414996.1.230731118]'
      BaseType: 'WebDataHolder'
      Databinding: 'LocalTable'
      Children:
      [
        Component deAnnualPlanTable
        {
          #keys: '[414996.1.209190962]'
          BaseType: 'WebDataExtractor'
          Properties:
          [
            DataType: 'RecycleBin'
            FixedFilter: 'object.Name() = MP_Cell_AnnualPlanReport::GetTableName()'
            Source: 'RecycleBin'
            Taborder: 0
            Transformation: 'LocalTable'
          ]
        }
      ]
      Properties:
      [
        Taborder: 1
@@ -69,14 +53,14 @@
    #child: MatrixEditor
    Component dhCheckedEntitys
    {
      #keys: '[414996.1.209190972]'
      #keys: '[414996.1.230731128]'
      BaseType: 'WebDataHolder'
      Databinding: 'structured[Entity]*'
      Children:
      [
        Component deCheckedEntitys
        {
          #keys: '[414996.1.209190973]'
          #keys: '[414996.1.230731129]'
          BaseType: 'WebDataExtractor'
          Properties:
          [
@@ -94,7 +78,7 @@
    }
    Component dhFinelEntitys
    {
      #keys: '[414996.1.209190974]'
      #keys: '[414996.1.230731130]'
      BaseType: 'WebDataHolder'
      Databinding: 'structured[Entity]*'
      Properties:
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_pExport#94.def
ÎļþÃû´Ó _Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_pExport#870.def ÐÞ¸Ä
@@ -1,13 +1,13 @@
Quintiq file version 2.0
Component pExport id:pExport_870
Component pExport id:pExport_94
{
  #keys: '[414996.1.210703208]'
  #keys: '[414996.1.230731102]'
  BaseType: 'WebPanel'
  Children:
  [
    Component bExport
    {
      #keys: '[414996.1.210703209]'
      #keys: '[414996.1.230731103]'
      BaseType: 'WebButton'
      Properties:
      [
@@ -17,14 +17,14 @@
    }
    Component dhXMLDataListener
    {
      #keys: '[414996.1.210703210]'
      #keys: '[414996.1.230731104]'
      BaseType: 'WebDataHolder'
      Databinding: 'ExportXMLManager'
      Children:
      [
        Component DataExtractorRibbon
        {
          #keys: '[414996.1.210703211]'
          #keys: '[414996.1.230731105]'
          BaseType: 'WebDataExtractor'
          Properties:
          [
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_pGeneration#523.def
ÎļþÃû´Ó _Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_pGeneration#812.def ÐÞ¸Ä
@@ -1,13 +1,13 @@
Quintiq file version 2.0
Component pGeneration id:pGeneration_812
Component pGeneration id:pGeneration_523
{
  #keys: '[414996.1.209190760]'
  #keys: '[414996.1.230731086]'
  BaseType: 'WebPanel'
  Children:
  [
    Component dhGenerations
    {
      #keys: '[414996.1.209190761]'
      #keys: '[414996.1.230731087]'
      BaseType: 'WebDataHolder'
      Databinding: 'structured[LocalValue]*'
      Properties:
@@ -17,14 +17,14 @@
    }
    Component dhCheckGenerations
    {
      #keys: '[414996.1.209190767]'
      #keys: '[414996.1.230731088]'
      BaseType: 'WebDataHolder'
      Databinding: 'structured[LocalValue]*'
      Children:
      [
        Component deCheckGenerations
        {
          #keys: '[414996.1.209190768]'
          #keys: '[414996.1.230731089]'
          BaseType: 'WebDataExtractor'
          Properties:
          [
@@ -41,7 +41,7 @@
        Taborder: 2
      ]
    }
    #child: ListGenerations_529
    #child: ListGenerations_916
  ]
  Properties:
  [
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_pMQBMLB#567.def
ÎļþÃû´Ó _Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_pMQBMLB#393.def ÐÞ¸Ä
@@ -1,13 +1,13 @@
Quintiq file version 2.0
Component pMQBMLB id:pMQBMLB_393
Component pMQBMLB id:pMQBMLB_567
{
  #keys: '[414996.1.209190778]'
  #keys: '[414996.1.230731068]'
  BaseType: 'WebPanel'
  Children:
  [
    Component dhMQBMLB
    {
      #keys: '[414996.1.209190779]'
      #keys: '[414996.1.230731069]'
      BaseType: 'WebDataHolder'
      Databinding: 'structured[LocalValue]*'
      Properties:
@@ -15,17 +15,17 @@
        Taborder: 1
      ]
    }
    #child: ListMQBMLB_925
    #child: ListMQBMLB_865
    Component dhCheckMQBMLB
    {
      #keys: '[414996.1.209190785]'
      #keys: '[414996.1.230731075]'
      BaseType: 'WebDataHolder'
      Databinding: 'structured[LocalValue]*'
      Children:
      [
        Component deCheckMQBMLB
        {
          #keys: '[414996.1.209190786]'
          #keys: '[414996.1.230731076]'
          BaseType: 'WebDataExtractor'
          Properties:
          [
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_pMainLeft.def
@@ -1,11 +1,11 @@
Quintiq file version 2.0
Component pMainLeft
{
  #keys: '[414996.1.210702882]'
  #keys: '[414996.1.230731066]'
  BaseType: 'WebPanel'
  Children:
  [
    #child: pProductAttributeFilter_791
    #child: pProductAttributeFilter_565
  ]
  Properties:
  [
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_pMainPanel.def
@@ -1,7 +1,7 @@
Quintiq file version 2.0
Component pMainPanel
{
  #keys: '[414996.1.210624396]'
  #keys: '[414996.1.230731065]'
  BaseType: 'WebPanel'
  Children:
  [
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_pMainRight.def
@@ -1,12 +1,12 @@
Quintiq file version 2.0
Component pMainRight
{
  #keys: '[414996.1.209190620]'
  #keys: '[414996.1.230731095]'
  BaseType: 'WebPanel'
  Children:
  [
    #child: pRibbon
    #child: pAnnualPlanReport_439
    #child: pAnnualPlanReport_921
  ]
  Properties:
  [
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_pPower#266.def
ÎļþÃû´Ó _Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_pPower#480.def ÐÞ¸Ä
@@ -1,13 +1,13 @@
Quintiq file version 2.0
Component pPower id:pPower_480
Component pPower id:pPower_266
{
  #keys: '[414996.1.209190769]'
  #keys: '[414996.1.230731077]'
  BaseType: 'WebPanel'
  Children:
  [
    Component dhPowers
    {
      #keys: '[414996.1.209190770]'
      #keys: '[414996.1.230731078]'
      BaseType: 'WebDataHolder'
      Databinding: 'structured[LocalValue]*'
      Properties:
@@ -15,17 +15,17 @@
        Taborder: 1
      ]
    }
    #child: ListPowers_568
    #child: ListPowers_509
    Component dhCheckPowers
    {
      #keys: '[414996.1.209190776]'
      #keys: '[414996.1.230731084]'
      BaseType: 'WebDataHolder'
      Databinding: 'structured[LocalValue]*'
      Children:
      [
        Component deCheckPowers
        {
          #keys: '[414996.1.209190777]'
          #keys: '[414996.1.230731085]'
          BaseType: 'WebDataExtractor'
          Properties:
          [
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_pProductAttributeFilter#565.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,18 @@
Quintiq file version 2.0
Component pProductAttributeFilter id:pProductAttributeFilter_565
{
  #keys: '[414996.1.230731067]'
  BaseType: 'WebPanel'
  Children:
  [
    #child: pMQBMLB_567
    #child: pPower_266
    #child: pGeneration_523
  ]
  Properties:
  [
    FixedSize: true
    MinimumColumns: 8
    Taborder: 0
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_pProductAttributeFilter#791.def
ÎļþÒÑɾ³ý
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_pRibbon.def
@@ -1,7 +1,7 @@
Quintiq file version 2.0
Component pRibbon
{
  #keys: '[414996.1.209190876]'
  #keys: '[414996.1.230731096]'
  BaseType: 'WebPanel'
  Children:
  [
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_pRibbonDown.def
@@ -1,13 +1,13 @@
Quintiq file version 2.0
Component pRibbonDown
{
  #keys: '[414996.1.210702896]'
  #keys: '[414996.1.230731097]'
  BaseType: 'WebPanel'
  Children:
  [
    Component dsStartDate id:dsStartDate_88
    Component dsStartDate
    {
      #keys: '[414996.1.210703089]'
      #keys: '[414996.1.230731098]'
      BaseType: 'WebDateSelector'
      Properties:
      [
@@ -15,9 +15,9 @@
        Taborder: 0
      ]
    }
    Component dhStartDate id:dhStartDate_21
    Component dhStartDate
    {
      #keys: '[414996.1.210703119]'
      #keys: '[414996.1.230731099]'
      BaseType: 'WebDataHolder'
      Databinding: 'Date*'
      Properties:
@@ -25,9 +25,9 @@
        Taborder: 1
      ]
    }
    Component dsEndDate id:dsEndDate_832
    Component dsEndDate
    {
      #keys: '[414996.1.210703145]'
      #keys: '[414996.1.230731100]'
      BaseType: 'WebDateSelector'
      Properties:
      [
@@ -36,9 +36,9 @@
        Taborder: 2
      ]
    }
    Component dhEndDate id:dhEndDate_778
    Component dhEndDate
    {
      #keys: '[414996.1.210703175]'
      #keys: '[414996.1.230731101]'
      BaseType: 'WebDataHolder'
      Databinding: 'Date*'
      Properties:
@@ -46,44 +46,7 @@
        Taborder: 3
      ]
    }
    #child: pExport_870
    Component lAsyncFlag
    {
      #keys: '[414996.1.209192380]'
      BaseType: 'WebLabel'
      Properties:
      [
        DataBinding: 'dhAsyncFlag.Data.State'
        Label: '运行状态:'
        Taborder: 5
      ]
    }
    Component dhAsyncFlag id:dhAsyncFlag_5
    {
      #keys: '[414996.1.209192410]'
      BaseType: 'WebDataHolder'
      Databinding: 'AsyncFlag'
      Children:
      [
        Component deAsyncFlag id:deAsyncFlag_147
        {
          #keys: '[414996.1.209192411]'
          BaseType: 'WebDataExtractor'
          Properties:
          [
            DataType: 'RecycleBin'
            FixedFilter: 'object.Name() = MP_Cell_AnnualPlanReport::GetTableName()'
            Source: 'RecycleBin'
            Taborder: 0
            Transformation: 'AsyncFlag'
          ]
        }
      ]
      Properties:
      [
        Taborder: 6
      ]
    }
    #child: pExport_94
  ]
  Properties:
  [
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Component_pRibbonUp.def
@@ -1,13 +1,13 @@
Quintiq file version 2.0
Component pRibbonUp
{
  #keys: '[414996.1.210863284]'
  #keys: '[414996.1.230731109]'
  BaseType: 'WebPanel'
  Children:
  [
    Component bCreateBaseData id:bCreateBaseData_529
    Component bCreateBaseData
    {
      #keys: '[414996.1.210702981]'
      #keys: '[414996.1.230731110]'
      BaseType: 'WebButton'
      Properties:
      [
@@ -16,9 +16,9 @@
        Taborder: 0
      ]
    }
    Component bCreateFullTable id:bCreateFullTable_568
    Component bCreateFullTable
    {
      #keys: '[414996.1.210703007]'
      #keys: '[414996.1.230731111]'
      BaseType: 'WebButton'
      Properties:
      [
@@ -27,9 +27,9 @@
        Taborder: 1
      ]
    }
    Component rbgTimeUnit id:rbgTimeUnit_925
    Component rbgTimeUnit
    {
      #keys: '[414996.1.210703033]'
      #keys: '[414996.1.230731112]'
      BaseType: 'WebRadioButtonGroup'
      Properties:
      [
@@ -40,9 +40,9 @@
        Taborder: 2
      ]
    }
    Component dhTimeUnit id:dhTimeUnit_71
    Component dhTimeUnit
    {
      #keys: '[414996.1.210703063]'
      #keys: '[414996.1.230731113]'
      BaseType: 'WebDataHolder'
      Databinding: 'String*'
      Properties:
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_ListGenerations_916_OnClick.def
ÎļþÃû´Ó _Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_ListGenerations_529_OnClick.def ÐÞ¸Ä
@@ -1,10 +1,10 @@
Quintiq file version 2.0
#parent: ListGenerations_529
#parent: ListGenerations_916
Response OnClick (
  LocalValue selection
) id:Response_ListGenerations_529_OnClick
) id:Response_ListGenerations_916_OnClick
{
  #keys: '[414996.1.209190753]'
  #keys: '[414996.1.230731048]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebList_OnClick'
  GroupServerCalls: true
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_ListMQBMLB_865_OnClick.def
copy from _Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_ListPowers_568_OnClick.def copy to _Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_ListMQBMLB_865_OnClick.def
Îļþ´Ó _Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_ListPowers_568_OnClick.def ¸´ÖÆ
@@ -1,10 +1,10 @@
Quintiq file version 2.0
#parent: ListPowers_568
#parent: ListMQBMLB_865
Response OnClick (
  LocalValue selection
) id:Response_ListPowers_568_OnClick
) id:Response_ListMQBMLB_865_OnClick
{
  #keys: '[414996.1.209190749]'
  #keys: '[414996.1.230731057]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebList_OnClick'
  GroupServerCalls: true
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_ListMQBMLB_925_OnClick.def
ÎļþÒÑɾ³ý
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_ListPowers_509_OnClick.def
ÎļþÃû´Ó _Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_ListPowers_568_OnClick.def ÐÞ¸Ä
@@ -1,10 +1,10 @@
Quintiq file version 2.0
#parent: ListPowers_568
#parent: ListPowers_509
Response OnClick (
  LocalValue selection
) id:Response_ListPowers_568_OnClick
) id:Response_ListPowers_509_OnClick
{
  #keys: '[414996.1.209190749]'
  #keys: '[414996.1.230731053]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebList_OnClick'
  GroupServerCalls: true
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pAnnualPlanReport_921_dhAnnualPlanTable_OnDataChanged.def
ÎļþÃû´Ó _Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pAnnualPlanReport_439_dhAnnualPlanTable_OnDataChanged.def ÐÞ¸Ä
@@ -1,8 +1,8 @@
Quintiq file version 2.0
#parent: pAnnualPlanReport_439/dhAnnualPlanTable
Response OnDataChanged () id:Response_pAnnualPlanReport_439_dhAnnualPlanTable_OnDataChanged
#parent: pAnnualPlanReport_921/dhAnnualPlanTable
Response OnDataChanged () id:Response_pAnnualPlanReport_921_dhAnnualPlanTable_OnDataChanged
{
  #keys: '[414996.1.209190954]'
  #keys: '[414996.1.230731025]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebComponent_OnDataChanged'
  GroupServerCalls: true
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pAnnualPlanReport_921_dhCheckedEntitys_OnDataChanged.def
ÎļþÃû´Ó _Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pAnnualPlanReport_439_dhCheckedEntitys_OnDataChanged.def ÐÞ¸Ä
@@ -1,8 +1,8 @@
Quintiq file version 2.0
#parent: pAnnualPlanReport_439/dhCheckedEntitys
Response OnDataChanged () id:Response_pAnnualPlanReport_439_dhCheckedEntitys_OnDataChanged
#parent: pAnnualPlanReport_921/dhCheckedEntitys
Response OnDataChanged () id:Response_pAnnualPlanReport_921_dhCheckedEntitys_OnDataChanged
{
  #keys: '[414996.1.209190951]'
  #keys: '[414996.1.230731022]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebComponent_OnDataChanged'
  GroupServerCalls: true
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pAnnualPlanReport_921_dhCheckedProducts_OnDataChanged.def
ÎļþÃû´Ó _Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pAnnualPlanReport_439_dhCheckedProducts_OnDataChanged.def ÐÞ¸Ä
@@ -1,8 +1,8 @@
Quintiq file version 2.0
#parent: pAnnualPlanReport_439/dhCheckedProducts
Response OnDataChanged () id:Response_pAnnualPlanReport_439_dhCheckedProducts_OnDataChanged
#parent: pAnnualPlanReport_921/dhCheckedProducts
Response OnDataChanged () id:Response_pAnnualPlanReport_921_dhCheckedProducts_OnDataChanged
{
  #keys: '[414996.1.209190956]'
  #keys: '[414996.1.230731027]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebComponent_OnDataChanged'
  GroupServerCalls: true
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pAnnualPlanReport_921_dhFinelEntitys_OnCreated.def
ÎļþÃû´Ó _Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pAnnualPlanReport_439_dhFinelEntitys_OnCreated.def ÐÞ¸Ä
@@ -1,8 +1,8 @@
Quintiq file version 2.0
#parent: pAnnualPlanReport_439/dhFinelEntitys
Response OnCreated () id:Response_pAnnualPlanReport_439_dhFinelEntitys_OnCreated
#parent: pAnnualPlanReport_921/dhFinelEntitys
Response OnCreated () id:Response_pAnnualPlanReport_921_dhFinelEntitys_OnCreated
{
  #keys: '[414996.1.209190950]'
  #keys: '[414996.1.230731021]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebComponent_OnCreated'
  GroupServerCalls: true
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pAnnualPlanReport_921_dhFinelProducts_OnCreated.def
ÎļþÃû´Ó _Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pAnnualPlanReport_439_dhFinelProducts_OnCreated.def ÐÞ¸Ä
@@ -1,8 +1,8 @@
Quintiq file version 2.0
#parent: pAnnualPlanReport_439/dhFinelProducts
Response OnCreated () id:Response_pAnnualPlanReport_439_dhFinelProducts_OnCreated
#parent: pAnnualPlanReport_921/dhFinelProducts
Response OnCreated () id:Response_pAnnualPlanReport_921_dhFinelProducts_OnCreated
{
  #keys: '[414996.1.209190955]'
  #keys: '[414996.1.230731026]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebComponent_OnCreated'
  GroupServerCalls: true
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pExport_94_bExport_OnClick.def
ÎļþÃû´Ó _Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pExport_870_bExport_OnClick.def ÐÞ¸Ä
@@ -1,8 +1,8 @@
Quintiq file version 2.0
#parent: pExport_870/bExport
Response OnClick () id:Response_pExport_870_bExport_OnClick
#parent: pExport_94/bExport
Response OnClick () id:Response_pExport_94_bExport_OnClick
{
  #keys: '[414996.1.210703207]'
  #keys: '[414996.1.230731061]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebButton_OnClick'
  QuillAction
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pExport_94_dhXMLDataListener_OnDataChanged.def
ÎļþÃû´Ó _Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pExport_870_dhXMLDataListener_OnDataChanged.def ÐÞ¸Ä
@@ -1,8 +1,8 @@
Quintiq file version 2.0
#parent: pExport_870/dhXMLDataListener
Response OnDataChanged () id:Response_pExport_870_dhXMLDataListener_OnDataChanged
#parent: pExport_94/dhXMLDataListener
Response OnDataChanged () id:Response_pExport_94_dhXMLDataListener_OnDataChanged
{
  #keys: '[414996.1.210703206]'
  #keys: '[414996.1.230731060]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebComponent_OnDataChanged'
  QuillAction
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pGeneration_523_dhCheckGenerations_OnDataChanged.def
ÎļþÃû´Ó _Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pGeneration_812_dhCheckGenerations_OnDataChanged.def ÐÞ¸Ä
@@ -1,8 +1,8 @@
Quintiq file version 2.0
#parent: pGeneration_812/dhCheckGenerations
Response OnDataChanged () id:Response_pGeneration_812_dhCheckGenerations_OnDataChanged
#parent: pGeneration_523/dhCheckGenerations
Response OnDataChanged () id:Response_pGeneration_523_dhCheckGenerations_OnDataChanged
{
  #keys: '[414996.1.209190752]'
  #keys: '[414996.1.230731050]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebComponent_OnDataChanged'
  GroupServerCalls: true
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pGeneration_523_dhGenerations_OnCreated.def
ÎļþÃû´Ó _Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pGeneration_812_dhGenerations_OnCreated.def ÐÞ¸Ä
@@ -1,8 +1,8 @@
Quintiq file version 2.0
#parent: pGeneration_812/dhGenerations
Response OnCreated () id:Response_pGeneration_812_dhGenerations_OnCreated
#parent: pGeneration_523/dhGenerations
Response OnCreated () id:Response_pGeneration_523_dhGenerations_OnCreated
{
  #keys: '[414996.1.209190755]'
  #keys: '[414996.1.230731051]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebComponent_OnCreated'
  QuillAction
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pMQBMLB_567_dhCheckMQBMLB_OnDataChanged.def
ÎļþÃû´Ó _Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pMQBMLB_393_dhCheckMQBMLB_OnDataChanged.def ÐÞ¸Ä
@@ -1,8 +1,8 @@
Quintiq file version 2.0
#parent: pMQBMLB_393/dhCheckMQBMLB
Response OnDataChanged () id:Response_pMQBMLB_393_dhCheckMQBMLB_OnDataChanged
#parent: pMQBMLB_567/dhCheckMQBMLB
Response OnDataChanged () id:Response_pMQBMLB_567_dhCheckMQBMLB_OnDataChanged
{
  #keys: '[414996.1.209190744]'
  #keys: '[414996.1.230731056]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebComponent_OnDataChanged'
  GroupServerCalls: true
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pMQBMLB_567_dhMQBMLB_OnCreated.def
ÎļþÃû´Ó _Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pMQBMLB_393_dhMQBMLB_OnCreated.def ÐÞ¸Ä
@@ -1,8 +1,8 @@
Quintiq file version 2.0
#parent: pMQBMLB_393/dhMQBMLB
Response OnCreated () id:Response_pMQBMLB_393_dhMQBMLB_OnCreated
#parent: pMQBMLB_567/dhMQBMLB
Response OnCreated () id:Response_pMQBMLB_567_dhMQBMLB_OnCreated
{
  #keys: '[414996.1.209190747]'
  #keys: '[414996.1.230731059]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebComponent_OnCreated'
  QuillAction
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pPower_266_dhCheckPowers_OnDataChanged.def
ÎļþÃû´Ó _Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pPower_480_dhCheckPowers_OnDataChanged.def ÐÞ¸Ä
@@ -1,8 +1,8 @@
Quintiq file version 2.0
#parent: pPower_480/dhCheckPowers
Response OnDataChanged () id:Response_pPower_480_dhCheckPowers_OnDataChanged
#parent: pPower_266/dhCheckPowers
Response OnDataChanged () id:Response_pPower_266_dhCheckPowers_OnDataChanged
{
  #keys: '[414996.1.209190748]'
  #keys: '[414996.1.230731052]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebComponent_OnDataChanged'
  GroupServerCalls: true
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pPower_266_dhPowers_OnCreated.def
ÎļþÃû´Ó _Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pPower_480_dhPowers_OnCreated.def ÐÞ¸Ä
@@ -1,8 +1,8 @@
Quintiq file version 2.0
#parent: pPower_480/dhPowers
Response OnCreated () id:Response_pPower_480_dhPowers_OnCreated
#parent: pPower_266/dhPowers
Response OnCreated () id:Response_pPower_266_dhPowers_OnCreated
{
  #keys: '[414996.1.209190751]'
  #keys: '[414996.1.230731055]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebComponent_OnCreated'
  QuillAction
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pRibbonDown_dhAsyncFlag_OnDataChanged.def
ÎļþÒÑɾ³ý
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pRibbonDown_dhEndDate_OnCreated.def
ÎļþÃû´Ó _Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pRibbonDown_dhEndDate_OnCreated#141.def ÐÞ¸Ä
@@ -1,8 +1,8 @@
Quintiq file version 2.0
#parent: pRibbonDown/dhEndDate_778
Response OnCreated () id:Response_pRibbon_dhEndDate_OnCreated_141
#parent: pRibbonDown/dhEndDate
Response OnCreated () id:Response_pRibbonDown_dhEndDate_OnCreated
{
  #keys: '[414996.1.210703173]'
  #keys: '[414996.1.230731044]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebComponent_OnCreated'
  GroupServerCalls: true
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pRibbonDown_dhStartDate_OnCreated.def
ÎļþÃû´Ó _Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pRibbonDown_dhStartDate_OnCreated#368.def ÐÞ¸Ä
@@ -1,8 +1,8 @@
Quintiq file version 2.0
#parent: pRibbonDown/dhStartDate_21
Response OnCreated () id:Response_pRibbon_dhStartDate_OnCreated_368
#parent: pRibbonDown/dhStartDate
Response OnCreated () id:Response_pRibbonDown_dhStartDate_OnCreated
{
  #keys: '[414996.1.210703117]'
  #keys: '[414996.1.230731046]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebComponent_OnCreated'
  GroupServerCalls: true
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pRibbonDown_dsEndDate_OnChanged.def
ÎļþÃû´Ó _Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pRibbonDown_dsEndDate_OnChanged#957.def ÐÞ¸Ä
@@ -1,8 +1,8 @@
Quintiq file version 2.0
#parent: pRibbonDown/dsEndDate_832
Response OnChanged () id:Response_pRibbon_dsEndDate_OnChanged_957
#parent: pRibbonDown/dsEndDate
Response OnChanged () id:Response_pRibbonDown_dsEndDate_OnChanged
{
  #keys: '[414996.1.210703144]'
  #keys: '[414996.1.230731045]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebDateTimeFieldBase_OnChanged'
  GroupServerCalls: true
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pRibbonDown_dsStartDate_OnChanged.def
ÎļþÃû´Ó _Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pRibbonDown_dsStartDate_OnChanged#648.def ÐÞ¸Ä
@@ -1,8 +1,8 @@
Quintiq file version 2.0
#parent: pRibbonDown/dsStartDate_88
Response OnChanged () id:Response_pRibbon_dsStartDate_OnChanged_648
#parent: pRibbonDown/dsStartDate
Response OnChanged () id:Response_pRibbonDown_dsStartDate_OnChanged
{
  #keys: '[414996.1.210703088]'
  #keys: '[414996.1.230731047]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebDateTimeFieldBase_OnChanged'
  GroupServerCalls: true
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pRibbonUp_bCreateBaseData_OnClick#480.def
ÎļþÒÑɾ³ý
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pRibbonUp_bCreateBaseData_OnClick.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,18 @@
Quintiq file version 2.0
#parent: pRibbonUp/bCreateBaseData
Response OnClick () id:Response_pRibbonUp_bCreateBaseData_OnClick
{
  #keys: '[414996.1.230731041]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebButton_OnClick'
  QuillAction
  {
    Body:
    [*
      macroPlanMDSIDs := ApplicationMacroPlanner.GetMacroPlanMDSIDsByName( "计划汇总" );
      ArchiveCell_AnnualPlanReport::AsyncCreateTables( macroPlanMDSIDs,Archive );
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pRibbonUp_bCreateFullTable_OnClick#393.def
ÎļþÒÑɾ³ý
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pRibbonUp_bCreateFullTable_OnClick.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,20 @@
Quintiq file version 2.0
#parent: pRibbonUp/bCreateFullTable
Response OnClick () id:Response_pRibbonUp_bCreateFullTable_OnClick
{
  #keys: '[414996.1.230731040]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebButton_OnClick'
  QuillAction
  {
    Body:
    [*
      table := ArchiveCell_AnnualPlanReport::CreateFullTable( Archive,RecycleBin,MacroPlan );
      dhAnnualPlanTable.Data( table );
      WebMessageBox::Success( "Success" );
      //ArchiveCell_AnnualPlanReport::AsyncCreateFullTable( Archive,RecycleBin,MacroPlan );
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pRibbonUp_dhTimeUnit_OnCreated.def
ÎļþÃû´Ó _Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pRibbonUp_dhTimeUnit_OnCreated#338.def ÐÞ¸Ä
@@ -1,8 +1,8 @@
Quintiq file version 2.0
#parent: pRibbonUp/dhTimeUnit_71
Response OnCreated () id:Response_pRibbon_dhTimeUnit_OnCreated_338
#parent: pRibbonUp/dhTimeUnit
Response OnCreated () id:Response_pRibbonUp_dhTimeUnit_OnCreated
{
  #keys: '[414996.1.210703061]'
  #keys: '[414996.1.230731038]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebComponent_OnCreated'
  GroupServerCalls: true
_Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pRibbonUp_rbgTimeUnit_OnUserChanged.def
ÎļþÃû´Ó _Main/UI/MacroPlannerWebApp/Component_FormAnnualPlanReport/Response_pRibbonUp_rbgTimeUnit_OnUserChanged#836.def ÐÞ¸Ä
@@ -1,8 +1,8 @@
Quintiq file version 2.0
#parent: pRibbonUp/rbgTimeUnit_925
Response OnUserChanged () id:Response_pRibbon_rbgTimeUnit_OnUserChanged_836
#parent: pRibbonUp/rbgTimeUnit
Response OnUserChanged () id:Response_pRibbonUp_rbgTimeUnit_OnUserChanged
{
  #keys: '[414996.1.210703032]'
  #keys: '[414996.1.230731039]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebRadioButtonGroup_OnUserChanged'
  GroupServerCalls: true
_Main/UI/MacroPlannerWebApp/Component_FormDemandComparison/Component_MatrixEditor#298.def
@@ -45,8 +45,8 @@
          Properties:
          [
            DataType: 'LocalTable'
            FilterArguments: 'checkedProduct:QMacroPlanner::FormDemandComparison.dhFinelProduct'
            FixedFilter: 'exists( checkedProduct,Elements,product,product.ID() = object.ProductID())'
            FilterArguments: 'checkedProducts:QMacroPlanner::FormDemandComparison.dhFinelProducts'
            FixedFilter: 'exists( checkedProducts,Elements,product,product.ID() = object.ProductID())'
            Source: 'dhComparisonData'
            Taborder: 0
            Transformation: 'LocalRow'
_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Component_pRibbonDown#478.def
@@ -27,43 +27,6 @@
        Taborder: 1
      ]
    }
    Component dhAsyncFlag
    {
      #keys: '[414996.1.214519511]'
      BaseType: 'WebDataHolder'
      Databinding: 'AsyncFlag'
      Children:
      [
        Component deAsyncFlag
        {
          #keys: '[414996.1.214519512]'
          BaseType: 'WebDataExtractor'
          Properties:
          [
            DataType: 'RecycleBin'
            FixedFilter: 'object.Name() = MP_Cell_ScheduleSummary::GetTableName()'
            Source: 'RecycleBin'
            Taborder: 0
            Transformation: 'AsyncFlag'
          ]
        }
      ]
      Properties:
      [
        Taborder: 3
      ]
    }
    Component lAsyncFlag id:lAsyncFlag_19
    {
      #keys: '[414996.1.214519535]'
      BaseType: 'WebLabel'
      Properties:
      [
        DataBinding: 'dhAsyncFlag.Data.State'
        Label: '运行状态:'
        Taborder: 2
      ]
    }
  ]
  Properties:
  [
_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Component_pScheduleSummary.def
@@ -46,22 +46,6 @@
      #keys: '[412672.1.96380914]'
      BaseType: 'WebDataHolder'
      Databinding: 'LocalTable'
      Children:
      [
        Component deScheduleSummaryTable
        {
          #keys: '[414996.1.214519458]'
          BaseType: 'WebDataExtractor'
          Properties:
          [
            DataType: 'RecycleBin'
            FixedFilter: 'object.Name() = MP_Cell_ScheduleSummary::GetTableName()'
            Source: 'RecycleBin'
            Taborder: 0
            Transformation: 'LocalTable'
          ]
        }
      ]
      Properties:
      [
        Taborder: 1
_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Response_pRibbonDown_478_dhAsyncFlag_OnDataChanged.def
ÎļþÒÑɾ³ý
_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Response_pRibbonUp_88_bCreateBaseData_OnClick#88.def
@@ -10,7 +10,7 @@
    Body:
    [*
      macroPlanMDSIDs := ApplicationMacroPlanner.GetMacroPlanMDSIDsByName( "计划汇总" );
      MP_Cell_ScheduleSummary::AsyncCreateTables( macroPlanMDSIDs );
      ArchiveCell_ScheduleSummary::AsyncCreateTables( macroPlanMDSIDs,Archive );
    *]
    GroupServerCalls: false
  }
_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Response_pRibbonUp_88_bCreateFullTable_OnClick#71.def
@@ -9,9 +9,9 @@
  {
    Body:
    [*
      macroPlanMDSIDs := ApplicationMacroPlanner.GetMacroPlanMDSIDsByName( "计划汇总" );
      MP_Cell_ScheduleSummary::AsyncCreateFullTable( macroPlanMDSIDs,RecycleBin,Archive, MacroPlan );
      table := ArchiveCell_ScheduleSummary::CreateFullTable( Archive,RecycleBin, MacroPlan );
      dhScheduleSummaryTable.Data( table );
      WebMessageBox::Success( "Success" );
    *]
    GroupServerCalls: false
  }
_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Response_pScheduleSummary_dhScheduleSummaryTable_OnCreated.def
ÎļþÒÑɾ³ý