From 46f580350af9ee2bbccfa88fea8532b129564ce0 Mon Sep 17 00:00:00 2001
From: xiaoding721 <33130084+xiaoding721@users.noreply.github.com>
Date: 星期一, 30 九月 2024 17:28:12 +0800
Subject: [PATCH] 修复一些bug
---
_Main/BL/Type_LocalCell_OfflinePlanComparison/StaticMethod_GetColumnXML.qbl | 50 ---
_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanComparison/Response_PanelDemandComparison_634_dhTable_OnDataChanged.def | 4
_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanComparison/Response_PanelRibbon504_bComparison_OnClick#613.def | 2
_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Response_PanelRibbon206_478_bExportTemplate_OnClick.def | 18 +
_Main/UI/MacroPlannerWebApp/Component_StandardHoursReport/Response_pOperaction_dhXMLDataListener_OnDataChanged.def | 22 ++
_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanComparison/Component_PanelRibbon504.def | 36 +++
_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanComparison/Response_PanelRibbon504_dhXMLDataListener_OnDataChanged.def | 22 ++
_Main/BL/Type_LocalCell_ProductionComparison/StaticMethod_GetColumnXML.qbl | 77 +++----
_Main/BL/Type_LocalCell_OfflinePlanComparison/StaticMethod_AsyncExport.qbl | 8
_Main/BL/Type_LocalCell_ProductionComparison/StaticMethod_GetTableName.qbl | 10
_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanComparison/Response_PanelRibbon504_bExport_OnClick#891.def | 18 +
_Main/UI/MacroPlannerWebApp/Component_Form701/Component_PanelDemandComparison.def | 2
_Main/UI/MacroPlannerWebApp/Component_Form701/Response_PanelRibbon504_801_bComparison_OnClick.def | 2
_Main/UI/MacroPlannerWebApp/Component_Form701/Response_PanelDemandComparison_dhTable_OnDataChanged.def | 4
_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Response_PanelRibbon322_88_ButtonRibbon820_OnClick#71.def | 6
_Main/BL/Type_LocalCell_OfflinePlanComparison/StaticMethod_GetTableName.qbl | 10
_Main/BL/Type_OfflinePlanTable/Method_Comparison.qbl | 41 +++
_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanComparison/_ROOT_Component_FormOfflinePlanComparison.def | 1
_Main/UI/MacroPlannerWebApp/Component_StandardHoursReport/Component_pOperaction#633.def | 12 -
_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanComparison/Component_PanelDemandComparison#634.def | 2
_Main/BL/Type_ExportXMLManager/StaticMethod_AwaitLocalTableXMLData.qbl | 14
_Main/UI/MacroPlannerWebApp/Component_Form701/Response_PanelRibbon504_801_dhXMLDataListener_OnDataChanged#648.def | 22 ++
_Main/UI/MacroPlannerWebApp/Component_Form701/Response_PanelRibbon504_801_bExport_OnClick.def | 18 +
_Main/UI/MacroPlannerWebApp/Component_Form701/_ROOT_Component_FormOfflinePlanChanges#701.def | 1
_Main/BL/Type_LocalCell_ProductionComparison/StaticMethod_AsyncExport.qbl | 10
_Main/UI/MacroPlannerWebApp/Component_Form701/Component_PanelRibbon504#801.def | 52 ++++
_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Component_PanelRibbon.def | 2
_Main/UI/MacroPlannerWebApp/Component_Form701/Response_PanelRibbon504_801_dhOfflinePlanTables_OnCreated#57.def | 21 +
_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Response_PanelRibbon206_478_bImportOutput_OnClick.def | 6
/dev/null | 32 --
_Main/BL/Type_LocalCell_OfflinePlanComparison/StaticMethod_Compared.qbl | 2
_Main/UI/MacroPlannerWebApp/Component_Form701/Component_MatrixEditor.def | 6
_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Component_PanelRibbon206#478.def | 38 +++
_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanComparison/Component_MatrixEditor#988.def | 6
_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Response_PanelRibbon322_88_ButtonRibbon_OnClick#88.def | 6
_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Component_PanelRibbon322#88.def | 41 ++
36 files changed, 436 insertions(+), 188 deletions(-)
diff --git a/_Main/BL/Type_ExportXMLManager/StaticMethod_AwaitLocalTableXMLData.qbl b/_Main/BL/Type_ExportXMLManager/StaticMethod_AwaitLocalTableXMLData.qbl
index d30416e..f87cb3f 100644
--- a/_Main/BL/Type_ExportXMLManager/StaticMethod_AwaitLocalTableXMLData.qbl
+++ b/_Main/BL/Type_ExportXMLManager/StaticMethod_AwaitLocalTableXMLData.qbl
@@ -10,14 +10,18 @@
[*
// rislai Jun-21-2024 (created)
manager := select( owner,ExportXMLManager,manager,manager.Name() = tableName );
- if( isnull( manager )){
- manager := owner.ExportXMLManager( relnew,Name := tableName,SheetName := tableName );
- }else{
- manager.ExportXMLData( relflush );
+ if( not isnull( manager )){
+ manager.Delete();
}
+ manager := owner.ExportXMLManager( relnew,Name := tableName,SheetName := tableName );
traverse( columnXMLData,Elements,element,element.TrimBoth() <> "" ){
data := manager.ExportXMLData( relnew, XML := element);
- data.Priority( data.CalculatePriority( ));
+ try{
+ data.Priority( data.CalculatePriority( ));
+ }onerror{
+ info( element );
+ }
+
}
*]
}
diff --git a/_Main/BL/Type_LocalCell_OfflinePlanComparison/StaticMethod_AsyncExport.qbl b/_Main/BL/Type_LocalCell_OfflinePlanComparison/StaticMethod_AsyncExport.qbl
index d19420b..588f44b 100644
--- a/_Main/BL/Type_LocalCell_OfflinePlanComparison/StaticMethod_AsyncExport.qbl
+++ b/_Main/BL/Type_LocalCell_OfflinePlanComparison/StaticMethod_AsyncExport.qbl
@@ -12,21 +12,21 @@
// rislai Jun-20-2024 (created)
sortColumns := selectsortedset( columns,Elements,column,true,column.Index());
- attributeNames := LocalCell_DemandComparison::GetAttributeNames();
+ attributeNames := LocalCell_OfflinePlanComparison::GetAttributeNames();
columnstring := emit( "" );
flag := true;
traverse( sortColumns,Elements,sortColumn ){
if( flag ){
- attributeXML := rows -> LocalCell_DemandComparison::GetColumnXML( sortColumn,attributeNames,"attribute",macroPlan );
+ attributeXML := rows -> LocalCell_OfflinePlanComparison::GetColumnXML( sortColumn,attributeNames,"attribute",macroPlan );
columnstring := columnstring.Merge( attributeXML )
flag := false;
}
- cellxml := rows -> LocalCell_DemandComparison::GetColumnXML( sortColumn,attributeNames ,"data",macroPlan );
+ cellxml := rows -> LocalCell_OfflinePlanComparison::GetColumnXML( sortColumn,attributeNames ,"data",macroPlan );
columnstring := columnstring.Merge( cellxml);
}
- columnstring -> GroupAll() -> ExportXMLManager::AwaitLocalTableXMLData( recycleBin,guard( rows.Element(0).LocalTable().Name(),"Sheet1") );
+ columnstring -> GroupAll() -> ExportXMLManager::AwaitLocalTableXMLData( recycleBin,LocalCell_OfflinePlanComparison::GetTableName() );
*]
}
diff --git a/_Main/BL/Type_LocalCell_OfflinePlanComparison/StaticMethod_Compared.qbl b/_Main/BL/Type_LocalCell_OfflinePlanComparison/StaticMethod_Compared.qbl
index 16f2c4d..30a7609 100644
--- a/_Main/BL/Type_LocalCell_OfflinePlanComparison/StaticMethod_Compared.qbl
+++ b/_Main/BL/Type_LocalCell_OfflinePlanComparison/StaticMethod_Compared.qbl
@@ -9,7 +9,7 @@
TextBody:
[*
// rislai Jun-20-2024 (created)
- table := recycleBin.LocalTable( relnew,Name := "涓嬬嚎璁″垝鎶ヨ〃瀵规瘮");
+ table := recycleBin.LocalTable( relnew,Name := LocalCell_OfflinePlanComparison::GetTableName());
localColumns := construct( LocalColumns );
localColumnIndexTree := NamedValueTree::Create();
diff --git a/_Main/BL/Type_LocalCell_OfflinePlanComparison/StaticMethod_GetColumnXML.qbl b/_Main/BL/Type_LocalCell_OfflinePlanComparison/StaticMethod_GetColumnXML.qbl
index 6d45dc4..1de038a 100644
--- a/_Main/BL/Type_LocalCell_OfflinePlanComparison/StaticMethod_GetColumnXML.qbl
+++ b/_Main/BL/Type_LocalCell_OfflinePlanComparison/StaticMethod_GetColumnXML.qbl
@@ -13,14 +13,14 @@
// rislai Jun-21-2024 (created)
// rislai Jun-20-2024 (created)
columnXML := "";
- cells := selectsortedset( column, LocalCell.astype( LocalCell_DemandComparison ), cell,
+ cells := selectsortedset( column, LocalCell.astype( LocalCell_OfflinePlanComparison ), cell,
exists( rows,Elements,element,element = cell.LocalRow()), cell.LocalRow().Index());
if( type = "data" ){
columnXML := "";
if( column.IsAttrbuteColumn() ){
columnXML := "<column><name>" + column.Name() + "</name><type>String</type>";
}else{
- columnXML := "<column><name>" + column.Name() + "</name><type>Number</type>";
+ columnXML := "<column><name>" + column.Date().Format( "Y/M2/D2") + "</name><type>Number</type>";
}
traverse ( cells, Elements, cell ) {
traverse( attributeNames ,Elements,e ){
@@ -31,12 +31,12 @@
columnXML := columnXML + "</column>";
}
if( type = "attribute" ){
- columnXML0_1 := "<column><name>Sales Segment</name><type>String</type>";
- columnXML0_2 := "<column><name>Generation</name><type>String</type>";
- columnXML0_3 := "<column><name>MQB/MLB</name><type>String</type>";
- columnXML0_4 := "<column><name>鍔熺巼</name><type>String</type>";
+ // columnXML0_1 := "<column><name>Sales Segment</name><type>String</type>";
+ // columnXML0_2 := "<column><name>Generation</name><type>String</type>";
+ // columnXML0_3 := "<column><name>MQB/MLB</name><type>String</type>";
+ // columnXML0_4 := "<column><name>鍔熺巼</name><type>String</type>";
- columnXML1 := "<column><name>Product ID</name><type>String</type>";
+ columnXML1 := "<column><name>Line</name><type>String</type>";
columnXML2 := "<column><name>Attribute</name><type>String</type>";
traverse ( cells, Elements, cell ) {
@@ -46,50 +46,16 @@
cellXML := '<cell value="' + cell.LocalRow().Name() + '"/>'
columnXML1 := columnXML1 + cellXML;
- salesSegment := select( cell.LocalRow().LocalTable(),LocalColumn.LocalCell.astype( LocalCell_DemandComparison ),temp_cell,temp_cell.LocalRow() = cell.LocalRow() and temp_cell.LocalColumn().Name() = "浜у湴");
- if( not isnull( salesSegment )){
- cellXML0_1 := '<cell value="' + ifexpr( salesSegment.BaseVersionValue() <> "绌�",salesSegment.BaseVersionValue(),salesSegment.CompareVersionValue()) + '"/>';
- columnXML0_1 := columnXML0_1 + cellXML0_1;
- }else{
- cellXML0_1 := '<cell value=" "/>'
- columnXML0_1 := columnXML0_1 + cellXML0_1;
- }
-
- product := select( macroPlan,Product_MP,product,product.ID() = cell.LocalRow().Name() );
- if( not isnull( product )){
- cellXML0_2 := '<cell value="' + product.Generation() + '"/>';
- cellXML0_3 := '<cell value="' + product.MQBMLB() + '"/>';
- cellXML0_4 := '<cell value="' + product.Power() + '"/>';
- columnXML0_2 := columnXML0_2 + cellXML0_2;
- columnXML0_3 := columnXML0_3 + cellXML0_3;
- columnXML0_4 := columnXML0_4 + cellXML0_4;
- }else{
- cellXML0_2 := '<cell value=" "/>';
- cellXML0_3 := '<cell value=" "/>';
- cellXML0_4 := '<cell value=" "/>';
- columnXML0_2 := columnXML0_2 + cellXML0_2;
- columnXML0_3 := columnXML0_3 + cellXML0_3;
- columnXML0_4 := columnXML0_4 + cellXML0_4;
- }
-
flag := false;
}else{
cellXML := '<cell value=" "/>'
columnXML1 := columnXML1 + cellXML;
- cellXML0_1 := '<cell value=" "/>'
- cellXML0_2 := '<cell value=" "/>';
- cellXML0_3 := '<cell value=" "/>';
- cellXML0_4 := '<cell value=" "/>';
- columnXML0_1 := columnXML0_1 + cellXML0_1;
- columnXML0_2 := columnXML0_2 + cellXML0_2;
- columnXML0_3 := columnXML0_3 + cellXML0_3;
- columnXML0_4 := columnXML0_4 + cellXML0_4;
}
cellXML := '<cell value="' + e + '"/>'
columnXML2 := columnXML2 + cellXML;
}
}
- columnXML := columnXML0_1 + "</column>" + columnXML0_2 + "</column>" + columnXML0_3 + "</column>" + columnXML0_4 + "</column>" + columnXML1 + "</column>" + columnXML2 + "</column>";
+ columnXML := columnXML1 + "</column>" + columnXML2 + "</column>";
}
return columnXML;
diff --git a/_Main/BL/Type_LocalCell_OfflinePlanComparison/StaticMethod_GetTableName.qbl b/_Main/BL/Type_LocalCell_OfflinePlanComparison/StaticMethod_GetTableName.qbl
new file mode 100644
index 0000000..809a3b7
--- /dev/null
+++ b/_Main/BL/Type_LocalCell_OfflinePlanComparison/StaticMethod_GetTableName.qbl
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod GetTableName () const declarative remote as String
+{
+ TextBody:
+ [*
+ // Akari Sep-30-2024 (created)
+ return "涓嬬嚎璁″垝鎶ヨ〃瀵规瘮";
+ *]
+}
diff --git a/_Main/BL/Type_LocalCell_ProductionComparison/StaticMethod_AsyncExport.qbl b/_Main/BL/Type_LocalCell_ProductionComparison/StaticMethod_AsyncExport.qbl
index d19420b..5f37cc2 100644
--- a/_Main/BL/Type_LocalCell_ProductionComparison/StaticMethod_AsyncExport.qbl
+++ b/_Main/BL/Type_LocalCell_ProductionComparison/StaticMethod_AsyncExport.qbl
@@ -12,21 +12,21 @@
// rislai Jun-20-2024 (created)
sortColumns := selectsortedset( columns,Elements,column,true,column.Index());
- attributeNames := LocalCell_DemandComparison::GetAttributeNames();
+ attributeNames := LocalCell_ProductionComparison::GetAttributeNames();
columnstring := emit( "" );
flag := true;
traverse( sortColumns,Elements,sortColumn ){
if( flag ){
- attributeXML := rows -> LocalCell_DemandComparison::GetColumnXML( sortColumn,attributeNames,"attribute",macroPlan );
+ attributeXML := rows -> LocalCell_ProductionComparison::GetColumnXML( sortColumn,attributeNames,"attribute",macroPlan );
columnstring := columnstring.Merge( attributeXML )
flag := false;
}
- cellxml := rows -> LocalCell_DemandComparison::GetColumnXML( sortColumn,attributeNames ,"data",macroPlan );
+ cellxml := rows -> LocalCell_ProductionComparison::GetColumnXML( sortColumn,attributeNames ,"data",macroPlan );
columnstring := columnstring.Merge( cellxml);
}
-
- columnstring -> GroupAll() -> ExportXMLManager::AwaitLocalTableXMLData( recycleBin,guard( rows.Element(0).LocalTable().Name(),"Sheet1") );
+
+ columnstring -> GroupAll() -> ExportXMLManager::AwaitLocalTableXMLData( recycleBin,LocalCell_ProductionComparison::GetTableName() );
*]
}
diff --git a/_Main/BL/Type_LocalCell_ProductionComparison/StaticMethod_GetColumnXML.qbl b/_Main/BL/Type_LocalCell_ProductionComparison/StaticMethod_GetColumnXML.qbl
index 6d45dc4..e8d52d5 100644
--- a/_Main/BL/Type_LocalCell_ProductionComparison/StaticMethod_GetColumnXML.qbl
+++ b/_Main/BL/Type_LocalCell_ProductionComparison/StaticMethod_GetColumnXML.qbl
@@ -10,17 +10,16 @@
{
TextBody:
[*
- // rislai Jun-21-2024 (created)
- // rislai Jun-20-2024 (created)
+ // rislai Jun-21-2024 (created)
columnXML := "";
- cells := selectsortedset( column, LocalCell.astype( LocalCell_DemandComparison ), cell,
+ cells := selectsortedset( column, LocalCell.astype( LocalCell_ProductionComparison ), cell,
exists( rows,Elements,element,element = cell.LocalRow()), cell.LocalRow().Index());
if( type = "data" ){
columnXML := "";
if( column.IsAttrbuteColumn() ){
columnXML := "<column><name>" + column.Name() + "</name><type>String</type>";
}else{
- columnXML := "<column><name>" + column.Name() + "</name><type>Number</type>";
+ columnXML := "<column><name>" + column.Date().Format( "Y/M2/D2") + "</name><type>Number</type>";
}
traverse ( cells, Elements, cell ) {
traverse( attributeNames ,Elements,e ){
@@ -31,12 +30,12 @@
columnXML := columnXML + "</column>";
}
if( type = "attribute" ){
- columnXML0_1 := "<column><name>Sales Segment</name><type>String</type>";
- columnXML0_2 := "<column><name>Generation</name><type>String</type>";
- columnXML0_3 := "<column><name>MQB/MLB</name><type>String</type>";
- columnXML0_4 := "<column><name>鍔熺巼</name><type>String</type>";
+
+ // columnXML0_2 := "<column><name>Generation</name><type>String</type>";
+ // columnXML0_3 := "<column><name>MQB/MLB</name><type>String</type>";
+ // columnXML0_4 := "<column><name>鍔熺巼</name><type>String</type>";
- columnXML1 := "<column><name>Product ID</name><type>String</type>";
+ columnXML1 := "<column><name>Line</name><type>String</type>";
columnXML2 := "<column><name>Attribute</name><type>String</type>";
traverse ( cells, Elements, cell ) {
@@ -45,51 +44,41 @@
if( flag ){
cellXML := '<cell value="' + cell.LocalRow().Name() + '"/>'
columnXML1 := columnXML1 + cellXML;
-
- salesSegment := select( cell.LocalRow().LocalTable(),LocalColumn.LocalCell.astype( LocalCell_DemandComparison ),temp_cell,temp_cell.LocalRow() = cell.LocalRow() and temp_cell.LocalColumn().Name() = "浜у湴");
- if( not isnull( salesSegment )){
- cellXML0_1 := '<cell value="' + ifexpr( salesSegment.BaseVersionValue() <> "绌�",salesSegment.BaseVersionValue(),salesSegment.CompareVersionValue()) + '"/>';
- columnXML0_1 := columnXML0_1 + cellXML0_1;
- }else{
- cellXML0_1 := '<cell value=" "/>'
- columnXML0_1 := columnXML0_1 + cellXML0_1;
- }
-
- product := select( macroPlan,Product_MP,product,product.ID() = cell.LocalRow().Name() );
- if( not isnull( product )){
- cellXML0_2 := '<cell value="' + product.Generation() + '"/>';
- cellXML0_3 := '<cell value="' + product.MQBMLB() + '"/>';
- cellXML0_4 := '<cell value="' + product.Power() + '"/>';
- columnXML0_2 := columnXML0_2 + cellXML0_2;
- columnXML0_3 := columnXML0_3 + cellXML0_3;
- columnXML0_4 := columnXML0_4 + cellXML0_4;
- }else{
- cellXML0_2 := '<cell value=" "/>';
- cellXML0_3 := '<cell value=" "/>';
- cellXML0_4 := '<cell value=" "/>';
- columnXML0_2 := columnXML0_2 + cellXML0_2;
- columnXML0_3 := columnXML0_3 + cellXML0_3;
- columnXML0_4 := columnXML0_4 + cellXML0_4;
- }
+
+ // product := select( macroPlan,Product_MP,product,product.ID() = cell.LocalRow().Name() );
+ // if( not isnull( product )){
+ // cellXML0_2 := '<cell value="' + product.Generation() + '"/>';
+ // cellXML0_3 := '<cell value="' + product.MQBMLB() + '"/>';
+ // cellXML0_4 := '<cell value="' + product.Power() + '"/>';
+ // columnXML0_2 := columnXML0_2 + cellXML0_2;
+ // columnXML0_3 := columnXML0_3 + cellXML0_3;
+ // columnXML0_4 := columnXML0_4 + cellXML0_4;
+ // }else{
+ // cellXML0_2 := '<cell value=" "/>';
+ // cellXML0_3 := '<cell value=" "/>';
+ // cellXML0_4 := '<cell value=" "/>';
+ // columnXML0_2 := columnXML0_2 + cellXML0_2;
+ // columnXML0_3 := columnXML0_3 + cellXML0_3;
+ // columnXML0_4 := columnXML0_4 + cellXML0_4;
+ // }
flag := false;
}else{
cellXML := '<cell value=" "/>'
columnXML1 := columnXML1 + cellXML;
- cellXML0_1 := '<cell value=" "/>'
- cellXML0_2 := '<cell value=" "/>';
- cellXML0_3 := '<cell value=" "/>';
- cellXML0_4 := '<cell value=" "/>';
- columnXML0_1 := columnXML0_1 + cellXML0_1;
- columnXML0_2 := columnXML0_2 + cellXML0_2;
- columnXML0_3 := columnXML0_3 + cellXML0_3;
- columnXML0_4 := columnXML0_4 + cellXML0_4;
+ // cellXML0_2 := '<cell value=" "/>';
+ // cellXML0_3 := '<cell value=" "/>';
+ // cellXML0_4 := '<cell value=" "/>';
+ // columnXML0_2 := columnXML0_2 + cellXML0_2;
+ // columnXML0_3 := columnXML0_3 + cellXML0_3;
+ // columnXML0_4 := columnXML0_4 + cellXML0_4;
}
cellXML := '<cell value="' + e + '"/>'
columnXML2 := columnXML2 + cellXML;
}
}
- columnXML := columnXML0_1 + "</column>" + columnXML0_2 + "</column>" + columnXML0_3 + "</column>" + columnXML0_4 + "</column>" + columnXML1 + "</column>" + columnXML2 + "</column>";
+ // columnXML0_2 + "</column>" + columnXML0_3 + "</column>" + columnXML0_4 + "</column>" +
+ columnXML := columnXML1 + "</column>" + columnXML2 + "</column>";
}
return columnXML;
diff --git a/_Main/BL/Type_LocalCell_ProductionComparison/StaticMethod_GetTableName.qbl b/_Main/BL/Type_LocalCell_ProductionComparison/StaticMethod_GetTableName.qbl
new file mode 100644
index 0000000..d1a68a7
--- /dev/null
+++ b/_Main/BL/Type_LocalCell_ProductionComparison/StaticMethod_GetTableName.qbl
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod GetTableName () const declarative remote as String
+{
+ TextBody:
+ [*
+ // Akari Sep-30-2024 (created)
+ return "浜ч噺瀵规瘮鎶ヨ〃";
+ *]
+}
diff --git a/_Main/BL/Type_OfflinePlanTable/Method_Comparison.qbl b/_Main/BL/Type_OfflinePlanTable/Method_Comparison.qbl
index 6c22eaa..d187c45 100644
--- a/_Main/BL/Type_OfflinePlanTable/Method_Comparison.qbl
+++ b/_Main/BL/Type_OfflinePlanTable/Method_Comparison.qbl
@@ -9,7 +9,7 @@
[*
// rislai Jul-17-2024 (created)
macroPlan := this.MacroPlan();
- table := recycleBin.LocalTable( relnew,Name := "浜ч噺瀵规瘮鎶ヨ〃");
+ table := recycleBin.LocalTable( relnew,Name := LocalCell_ProductionComparison::GetTableName());
actualDailyProductionDatas := selectset( archive,ActualDailyProductionData,data,true );
actualDailyProductionDataIndexTree := NamedValueTree::Create();
@@ -31,7 +31,7 @@
traverse( this,OfflinePlanRow,row,row.Type() = "1" ){
productID := row.ProductID();
- productLine := row.ProductionLine();
+ // productLine := row.ProductionLine();
localRow := table.LocalRow( relnew,Index := table.GetRowIndexCache(),CustomName := productID );
traverse( row,OfflinePlanCell,cell,cell.OfflinePlanColumn().ColumnDate() >= macroPlan.StartOfPlanning().Date() ){
localColumnHandle := localColumnIndexTree.GetHandle( cell.OfflinePlanColumn().ColumnDate().AsQUILL() );
@@ -57,6 +57,43 @@
column.Delete();
}
}
+ // maxCellCount := table.LocalRow( relsize );
+
+ //traverse( table,LocalColumn,column ){
+ // cellIndexTree := NamedValueTree::Create();
+ // columnKey := column.CustomDate().AsQUILL();
+ // count := 0;
+ // traverse( column,LocalCell,cell ){
+ // rowKey := cell.LocalRow().CustomName();
+ // cellHandle := cellIndexTree.GetHandle( rowKey + columnKey );
+ // cellIndexTree.Root().AddChild( cellHandle,count );
+ // count++;
+ // }
+ // traverse( table,LocalRow,row ){
+ // rowKey := row.CustomName();
+ // cellHandle := cellIndexTree.GetHandle( rowKey + columnKey );
+ // cellCount := guard( cellIndexTree.Root().Child( cellHandle ),null( NamedValue ));
+ // if( isnull( cellCount )){
+ // row.LocalCell( relnew,LocalCell_ProductionComparison ,LocalColumn := column,
+ // Plan := 0,Actual := 0 );
+ // }
+ // }
+ //}
+
+ traverse( table,LocalRow,row ){
+ cellCountTree := NamedValueTree::Create();
+ traverse( row,LocalCell,cell ){
+ cellHandle := cellCountTree.GetHandle( cell.LocalColumn().CustomDate().AsQUILL());
+ cellCountTree.Root().AddChild( cellHandle,0 );
+ }
+ traverse( table,LocalColumn,column ){
+ cellHandle := cellCountTree.GetHandle( column.CustomDate().AsQUILL());
+ cell := guard( cellCountTree.Root().Child( cellHandle ),null( NamedValue ));
+ if( isnull( cell )){
+ row.LocalCell( relnew,LocalCell_ProductionComparison ,LocalColumn := column,Plan := 0,Actual := 0 );
+ }
+ }
+ }
return table;
*]
diff --git a/_Main/UI/MacroPlannerWebApp/Component_Form701/Component_MatrixEditor.def b/_Main/UI/MacroPlannerWebApp/Component_Form701/Component_MatrixEditor.def
index 6d90515..d565641 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_Form701/Component_MatrixEditor.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_Form701/Component_MatrixEditor.def
@@ -18,7 +18,7 @@
Properties:
[
DataType: 'LocalTable'
- Source: 'dhComparisonData'
+ Source: 'dhTable'
Taborder: 0
Transformation: 'LocalRow.LocalCell.astype(LocalCell_OfflinePlanComparison)'
]
@@ -47,7 +47,7 @@
DataType: 'LocalTable'
FilterArguments: 'checkedProduct:QMacroPlanner::FormOfflinePlanChanges.dhFinelProduct'
FixedFilter: 'exists( checkedProduct,Elements,product,product.ID() = object.Name() )'
- Source: 'dhComparisonData'
+ Source: 'dhTable'
Taborder: 0
Transformation: 'LocalRow'
]
@@ -75,7 +75,7 @@
DataType: 'LocalTable'
FilterArguments: 'startDate:QMacroPlanner::FormOfflinePlanChanges.dhStartDate;endDate:QMacroPlanner::FormOfflinePlanChanges.dhEndDate'
FixedFilter: 'not object.IsAttrbuteColumn() and startDate <= object.Date() and endDate > object.Date() '
- Source: 'dhComparisonData'
+ Source: 'dhTable'
Taborder: 0
Transformation: 'LocalColumn'
]
diff --git a/_Main/UI/MacroPlannerWebApp/Component_Form701/Component_PanelDemandComparison.def b/_Main/UI/MacroPlannerWebApp/Component_Form701/Component_PanelDemandComparison.def
index d41af93..5e92fdf 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_Form701/Component_PanelDemandComparison.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_Form701/Component_PanelDemandComparison.def
@@ -5,7 +5,7 @@
BaseType: 'WebPanel'
Children:
[
- Component dhComparisonData
+ Component dhTable
{
#keys: '[412672.1.78210541]'
BaseType: 'WebDataHolder'
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_Form701/Component_PanelRibbon504\043801.def" "b/_Main/UI/MacroPlannerWebApp/Component_Form701/Component_PanelRibbon504\043801.def"
index 28e3804..0b818cc 100644
--- "a/_Main/UI/MacroPlannerWebApp/Component_Form701/Component_PanelRibbon504\043801.def"
+++ "b/_Main/UI/MacroPlannerWebApp/Component_Form701/Component_PanelRibbon504\043801.def"
@@ -18,10 +18,10 @@
BaseType: 'WebDataExtractor'
Properties:
[
- DataType: 'structured[MacroPlan]'
- Source: 'dhMacroPlans'
+ DataType: 'structured[OfflinePlanTable]'
+ Source: 'dhOfflinePlanTables'
Taborder: 0
- Transformation: 'Elements.OfflinePlanTable'
+ Transformation: 'Elements'
]
}
]
@@ -55,10 +55,10 @@
BaseType: 'WebDataExtractor'
Properties:
[
- DataType: 'structured[MacroPlan]'
- Source: 'dhMacroPlans'
+ DataType: 'structured[OfflinePlanTable]'
+ Source: 'dhOfflinePlanTables'
Taborder: 0
- Transformation: 'Elements.OfflinePlanTable'
+ Transformation: 'Elements'
]
}
]
@@ -69,16 +69,52 @@
Taborder: 1
]
}
- Component dhMacroPlans id:dhMacroPlans_891
+ Component dhOfflinePlanTables
{
#keys: '[414996.1.103241339]'
BaseType: 'WebDataHolder'
- Databinding: 'structured[MacroPlan]*'
+ Databinding: 'structured[OfflinePlanTable]*'
Properties:
[
Taborder: 3
]
}
+ Component bExport
+ {
+ #keys: '[414996.1.104721685]'
+ BaseType: 'WebButton'
+ Properties:
+ [
+ Image: 'EXPORT1'
+ Taborder: 4
+ ]
+ }
+ Component dhXMLDataListener
+ {
+ #keys: '[414996.1.104721708]'
+ BaseType: 'WebDataHolder'
+ Databinding: 'structured[ExportXMLManager]*'
+ Children:
+ [
+ Component DataExtractor510
+ {
+ #keys: '[414996.1.104721709]'
+ BaseType: 'WebDataExtractor'
+ Properties:
+ [
+ DataType: 'RecycleBin'
+ FixedFilter: 'object.Name() = LocalCell_OfflinePlanComparison::GetTableName()'
+ Source: 'RecycleBin'
+ Taborder: 0
+ Transformation: 'ExportXMLManager'
+ ]
+ }
+ ]
+ Properties:
+ [
+ Taborder: 5
+ ]
+ }
]
Properties:
[
diff --git a/_Main/UI/MacroPlannerWebApp/Component_Form701/Response_PanelDemandComparison_dhComparisonData_OnDataChanged.def b/_Main/UI/MacroPlannerWebApp/Component_Form701/Response_PanelDemandComparison_dhTable_OnDataChanged.def
similarity index 65%
rename from _Main/UI/MacroPlannerWebApp/Component_Form701/Response_PanelDemandComparison_dhComparisonData_OnDataChanged.def
rename to _Main/UI/MacroPlannerWebApp/Component_Form701/Response_PanelDemandComparison_dhTable_OnDataChanged.def
index b236fb4..35546db 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_Form701/Response_PanelDemandComparison_dhComparisonData_OnDataChanged.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_Form701/Response_PanelDemandComparison_dhTable_OnDataChanged.def
@@ -1,6 +1,6 @@
Quintiq file version 2.0
-#parent: PanelDemandComparison/dhComparisonData
-Response OnDataChanged () id:Response_PanelDemandComparison_dhComparisonData_OnDataChanged
+#parent: PanelDemandComparison/dhTable
+Response OnDataChanged () id:Response_PanelDemandComparison_dhTable_OnDataChanged
{
#keys: '[412672.1.78210528]'
CanBindMultiple: false
diff --git a/_Main/UI/MacroPlannerWebApp/Component_Form701/Response_PanelRibbon504_801_bComparison_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_Form701/Response_PanelRibbon504_801_bComparison_OnClick.def
index d361d10..da3570f 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_Form701/Response_PanelRibbon504_801_bComparison_OnClick.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_Form701/Response_PanelRibbon504_801_bComparison_OnClick.def
@@ -12,7 +12,7 @@
baseVersion := ddlBaseOfflinePlanTable.Data();
compareVersion := ddlCompareOfflinePlanTable.Data();
- dhComparisonData.Data( LocalCell_OfflinePlanComparison::Compared( RecycleBin,baseVersion,compareVersion ));
+ dhTable.Data( LocalCell_OfflinePlanComparison::Compared( RecycleBin,baseVersion,compareVersion ));
*]
GroupServerCalls: false
}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_Form701/Response_PanelRibbon504_801_bExport_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_Form701/Response_PanelRibbon504_801_bExport_OnClick.def
new file mode 100644
index 0000000..b79df21
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_Form701/Response_PanelRibbon504_801_bExport_OnClick.def
@@ -0,0 +1,18 @@
+Quintiq file version 2.0
+#parent: PanelRibbon504_801/bExport
+Response OnClick () id:Response_PanelRibbon504_bExport_OnClick
+{
+ #keys: '[414996.1.104721684]'
+ CanBindMultiple: false
+ DefinitionID: 'Responsedef_WebButton_OnClick'
+ GroupServerCalls: true
+ QuillAction
+ {
+ Body:
+ [*
+ rows := selectset( dhTable.Data(),LocalRow,row,exists( dhFinelProduct.Data(),Elements,product,product.ID() = row.Name()) );
+ columns := selectset( dhTable.Data( ),LocalColumn,column,true );
+ LocalCell_OfflinePlanComparison::AsyncExport( RecycleBin, rows, columns, MacroPlan );
+ *]
+ }
+}
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_Form701/Response_PanelRibbon504_801_dhMacroPlans_OnCreated\04357.def" "b/_Main/UI/MacroPlannerWebApp/Component_Form701/Response_PanelRibbon504_801_dhMacroPlans_OnCreated\04357.def"
deleted file mode 100644
index 485814d..0000000
--- "a/_Main/UI/MacroPlannerWebApp/Component_Form701/Response_PanelRibbon504_801_dhMacroPlans_OnCreated\04357.def"
+++ /dev/null
@@ -1,17 +0,0 @@
-Quintiq file version 2.0
-#parent: PanelRibbon504_801/dhMacroPlans_891
-Response OnCreated () id:Response_PanelRibbon322_dhMacroPlans_OnCreated_57
-{
- #keys: '[414996.1.103241337]'
- CanBindMultiple: false
- DefinitionID: 'Responsedef_WebComponent_OnCreated'
- QuillAction
- {
- Body:
- [*
- macroPlans := ApplicationMacroPlanner.GetMacroPlans();
- this.Data( ¯oPlans );
- *]
- GroupServerCalls: false
- }
-}
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_Form701/Response_PanelRibbon504_801_dhOfflinePlanTables_OnCreated\04357.def" "b/_Main/UI/MacroPlannerWebApp/Component_Form701/Response_PanelRibbon504_801_dhOfflinePlanTables_OnCreated\04357.def"
new file mode 100644
index 0000000..fec74d0
--- /dev/null
+++ "b/_Main/UI/MacroPlannerWebApp/Component_Form701/Response_PanelRibbon504_801_dhOfflinePlanTables_OnCreated\04357.def"
@@ -0,0 +1,21 @@
+Quintiq file version 2.0
+#parent: PanelRibbon504_801/dhOfflinePlanTables
+Response OnCreated () id:Response_PanelRibbon504_801_dhOfflinePlanTables_OnCreated_57
+{
+ #keys: '[414996.1.103241337]'
+ CanBindMultiple: false
+ DefinitionID: 'Responsedef_WebComponent_OnCreated'
+ QuillAction
+ {
+ Body:
+ [*
+ macroPlans := ApplicationMacroPlanner.GetMacroPlans();
+ offlinePlanTables := selectset( macroPlans,Elements.OfflinePlanTable,table,true );
+ traverse( macroPlans,Elements,element ){
+ info( element.MDSID() );
+ }
+ this.Data( &offlinePlanTables );
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_Form701/Response_PanelRibbon504_801_dhXMLDataListener_OnDataChanged\043648.def" "b/_Main/UI/MacroPlannerWebApp/Component_Form701/Response_PanelRibbon504_801_dhXMLDataListener_OnDataChanged\043648.def"
new file mode 100644
index 0000000..1bcf365
--- /dev/null
+++ "b/_Main/UI/MacroPlannerWebApp/Component_Form701/Response_PanelRibbon504_801_dhXMLDataListener_OnDataChanged\043648.def"
@@ -0,0 +1,22 @@
+Quintiq file version 2.0
+#parent: PanelRibbon504_801/dhXMLDataListener
+Response OnDataChanged () id:Response_PanelRibbon504_dhXMLDataListener_OnDataChanged_648
+{
+ #keys: '[414996.1.104721706]'
+ CanBindMultiple: false
+ DefinitionID: 'Responsedef_WebComponent_OnDataChanged'
+ QuillAction
+ {
+ Body:
+ [*
+ traverse( dhXMLDataListener.Data(),Elements,element ){
+ binaryValue := element.Export();
+
+ Application.Download( element.Name() + "_" + DateTime::Now().Format( "YM2D2H2mmss" ) + ".xlsx", binaryValue.AsBinaryData() );
+
+ element.Delete();
+ }
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_Form701/_ROOT_Component_FormOfflinePlanChanges\043701.def" "b/_Main/UI/MacroPlannerWebApp/Component_Form701/_ROOT_Component_FormOfflinePlanChanges\043701.def"
index 9af7819..9c19aa0 100644
--- "a/_Main/UI/MacroPlannerWebApp/Component_Form701/_ROOT_Component_FormOfflinePlanChanges\043701.def"
+++ "b/_Main/UI/MacroPlannerWebApp/Component_Form701/_ROOT_Component_FormOfflinePlanChanges\043701.def"
@@ -12,6 +12,7 @@
]
Properties:
[
+ Description: '鐢熶骇璁″垝鍙樻洿鎶ヨ〃'
Image: 'DOCUMENT_CENTER'
Title: '鐢熶骇璁″垝鍙樻洿鎶ヨ〃'
]
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanComparison/Component_MatrixEditor\043988.def" "b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanComparison/Component_MatrixEditor\043988.def"
index 9fe94ea..3bb08ff 100644
--- "a/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanComparison/Component_MatrixEditor\043988.def"
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanComparison/Component_MatrixEditor\043988.def"
@@ -18,7 +18,7 @@
Properties:
[
DataType: 'LocalTable'
- Source: 'dhComparisonData'
+ Source: 'dhTable'
Taborder: 0
Transformation: 'LocalRow.LocalCell.astype(LocalCell_ProductionComparison)'
]
@@ -47,7 +47,7 @@
DataType: 'LocalTable'
FilterArguments: 'checkedProduct:QMacroPlanner::FormOfflinePlanComparison.dhFinelProduct'
FixedFilter: 'exists( checkedProduct,Elements,product,product.ID() = object.Name() )'
- Source: 'dhComparisonData'
+ Source: 'dhTable'
Taborder: 0
Transformation: 'LocalRow'
]
@@ -75,7 +75,7 @@
DataType: 'LocalTable'
FilterArguments: 'startDate:QMacroPlanner::FormOfflinePlanComparison.dhStartDate;endDate:QMacroPlanner::FormOfflinePlanComparison.dhEndDate'
FixedFilter: 'not object.IsAttrbuteColumn() and startDate <= object.Date() and endDate > object.Date()'
- Source: 'dhComparisonData'
+ Source: 'dhTable'
Taborder: 0
Transformation: 'LocalColumn'
]
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanComparison/Component_PanelDemandComparison\043634.def" "b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanComparison/Component_PanelDemandComparison\043634.def"
index d1923c2..4400667 100644
--- "a/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanComparison/Component_PanelDemandComparison\043634.def"
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanComparison/Component_PanelDemandComparison\043634.def"
@@ -6,7 +6,7 @@
Children:
[
#child: MatrixEditor_988
- Component dhComparisonData
+ Component dhTable
{
#keys: '[412672.1.61940683]'
BaseType: 'WebDataHolder'
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanComparison/Component_PanelRibbon504.def b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanComparison/Component_PanelRibbon504.def
index abb2e55..395d971 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanComparison/Component_PanelRibbon504.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanComparison/Component_PanelRibbon504.def
@@ -52,6 +52,42 @@
Taborder: 2
]
}
+ Component bExport id:bExport_298
+ {
+ #keys: '[414996.1.108480376]'
+ BaseType: 'WebButton'
+ Properties:
+ [
+ Image: 'EXPORT1'
+ Taborder: 3
+ ]
+ }
+ Component dhXMLDataListener id:dhXMLDataListener_273
+ {
+ #keys: '[414996.1.108480431]'
+ BaseType: 'WebDataHolder'
+ Databinding: 'structured[ExportXMLManager]*'
+ Children:
+ [
+ Component DataExtractor510 id:DataExtractor510_384
+ {
+ #keys: '[414996.1.108480432]'
+ BaseType: 'WebDataExtractor'
+ Properties:
+ [
+ DataType: 'RecycleBin'
+ FixedFilter: 'object.Name() = LocalCell_ProductionComparison::GetTableName()'
+ Source: 'RecycleBin'
+ Taborder: 0
+ Transformation: 'ExportXMLManager'
+ ]
+ }
+ ]
+ Properties:
+ [
+ Taborder: 4
+ ]
+ }
]
Properties:
[
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanComparison/Response_PanelDemandComparison_634_dhComparisonData_OnDataChanged.def b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanComparison/Response_PanelDemandComparison_634_dhTable_OnDataChanged.def
similarity index 79%
rename from _Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanComparison/Response_PanelDemandComparison_634_dhComparisonData_OnDataChanged.def
rename to _Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanComparison/Response_PanelDemandComparison_634_dhTable_OnDataChanged.def
index 0142a22..5d0c78b 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanComparison/Response_PanelDemandComparison_634_dhComparisonData_OnDataChanged.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanComparison/Response_PanelDemandComparison_634_dhTable_OnDataChanged.def
@@ -1,6 +1,6 @@
Quintiq file version 2.0
-#parent: PanelDemandComparison_634/dhComparisonData
-Response OnDataChanged () id:Response_PanelDemandComparison_634_dhComparisonData_OnDataChanged
+#parent: PanelDemandComparison_634/dhTable
+Response OnDataChanged () id:Response_PanelDemandComparison_634_dhTable_OnDataChanged
{
#keys: '[412672.1.61940670]'
CanBindMultiple: false
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanComparison/Response_PanelRibbon504_bComparison_OnClick\043613.def" "b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanComparison/Response_PanelRibbon504_bComparison_OnClick\043613.def"
index 7e11636..4cdfee6 100644
--- "a/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanComparison/Response_PanelRibbon504_bComparison_OnClick\043613.def"
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanComparison/Response_PanelRibbon504_bComparison_OnClick\043613.def"
@@ -11,7 +11,7 @@
[*
opt := ddlOfflinePlanTable.Data();
- dhComparisonData.Data( opt.Comparison( RecycleBin,Archive ));
+ dhTable.Data( opt.Comparison( RecycleBin,Archive ));
*]
GroupServerCalls: false
}
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanComparison/Response_PanelRibbon504_bExport_OnClick\043891.def" "b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanComparison/Response_PanelRibbon504_bExport_OnClick\043891.def"
new file mode 100644
index 0000000..15ae8fb
--- /dev/null
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanComparison/Response_PanelRibbon504_bExport_OnClick\043891.def"
@@ -0,0 +1,18 @@
+Quintiq file version 2.0
+#parent: PanelRibbon504/bExport_298
+Response OnClick () id:Response_pOperaction_bExport_OnClick_891
+{
+ #keys: '[414996.1.108480375]'
+ CanBindMultiple: false
+ DefinitionID: 'Responsedef_WebButton_OnClick'
+ GroupServerCalls: true
+ QuillAction
+ {
+ Body:
+ [*
+ rows := selectset( dhTable.Data(),LocalRow,row,exists( dhFinelProduct.Data(),Elements,product,product.ID() = row.Name()) );
+ columns := selectset( dhTable.Data( ),LocalColumn,column,true );
+ LocalCell_ProductionComparison::AsyncExport( RecycleBin, rows, columns, MacroPlan );
+ *]
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanComparison/Response_PanelRibbon504_dhXMLDataListener_OnDataChanged.def b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanComparison/Response_PanelRibbon504_dhXMLDataListener_OnDataChanged.def
new file mode 100644
index 0000000..3bcabcb
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanComparison/Response_PanelRibbon504_dhXMLDataListener_OnDataChanged.def
@@ -0,0 +1,22 @@
+Quintiq file version 2.0
+#parent: PanelRibbon504/dhXMLDataListener_273
+Response OnDataChanged () id:Response_PanelRibbon504_dhXMLDataListener_OnDataChanged
+{
+ #keys: '[414996.1.106110528]'
+ CanBindMultiple: false
+ DefinitionID: 'Responsedef_WebComponent_OnDataChanged'
+ QuillAction
+ {
+ Body:
+ [*
+ traverse( dhXMLDataListener.Data(),Elements,element ){
+ binaryValue := element.Export();
+
+ Application.Download( element.Name() + "_" + DateTime::Now().Format( "YM2D2H2mmss" ) + ".xlsx", binaryValue.AsBinaryData() );
+
+ element.Delete();
+ }
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanComparison/_ROOT_Component_FormOfflinePlanComparison.def b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanComparison/_ROOT_Component_FormOfflinePlanComparison.def
index 064466f..ddaf769 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanComparison/_ROOT_Component_FormOfflinePlanComparison.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanComparison/_ROOT_Component_FormOfflinePlanComparison.def
@@ -12,6 +12,7 @@
]
Properties:
[
+ Description: '浜ч噺瀵规瘮鎶ヨ〃'
Image: 'DOCUMENT_INFO'
Title: '浜ч噺瀵规瘮鎶ヨ〃'
]
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Component_PanelRibbon.def b/_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Component_PanelRibbon.def
index 3b9186a..d6119fe 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Component_PanelRibbon.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Component_PanelRibbon.def
@@ -5,8 +5,8 @@
BaseType: 'WebPanel'
Children:
[
- #child: PanelRibbon504
#child: PanelRibbon322_88
+ #child: PanelRibbon206_478
]
Properties:
[
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Component_PanelRibbon206\043478.def" "b/_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Component_PanelRibbon206\043478.def"
new file mode 100644
index 0000000..530d5f2
--- /dev/null
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Component_PanelRibbon206\043478.def"
@@ -0,0 +1,38 @@
+Quintiq file version 2.0
+Component PanelRibbon206 id:PanelRibbon206_478
+{
+ #keys: '[414996.1.108919103]'
+ BaseType: 'WebPanel'
+ Children:
+ [
+ Component bExportTemplate
+ {
+ #keys: '[414996.1.108919104]'
+ BaseType: 'WebButton'
+ Properties:
+ [
+ Image: 'EXPORT1'
+ Label: '瀵煎嚭妯℃澘'
+ Taborder: 0
+ ]
+ }
+ Component bImportOutput
+ {
+ #keys: '[414996.1.108919105]'
+ BaseType: 'WebButton'
+ Properties:
+ [
+ Image: 'IMPORT1'
+ Label: '瀵煎叆'
+ Taborder: 1
+ ]
+ }
+ ]
+ Properties:
+ [
+ Alignment: 'trailing'
+ Orientation: 'horizontal'
+ Taborder: 1
+ Title: 'output'
+ ]
+}
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Component_PanelRibbon322\04388.def" "b/_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Component_PanelRibbon322\04388.def"
index fd12ece..ebe43ed 100644
--- "a/_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Component_PanelRibbon322\04388.def"
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Component_PanelRibbon322\04388.def"
@@ -14,7 +14,7 @@
Checked: true
Description: '鐝'
Label: '鐝'
- Taborder: 0
+ Taborder: 2
]
}
Component cbWorkday
@@ -26,7 +26,7 @@
Checked: true
Description: '宸ヤ綔鏃�'
Label: '宸ヤ綔鏃�'
- Taborder: 1
+ Taborder: 3
]
}
Component cbCapacity
@@ -38,7 +38,7 @@
Checked: true
Description: '浜ц兘'
Label: '浜ц兘'
- Taborder: 2
+ Taborder: 4
]
}
Component cbOutput
@@ -50,7 +50,7 @@
Checked: true
Description: '浜ч噺'
Label: '浜ч噺'
- Taborder: 3
+ Taborder: 5
]
}
Component dsStartDate id:dsStartDate_438
@@ -60,7 +60,7 @@
Properties:
[
Label: 'Start Date'
- Taborder: 4
+ Taborder: 6
]
}
Component dhStartDate id:dhStartDate_891
@@ -70,7 +70,7 @@
Databinding: 'Date*'
Properties:
[
- Taborder: 5
+ Taborder: 7
]
}
Component dsEndDate id:dsEndDate_963
@@ -81,7 +81,7 @@
[
Date: 9999-12-31
Label: 'End Date'
- Taborder: 6
+ Taborder: 8
]
}
Component dhEndDate id:dhEndDate_384
@@ -91,7 +91,7 @@
Databinding: 'Date*'
Properties:
[
- Taborder: 7
+ Taborder: 9
]
}
Component bExport
@@ -101,7 +101,7 @@
Properties:
[
Image: 'EXPORT1'
- Taborder: 8
+ Taborder: 10
]
}
Component dhXMLDataListener
@@ -127,7 +127,28 @@
]
Properties:
[
- Taborder: 9
+ Taborder: 11
+ ]
+ }
+ Component ButtonRibbon820 id:ButtonRibbon820_836
+ {
+ #keys: '[414996.1.104721255]'
+ BaseType: 'WebButton'
+ Properties:
+ [
+ Label: 'CreateFullTable'
+ Taborder: 1
+ ]
+ }
+ Component ButtonRibbon id:ButtonRibbon_338
+ {
+ #keys: '[414996.1.104721297]'
+ BaseType: 'WebButton'
+ Properties:
+ [
+ Label: 'Create'
+ Taborder: 0
+ Visible: false
]
}
]
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Component_PanelRibbon504.def b/_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Component_PanelRibbon504.def
deleted file mode 100644
index 1b62091..0000000
--- a/_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Component_PanelRibbon504.def
+++ /dev/null
@@ -1,69 +0,0 @@
-Quintiq file version 2.0
-Component PanelRibbon504
-{
- #keys: '[412672.1.94122024]'
- BaseType: 'WebPanel'
- Children:
- [
- Component bExportTemplate
- {
- #keys: '[412672.1.94122267]'
- BaseType: 'WebButton'
- Properties:
- [
- Image: 'EXPORT1'
- Label: '瀵煎嚭output妯℃澘'
- Taborder: 4
- ]
- }
- Component bImportOutput
- {
- #keys: '[412672.1.94122280]'
- BaseType: 'WebButton'
- Properties:
- [
- Image: 'IMPORT1'
- Label: '瀵煎叆output'
- Taborder: 2
- ]
- }
- Component ButtonRibbon
- {
- #keys: '[412672.1.94151012]'
- BaseType: 'WebButton'
- Properties:
- [
- Label: 'Create'
- Taborder: 0
- Visible: false
- ]
- }
- Component ButtonRibbon820
- {
- #keys: '[412672.1.97441173]'
- BaseType: 'WebButton'
- Properties:
- [
- Label: 'CreateFullTable'
- Taborder: 1
- ]
- }
- Component npYear
- {
- #keys: '[412672.1.98957184]'
- BaseType: 'WebNumberPicker'
- Properties:
- [
- Label: '瀵煎嚭妯℃澘鏃堕棿鑼冨洿'
- Taborder: 3
- ]
- }
- ]
- Properties:
- [
- FixedSize: true
- Orientation: 'horizontal'
- Taborder: 1
- Title: '浜у嚭瀵煎叆'
- ]
-}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Response_PanelRibbon206_478_bExportTemplate_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Response_PanelRibbon206_478_bExportTemplate_OnClick.def
new file mode 100644
index 0000000..a1ea5ad
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Response_PanelRibbon206_478_bExportTemplate_OnClick.def
@@ -0,0 +1,18 @@
+Quintiq file version 2.0
+#parent: PanelRibbon206_478/bExportTemplate
+Response OnClick () id:Response_PanelRibbon206_478_bExportTemplate_OnClick
+{
+ #keys: '[414996.1.108919102]'
+ CanBindMultiple: false
+ DefinitionID: 'Responsedef_WebButton_OnClick'
+ QuillAction
+ {
+ Body:
+ [*
+ data := MP_Cell_ScheduleSummary::ExportOutputTemplate( Date::ActualDate().Year() );
+
+ Application.Download( "浜у嚭瀵煎叆妯℃澘.xlsx",data.AsBinaryData() );
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Response_PanelRibbon504_bImportOutput_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Response_PanelRibbon206_478_bImportOutput_OnClick.def
similarity index 90%
rename from _Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Response_PanelRibbon504_bImportOutput_OnClick.def
rename to _Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Response_PanelRibbon206_478_bImportOutput_OnClick.def
index 6f0a968..a00e5c0 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Response_PanelRibbon504_bImportOutput_OnClick.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Response_PanelRibbon206_478_bImportOutput_OnClick.def
@@ -1,8 +1,8 @@
Quintiq file version 2.0
-#parent: PanelRibbon504/bImportOutput
-Response OnClick () id:Response_PanelRibbon504_bImportOutput_OnClick
+#parent: PanelRibbon206_478/bImportOutput
+Response OnClick () id:Response_PanelRibbon206_478_bImportOutput_OnClick
{
- #keys: '[412672.1.96362099]'
+ #keys: '[414996.1.108919101]'
CanBindMultiple: false
DefinitionID: 'Responsedef_WebButton_OnClick'
Precondition:
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Response_PanelRibbon504_ButtonRibbon820_OnClick.def "b/_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Response_PanelRibbon322_88_ButtonRibbon820_OnClick\04371.def"
similarity index 83%
rename from _Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Response_PanelRibbon504_ButtonRibbon820_OnClick.def
rename to "_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Response_PanelRibbon322_88_ButtonRibbon820_OnClick\04371.def"
index 9d82f9b..4715969 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Response_PanelRibbon504_ButtonRibbon820_OnClick.def
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Response_PanelRibbon322_88_ButtonRibbon820_OnClick\04371.def"
@@ -1,8 +1,8 @@
Quintiq file version 2.0
-#parent: PanelRibbon504/ButtonRibbon820
-Response OnClick () id:Response_PanelRibbon504_ButtonRibbon820_OnClick
+#parent: PanelRibbon322_88/ButtonRibbon820_836
+Response OnClick () id:Response_PanelRibbon504_ButtonRibbon820_OnClick_71
{
- #keys: '[412672.1.97441221]'
+ #keys: '[414996.1.104721254]'
CanBindMultiple: false
DefinitionID: 'Responsedef_WebButton_OnClick'
QuillAction
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Response_PanelRibbon504_ButtonRibbon_OnClick.def "b/_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Response_PanelRibbon322_88_ButtonRibbon_OnClick\04388.def"
similarity index 80%
rename from _Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Response_PanelRibbon504_ButtonRibbon_OnClick.def
rename to "_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Response_PanelRibbon322_88_ButtonRibbon_OnClick\04388.def"
index 440221e..994e6d2 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Response_PanelRibbon504_ButtonRibbon_OnClick.def
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Response_PanelRibbon322_88_ButtonRibbon_OnClick\04388.def"
@@ -1,8 +1,8 @@
Quintiq file version 2.0
-#parent: PanelRibbon504/ButtonRibbon
-Response OnClick () id:Response_PanelRibbon504_ButtonRibbon_OnClick
+#parent: PanelRibbon322_88/ButtonRibbon_338
+Response OnClick () id:Response_PanelRibbon504_ButtonRibbon_OnClick_88
{
- #keys: '[412672.1.94151032]'
+ #keys: '[414996.1.104721296]'
CanBindMultiple: false
DefinitionID: 'Responsedef_WebButton_OnClick'
QuillAction
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Response_PanelRibbon504_bExportTemplate_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Response_PanelRibbon504_bExportTemplate_OnClick.def
deleted file mode 100644
index c661ea7..0000000
--- a/_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Response_PanelRibbon504_bExportTemplate_OnClick.def
+++ /dev/null
@@ -1,18 +0,0 @@
-Quintiq file version 2.0
-#parent: PanelRibbon504/bExportTemplate
-Response OnClick () id:Response_PanelRibbon504_bExportTemplate_OnClick
-{
- #keys: '[412672.1.94122418]'
- CanBindMultiple: false
- DefinitionID: 'Responsedef_WebButton_OnClick'
- QuillAction
- {
- Body:
- [*
- data := MP_Cell_ScheduleSummary::ExportOutputTemplate( [Number]npYear.Number() );
-
- Application.Download( "浜у嚭瀵煎叆妯℃澘.xlsx",data.AsBinaryData() );
- *]
- GroupServerCalls: false
- }
-}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Response_PanelRibbon504_npYear_OnCreated.def b/_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Response_PanelRibbon504_npYear_OnCreated.def
deleted file mode 100644
index 82c8067..0000000
--- a/_Main/UI/MacroPlannerWebApp/Component_FormScheduleSummaryReport/Response_PanelRibbon504_npYear_OnCreated.def
+++ /dev/null
@@ -1,17 +0,0 @@
-Quintiq file version 2.0
-#parent: PanelRibbon504/npYear
-Response OnCreated () id:Response_PanelRibbon504_npYear_OnCreated
-{
- #keys: '[412672.1.97870619]'
- CanBindMultiple: false
- DefinitionID: 'Responsedef_WebComponent_OnCreated'
- GroupServerCalls: true
- QuillAction
- {
- Body:
- [*
- date := Date::ActualDate();
- this.Number( date.Year() );
- *]
- }
-}
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_StandardHoursReport/Component_pOperaction\043633.def" "b/_Main/UI/MacroPlannerWebApp/Component_StandardHoursReport/Component_pOperaction\043633.def"
index 2162fa1..ef6c371 100644
--- "a/_Main/UI/MacroPlannerWebApp/Component_StandardHoursReport/Component_pOperaction\043633.def"
+++ "b/_Main/UI/MacroPlannerWebApp/Component_StandardHoursReport/Component_pOperaction\043633.def"
@@ -67,16 +67,6 @@
Taborder: 5
]
}
- Component bDownload
- {
- #keys: '[412672.1.106502003]'
- BaseType: 'WebButton'
- Properties:
- [
- Image: 'DOWNLOAD'
- Taborder: 6
- ]
- }
Component dhXMLDataListener
{
#keys: '[412672.1.106502023]'
@@ -100,7 +90,7 @@
]
Properties:
[
- Taborder: 7
+ Taborder: 6
]
}
]
diff --git a/_Main/UI/MacroPlannerWebApp/Component_StandardHoursReport/Response_pOperaction_bDownload_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_StandardHoursReport/Response_pOperaction_bDownload_OnClick.def
deleted file mode 100644
index a657040..0000000
--- a/_Main/UI/MacroPlannerWebApp/Component_StandardHoursReport/Response_pOperaction_bDownload_OnClick.def
+++ /dev/null
@@ -1,32 +0,0 @@
-Quintiq file version 2.0
-#parent: pOperaction/bDownload
-Response OnClick () id:Response_PanelOperation_568_bDownload_OnClick
-{
- #keys: '[412672.1.106502002]'
- CanBindMultiple: false
- DefinitionID: 'Responsedef_WebButton_OnClick'
- Precondition:
- [*
- flag := true;
- feedback := "";
- if( dhXMLDataListener.Data().Size() = 0 ){
- flag := false;
- feedback := "褰撳墠鏃犱笅杞芥暟鎹紝鐐瑰嚮瀵煎嚭鍒涘缓涓嬭浇鏁版嵁銆�"
- }
- return flag;
- *]
- QuillAction
- {
- Body:
- [*
- traverse( dhXMLDataListener.Data(),Elements,element ){
- binaryValue := element.Export();
-
- Application.Download( element.Name() + "_" + DateTime::Now().Format( "YM2D2H2mmss" ) + ".xlsx", binaryValue.AsBinaryData() );
-
- element.Delete();
- }
- *]
- GroupServerCalls: false
- }
-}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_StandardHoursReport/Response_pOperaction_dhXMLDataListener_OnDataChanged.def b/_Main/UI/MacroPlannerWebApp/Component_StandardHoursReport/Response_pOperaction_dhXMLDataListener_OnDataChanged.def
new file mode 100644
index 0000000..30330c3
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_StandardHoursReport/Response_pOperaction_dhXMLDataListener_OnDataChanged.def
@@ -0,0 +1,22 @@
+Quintiq file version 2.0
+#parent: pOperaction/dhXMLDataListener
+Response OnDataChanged () id:Response_pOperaction_dhXMLDataListener_OnDataChanged
+{
+ #keys: '[414996.1.108480536]'
+ CanBindMultiple: false
+ DefinitionID: 'Responsedef_WebComponent_OnDataChanged'
+ QuillAction
+ {
+ Body:
+ [*
+ traverse( dhXMLDataListener.Data(),Elements,element ){
+ binaryValue := element.Export();
+
+ Application.Download( element.Name() + "_" + DateTime::Now().Format( "YM2D2H2mmss" ) + ".xlsx", binaryValue.AsBinaryData() );
+
+ element.Delete();
+ }
+ *]
+ GroupServerCalls: false
+ }
+}
--
Gitblit v1.9.3