From 06fce9cb4260a08854643380bc981f9e6c6c8ed0 Mon Sep 17 00:00:00 2001
From: lazhen <17772815105@139.com>
Date: 星期五, 18 十月 2024 12:34:37 +0800
Subject: [PATCH] Merge branch 'dev' of http://47.101.211.7:10101/r/VWED into dev-zlg

---
 _Main/BL/Type_PackagingPlanCell/StaticMethod_SetPackagingAndUnpackingValues.qbl                                           |   51 +++++++
 _Main/UI/MacroPlannerWebApp/Component_DialogMaintainArchivedFiles/Component_cmContent.def                                 |   24 +++
 _Main/BL/Type_PackagingPlanCell/StaticMethod_GenerateReport.qbl                                                           |    6 
 _Main/Sys/Repr/Global/PackagingPlanCell.qrp                                                                               |   51 +++++++
 _Main/UI/MacroPlannerWebApp/Component_FormDemandComparison/Component_PanelOperation#568.def                               |   17 ++
 _Main/UI/MacroPlannerWebApp/Component_DialogMaintainArchivedFiles/Component_abpContent.def                                |   10 +
 _Main/UI/MacroPlannerWebApp/Component_DialogMaintainArchivedFiles/Component_lstContent.def                                |   59 ++++++++
 _Main/UI/MacroPlannerWebApp/Component_FormDemandComparison/Component_pVersionInfomation.def                               |   28 +++
 _Main/UI/MacroPlannerWebApp/Component_DialogMaintainArchivedFiles/Component_pnlContent.def                                |   15 ++
 _Main/UI/MacroPlannerWebApp/Component_DialogMaintainArchivedFiles/Response_lstContent_mnDelete_OnClick.def                |   23 +++
 _Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanComparison/Response_PanelRibbon504_bExport_OnClick#891.def           |    2 
 _Main/UI/MacroPlannerWebApp/Component_FormDemandComparison/Response_PanelOperation_568_bMaintainArchivedFiles_OnClick.def |   17 ++
 /dev/null                                                                                                                 |   18 --
 _Main/BL/Type_MachineLogisticsCostReportCell/StaticMethod_CreateData.qbl                                                  |    6 
 _Main/UI/MacroPlannerWebApp/Component_DialogMaintainArchivedFiles/Method_Create.def                                       |   10 +
 _Main/BL/Type_PackagingPlanCell/Attribute_NewSupply.qbl                                                                   |    8 +
 _Main/UI/MacroPlannerWebApp/Component_DialogMaintainArchivedFiles/_ROOT_Component_DialogMaintainArchivedFiles.def         |   20 ++
 _Main/UI/MacroPlannerWebApp/Component_FormPackagingPlan/Component_MatrixEditor493.def                                     |    2 
 18 files changed, 336 insertions(+), 31 deletions(-)

diff --git a/_Main/BL/Type_MachineLogisticsCostReportCell/StaticMethod_CreateData.qbl b/_Main/BL/Type_MachineLogisticsCostReportCell/StaticMethod_CreateData.qbl
index 98564c2..684958f 100644
--- a/_Main/BL/Type_MachineLogisticsCostReportCell/StaticMethod_CreateData.qbl
+++ b/_Main/BL/Type_MachineLogisticsCostReportCell/StaticMethod_CreateData.qbl
@@ -36,9 +36,9 @@
         
         // 杩愯緭鎴愭湰鍙傛暟
         lct  := select( macroPlan, LogisticsCostTransport, tempLCT, 
-                        tempLCT.Product()     = mlcrr.Category()                                                   and 
-                        tempLCT.Origin()      = ifexpr( mlcrr.Factory() = "澶ц繛宸ュ巶", "闀挎槬澶栫搴�", "澶ц繛鍘傚唴搴�" ) and 
-                        tempLCT.Destination() = ifexpr( mlcrr.Factory() = "澶ц繛宸ュ巶", "澶ц繛鍦哄唴搴�", "闀挎槬澶栫搴�" ) );
+                        tempLCT.Product()     = mlcrr.Category()                                      and 
+                        tempLCT.Origin()      = mlcrr.Factory() + " " + mlcrr.Category() + "澶栫搴�"   and 
+                        tempLCT.Destination() = mlcrr.Factory() + " " + mlcrr.Category() + "绾胯竟搴�" );
         lct1 := select( macroPlan, LogisticsCostTransport, tempLCT, 
                         tempLCT.Product()     = mlcrr.Category()                                                   and 
                         tempLCT.Origin()      = ifexpr( mlcrr.Factory() = "澶ц繛宸ュ巶", "澶ц繛鍘傚唴搴�", "CC 鍘傚唴搴�" ) and 
diff --git a/_Main/BL/Type_PackagingPlanCell/Attribute_NewSupply.qbl b/_Main/BL/Type_PackagingPlanCell/Attribute_NewSupply.qbl
new file mode 100644
index 0000000..4b563cc
--- /dev/null
+++ b/_Main/BL/Type_PackagingPlanCell/Attribute_NewSupply.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute NewSupply
+{
+  #keys: '3[415754.0.436130246][415754.0.436130245][415754.0.436130247]'
+  Description: '渚涘簲'
+  ValueType: Real
+}
diff --git a/_Main/BL/Type_PackagingPlanCell/StaticMethod_GenerateReport.qbl b/_Main/BL/Type_PackagingPlanCell/StaticMethod_GenerateReport.qbl
index 2d1b73c..4e84001 100644
--- a/_Main/BL/Type_PackagingPlanCell/StaticMethod_GenerateReport.qbl
+++ b/_Main/BL/Type_PackagingPlanCell/StaticMethod_GenerateReport.qbl
@@ -62,15 +62,17 @@
         
         // 澶ц繛宸ュ巶璁剧疆鍊�
         if ( factory = "澶ц繛宸ュ巶" ) {
-          // 鍑�闇�姹�&鍓╀綑搴撳瓨
+          // 鍑�闇�姹�&鍓╀綑搴撳瓨&渚涘簲閲�
           cell.NetDemand( cell.NetDemand() + pispipl.DependentDemandAndSalesDemandQuantity() );
           cell.EndingInventory( cell.EndingInventory() + pispipl.InventoryLevelEnd() );
+          cell.NewSupply( cell.NewSupply() + pispipl.NewSupplyQuantity() );
         }
         
         // 闀挎槬宸ュ巶璁剧疆鍊�
         if ( factory = "闀挎槬宸ュ巶" ) {
-          // 鍓╀綑搴撳瓨
+          // 鍓╀綑搴撳瓨&渚涘簲閲�
           cell.EndingInventory( cell.EndingInventory() + pispipl.InventoryLevelEnd() );
+          cell.NewSupply( cell.NewSupply() + pispipl.NewSupplyQuantity() );
           
           // 鍑�闇�姹傘�愬彧鍙栫嚎杈瑰簱銆�&鍖呰搴撳瓨&闈炲寘瑁呭簱瀛�
           if ( pisp.StockingPointID().Regex( "澶栫搴�" ) ) {
diff --git a/_Main/BL/Type_PackagingPlanCell/StaticMethod_SetPackagingAndUnpackingValues.qbl b/_Main/BL/Type_PackagingPlanCell/StaticMethod_SetPackagingAndUnpackingValues.qbl
index 72ed702..fab92f2 100644
--- a/_Main/BL/Type_PackagingPlanCell/StaticMethod_SetPackagingAndUnpackingValues.qbl
+++ b/_Main/BL/Type_PackagingPlanCell/StaticMethod_SetPackagingAndUnpackingValues.qbl
@@ -91,5 +91,56 @@
         }
       }
     }
+    
+    // 璁剧疆鎷嗗寘鍊硷紙绗﹀悎lotsize鍜屼竴鏃ユ渶澶у寘瑁呴噺锛�
+    traverse ( macroPlan, PackagingPlanRow, ppr/*, ppr.Factory() = "澶ц繛宸ュ巶" and ppr.ProductID() = "06K103011CM"*/ ) {
+      traverse ( ppr, PackagingPlanCell, ppcell/*, ppcell.StartDate() <= Date::Construct( 2025, 1, 4 )*/ ) {
+        // Product_MP
+        pmp                     := select( macroPlan, Product_MP, tempPMP, tempPMP.IsLeaf() and tempPMP.ID() = ppr.ProductID() );
+        // 鍖呰lotsize
+        ppls                    := select( macroPlan, PackagingPlanLotSize, tempPPLS, tempPPLS.Factory() = ppr.Factory() and 
+                                           tempPPLS.ProductID() = ifexpr( exists( macroPlan, PackagingPlanLotSize, tempPPLS1, tempPPLS1.ProductID() = pmp.ID() ),
+                                                                          pmp.ID(),
+                                                                          pmp.ParentID() ) );
+        // 涓�鏃ュ寘瑁呭閲�
+        ppnc                    := select( macroPlan, PackagingPlanNewCapability, tempPPNC, tempPPNC.Factory() = ppr.Factory() and 
+                                           tempPPNC.ProductID() = ifexpr( exists( macroPlan, PackagingPlanNewCapability, tempPPNC1, tempPPNC1.ProductID() = pmp.ID() ),
+                                                                          pmp.ID(),
+                                                                          pmp.ParentID() ) );
+        // Unit
+        us                      := selectset( macroPlan, Unit, tempU, tempU.ID().Regex( ppr.FactoryAbbreviation() + " " + ppr.Category() ) );
+         
+        // 褰撳墠闈炲寘瑁呭簱瀛� + 涓嬩竴澶╃殑NewSupply < 涓嬩竴澶╃殑鍑�闇�姹�
+        if ( ppcell.UnpackagedInventory() < guard( ppcell.Next().NetDemand(), 0 ) and not isnull( ppls ) and not isnull( ppnc ) ) {
+          // 闇�瑕佸寘瑁呯殑鏁伴噺
+          needPackagingQuantity := abs( ppcell.PackagingInventory() ).Round( 0 );
+          // 鍖呰寮�濮嬬殑绱㈠紩
+          indexPPCell           := ppcell.Previous();
+          
+    //      info( "浜х嚎涓暟锛�", us.Size(), "    寮�濮嬫椂闂达細", ppcell.StartDate().Format( "Y-M2-D2" ), "    鍖呰搴撳瓨鏁伴噺锛�", ppcell.PackagingInventory(), "    闇�瑕佸寘瑁呯殑鏁伴噺锛�", needPackagingQuantity, 
+    //            "    鍖呰lotsize锛�",guard( ppls.LotSize(), 0 ), "    鏈�澶у寘瑁呭閲忥細", ppnc.MaximumDailyPackagingQuantity() );
+          
+          while ( not isnull( indexPPCell )                                                   and 
+                  indexPPCell.StartDate() >= plannedStartDate                                 and 
+                  exists( us, Elements.UnitPeriod.astype( UnitPeriodTime ).ShiftPlan, tempSP, 
+                          tempSP.UnitPeriodTime().StartDate() = indexPPCell.StartDate(),
+                          tempSP.Outcome() <> "" )                                            and
+                  needPackagingQuantity > 0 ) {
+            // 鑳藉寘瑁呯殑鏁伴噺
+            canPackagingQuantity  := ifexpr( ceil( needPackagingQuantity / ppls.LotSize() ) < floor( ppnc.MaximumDailyPackagingQuantity() / ppls.LotSize() ),
+                                             ceil( needPackagingQuantity / ppls.LotSize() ),
+                                             floor( ppnc.MaximumDailyPackagingQuantity() / ppls.LotSize() ) ) * ppls.LotSize();
+    //        info( "寮�濮嬪寘瑁呯殑鏃ユ湡锛�", indexPPCell.StartDate().Format( "Y-M2-D2" ), "    鑳藉寘瑁呯殑鏁伴噺:", canPackagingQuantity );
+            
+            indexPPCell.Package( canPackagingQuantity );
+            Transaction::Transaction().Propagate( attribute( PackagingPlanCell, PackagingInventory ) );
+            Transaction::Transaction().Propagate( attribute( PackagingPlanCell, UnpackagedInventory ) );
+            
+            needPackagingQuantity := needPackagingQuantity - canPackagingQuantity;
+            indexPPCell           := indexPPCell.Previous();
+          }
+        }
+      }
+    }
   *]
 }
diff --git a/_Main/Sys/Repr/Global/PackagingPlanCell.qrp b/_Main/Sys/Repr/Global/PackagingPlanCell.qrp
new file mode 100644
index 0000000..876c5e6
--- /dev/null
+++ b/_Main/Sys/Repr/Global/PackagingPlanCell.qrp
@@ -0,0 +1,51 @@
+Quintiq file version 2.0
+#parent: #root
+TypeRepresentation PackagingPlanCell
+{
+  AttributeRepresentation EndingInventory
+  {
+    AttributeKey: '[413988.0.1393320114]'
+    Synonym: 'Inventory end'
+  }
+  AttributeRepresentation NetDemand
+  {
+    AttributeKey: '[413988.0.1393320104]'
+    Synonym: 'Demand'
+  }
+  AttributeRepresentation NewSupply
+  {
+    AttributeKey: '[415754.0.436130245]'
+    Synonym: 'New supply'
+  }
+  AttributeRepresentation Out
+  {
+    AttributeKey: '[413988.0.1393320156]'
+    Synonym: 'Transport-out'
+  }
+  AttributeRepresentation Package
+  {
+    AttributeKey: '[413988.0.1393320188]'
+    Synonym: 'Package'
+  }
+  AttributeRepresentation PackagingInventory
+  {
+    AttributeKey: '[413988.0.1393320143]'
+    Synonym: 'Packaged'
+  }
+  AttributeRepresentation TransferIn
+  {
+    AttributeKey: '[413988.0.1393320166]'
+    Synonym: 'Transport-in'
+  }
+  AttributeRepresentation UnpackagedInventory
+  {
+    AttributeKey: '[413988.0.1393320130]'
+    Synonym: 'Unpackaged'
+  }
+  AttributeRepresentation Unpacking
+  {
+    AttributeKey: '[413988.0.1393320198]'
+    Synonym: 'Unpackage'
+  }
+  RelationRepresentation AsFirst { RelationKey: '[413988.0.1425205682]' Visibility: 'Normal' }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogMaintainArchivedFiles/Component_abpContent.def b/_Main/UI/MacroPlannerWebApp/Component_DialogMaintainArchivedFiles/Component_abpContent.def
new file mode 100644
index 0000000..3d17366
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogMaintainArchivedFiles/Component_abpContent.def
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+Component abpContent
+{
+  #keys: '[414996.1.144423201]'
+  BaseType: 'listActionBarPage'
+  Properties:
+  [
+    Taborder: 1
+  ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogMaintainArchivedFiles/Component_cmContent.def b/_Main/UI/MacroPlannerWebApp/Component_DialogMaintainArchivedFiles/Component_cmContent.def
new file mode 100644
index 0000000..698f89b
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogMaintainArchivedFiles/Component_cmContent.def
@@ -0,0 +1,24 @@
+Quintiq file version 2.0
+Component cmContent
+{
+  #keys: '[414996.1.144423206]'
+  BaseType: 'listContextMenu'
+  Children:
+  [
+    Component mnDelete
+    {
+      #keys: '[414996.1.144423645]'
+      BaseType: 'WebMenu'
+      Properties:
+      [
+        Image: 'DELETE'
+        Taborder: 3
+        Title: 'Delete'
+      ]
+    }
+  ]
+  Properties:
+  [
+    Taborder: 0
+  ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogMaintainArchivedFiles/Component_lstContent.def b/_Main/UI/MacroPlannerWebApp/Component_DialogMaintainArchivedFiles/Component_lstContent.def
new file mode 100644
index 0000000..f071461
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogMaintainArchivedFiles/Component_lstContent.def
@@ -0,0 +1,59 @@
+Quintiq file version 2.0
+Component lstContent
+{
+  #keys: '[414996.1.144423198]'
+  BaseType: 'WebList'
+  Children:
+  [
+    Component deContent
+    {
+      #keys: '[414996.1.144423199]'
+      BaseType: 'WebDataExtractor'
+      Properties:
+      [
+        DataType: 'Archive'
+        Source: 'Archive'
+        Taborder: 0
+        Transformation: 'ArchiveFile'
+      ]
+    }
+    #child: abpContent
+    Component dslContent
+    {
+      #keys: '[414996.1.144423204]'
+      BaseType: 'WebDataSetLevel'
+      Children:
+      [
+        #child: cmContent
+      ]
+      Properties:
+      [
+        Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Name","title":"Name","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Name"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"FilePath","title":"FilePath","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"FilePath"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"DateTime","title":"DateTime","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"DateTime"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"UserName","title":"UserName","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"UserName"}}]'
+        ContextMenu: 'cmContent'
+        Taborder: 2
+      ]
+    }
+  ]
+  Properties:
+  [
+    Taborder: 0
+  ]
+  ResponseDefinitions:
+  [
+    DelegatedResponseDefinition OnClick id:Responsedef_lstContent_WebMenu_OnClick
+    {
+      #keys: '[414996.1.144423479]'
+      Initiator: 'WebMenu'
+      IsInherited: false
+      ResponseType: 'OnClick'
+      Arguments:
+      [
+        ResponseDefinitionArgument selection
+        {
+          #keys: '[267.0.23880229]'
+          Binding: 'this.Selection()'
+        }
+      ]
+    }
+  ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogMaintainArchivedFiles/Component_pnlContent.def b/_Main/UI/MacroPlannerWebApp/Component_DialogMaintainArchivedFiles/Component_pnlContent.def
new file mode 100644
index 0000000..55877b4
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogMaintainArchivedFiles/Component_pnlContent.def
@@ -0,0 +1,15 @@
+Quintiq file version 2.0
+Component pnlContent
+{
+  #keys: '[414996.1.144423160]'
+  BaseType: 'WebPanel'
+  Children:
+  [
+    #child: lstContent
+  ]
+  Properties:
+  [
+    Padding: 'true'
+    Taborder: 0
+  ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogMaintainArchivedFiles/Method_Create.def b/_Main/UI/MacroPlannerWebApp/Component_DialogMaintainArchivedFiles/Method_Create.def
new file mode 100644
index 0000000..1165fb4
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogMaintainArchivedFiles/Method_Create.def
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+#parent: #root
+Method Create () id:Method_DialogMaintainArchivedFiles_Create
+{
+  #keys: '[414996.1.144423799]'
+  Body:
+  [*
+    ApplicationMacroPlanner.ShowFormModal( this );
+  *]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogMaintainArchivedFiles/Response_lstContent_mnDelete_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_DialogMaintainArchivedFiles/Response_lstContent_mnDelete_OnClick.def
new file mode 100644
index 0000000..eb67442
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogMaintainArchivedFiles/Response_lstContent_mnDelete_OnClick.def
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+#parent: lstContent
+Response OnClick (
+  structured[ArchiveFile] selection
+) id:Response_lstContent_mnDelete_OnClick
+{
+  #keys: '[414996.1.144423689]'
+  CanBindMultiple: false
+  DefinitionID => /lstContent/Responsedef_lstContent_WebMenu_OnClick
+  GroupServerCalls: true
+  Initiator: 'mnDelete'
+  QuillAction
+  {
+    Body:
+    [*
+      if( WebMessageBox::Question( Translations::MessageBox_ConfirmDeletion( "this files" ),Translations::MessageBox_YesNo() ) = 0 ){
+        traverse( selection,Elements,element ){
+          element.Delete();
+        }
+      }
+    *]
+  }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogMaintainArchivedFiles/_ROOT_Component_DialogMaintainArchivedFiles.def b/_Main/UI/MacroPlannerWebApp/Component_DialogMaintainArchivedFiles/_ROOT_Component_DialogMaintainArchivedFiles.def
new file mode 100644
index 0000000..d37216a
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogMaintainArchivedFiles/_ROOT_Component_DialogMaintainArchivedFiles.def
@@ -0,0 +1,20 @@
+Quintiq file version 2.0
+#root
+#parent: MacroPlannerWebApp
+OrphanComponent DialogMaintainArchivedFiles
+{
+  #keys: '[414996.1.144423158]'
+  BaseType: 'WebForm'
+  Children:
+  [
+    #child: pnlContent
+  ]
+  Properties:
+  [
+    Alignment: 'trailing'
+    Description: 'Maintain archived files '
+    ExcludeFromActiveComponent: true
+    Padding: 'false'
+    Title: 'Maintain archived files '
+  ]
+}
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FormDemandComparison/Component_PanelOperation\043568.def" "b/_Main/UI/MacroPlannerWebApp/Component_FormDemandComparison/Component_PanelOperation\043568.def"
index 44b99a9..b87d778 100644
--- "a/_Main/UI/MacroPlannerWebApp/Component_FormDemandComparison/Component_PanelOperation\043568.def"
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FormDemandComparison/Component_PanelOperation\043568.def"
@@ -12,7 +12,7 @@
       Properties:
       [
         Label: '寮�濮嬪姣�'
-        Taborder: 2
+        Taborder: 3
       ]
     }
     Component dhXMLDataListener id:dhXMLDataListener_906
@@ -38,7 +38,7 @@
       ]
       Properties:
       [
-        Taborder: 1
+        Taborder: 2
       ]
     }
     Component bExport id:bExport_98
@@ -49,10 +49,21 @@
       [
         Image: 'EXPORT1'
         Label: '瀵煎嚭'
-        Taborder: 0
+        Taborder: 1
       ]
     }
     #child: pVersionInfomation
+    Component bMaintainArchivedFiles
+    {
+      #keys: '[414996.1.144423972]'
+      BaseType: 'WebButton'
+      Properties:
+      [
+        Image: 'MAGAZINE_FOLDER'
+        Label: 'M'
+        Taborder: 0
+      ]
+    }
   ]
   Properties:
   [
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormDemandComparison/Component_pVersionInfomation.def b/_Main/UI/MacroPlannerWebApp/Component_FormDemandComparison/Component_pVersionInfomation.def
index f06061c..4cb57ad 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormDemandComparison/Component_pVersionInfomation.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormDemandComparison/Component_pVersionInfomation.def
@@ -5,8 +5,6 @@
   BaseType: 'WebPanel'
   Children:
   [
-    #child: pVersionInfomationBase
-    #child: pVersionInfomationCompare
     Component dhCompareVersion
     {
       #keys: '[414996.1.137780879]'
@@ -27,9 +25,33 @@
         Taborder: 2
       ]
     }
+    Component lBaseVersionName
+    {
+      #keys: '[414996.1.144422027]'
+      BaseType: 'WebLabel'
+      Properties:
+      [
+        DataBinding: 'dhBaseVersion.Data.Name'
+        Label: '鍩哄噯闇�姹傜増鏈細'
+        NumberOfColumns: 50
+        Taborder: 0
+      ]
+    }
+    Component lCompareVersionName
+    {
+      #keys: '[414996.1.144422050]'
+      BaseType: 'WebLabel'
+      Properties:
+      [
+        DataBinding: 'dhCompareVersion.Data.Name'
+        Label: '瀵规瘮闇�姹傜増鏈細'
+        NumberOfColumns: 50
+        Taborder: 1
+      ]
+    }
   ]
   Properties:
   [
-    Taborder: 3
+    Taborder: 4
   ]
 }
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormDemandComparison/Component_pVersionInfomationBase.def b/_Main/UI/MacroPlannerWebApp/Component_FormDemandComparison/Component_pVersionInfomationBase.def
deleted file mode 100644
index 6d7436e..0000000
--- a/_Main/UI/MacroPlannerWebApp/Component_FormDemandComparison/Component_pVersionInfomationBase.def
+++ /dev/null
@@ -1,37 +0,0 @@
-Quintiq file version 2.0
-Component pVersionInfomationBase
-{
-  #keys: '[414996.1.137700459]'
-  BaseType: 'WebPanel'
-  Children:
-  [
-    Component lBaseVersionName id:lBaseVersionName_774
-    {
-      #keys: '[414996.1.137700529]'
-      BaseType: 'WebLabel'
-      Properties:
-      [
-        DataBinding: 'dhBaseVersion.Data.Name'
-        Label: '鍩哄噯闇�姹傜増鏈細'
-        Taborder: 1
-      ]
-    }
-    Component ButtonDelete
-    {
-      #keys: '[414996.1.137420506]'
-      BaseType: 'WebButton'
-      Properties:
-      [
-        Image: 'DELETE'
-        Label: 'Delete'
-        Taborder: 0
-      ]
-    }
-  ]
-  Properties:
-  [
-    FixedSize: true
-    Orientation: 'horizontal'
-    Taborder: 0
-  ]
-}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormDemandComparison/Component_pVersionInfomationCompare.def b/_Main/UI/MacroPlannerWebApp/Component_FormDemandComparison/Component_pVersionInfomationCompare.def
deleted file mode 100644
index e0e936b..0000000
--- a/_Main/UI/MacroPlannerWebApp/Component_FormDemandComparison/Component_pVersionInfomationCompare.def
+++ /dev/null
@@ -1,37 +0,0 @@
-Quintiq file version 2.0
-Component pVersionInfomationCompare
-{
-  #keys: '[414996.1.137700548]'
-  BaseType: 'WebPanel'
-  Children:
-  [
-    Component lCompareVersionName id:lCompareVersionName_456
-    {
-      #keys: '[414996.1.137700586]'
-      BaseType: 'WebLabel'
-      Properties:
-      [
-        DataBinding: 'dhCompareVersion.Data.Name'
-        Label: '瀵规瘮闇�姹傜増鏈細'
-        Taborder: 1
-      ]
-    }
-    Component ButtonDelete2
-    {
-      #keys: '[414996.1.137740415]'
-      BaseType: 'WebButton'
-      Properties:
-      [
-        Image: 'DELETE'
-        Label: 'Delete'
-        Taborder: 0
-      ]
-    }
-  ]
-  Properties:
-  [
-    FixedSize: true
-    Orientation: 'horizontal'
-    Taborder: 1
-  ]
-}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormDemandComparison/Response_PanelOperation_568_bMaintainArchivedFiles_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormDemandComparison/Response_PanelOperation_568_bMaintainArchivedFiles_OnClick.def
new file mode 100644
index 0000000..c0d561f
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormDemandComparison/Response_PanelOperation_568_bMaintainArchivedFiles_OnClick.def
@@ -0,0 +1,17 @@
+Quintiq file version 2.0
+#parent: PanelOperation_568/bMaintainArchivedFiles
+Response OnClick () id:Response_PanelOperation_568_bMaintainArchivedFiles_OnClick
+{
+  #keys: '[414996.1.144820904]'
+  CanBindMultiple: false
+  DefinitionID: 'Responsedef_WebButton_OnClick'
+  QuillAction
+  {
+    Body:
+    [*
+      dlg := construct( DialogMaintainArchivedFiles );
+      dlg.Create();
+    *]
+    GroupServerCalls: false
+  }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormDemandComparison/Response_pVersionInfomationBase_ButtonDelete_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormDemandComparison/Response_pVersionInfomationBase_ButtonDelete_OnClick.def
deleted file mode 100644
index ecf5902..0000000
--- a/_Main/UI/MacroPlannerWebApp/Component_FormDemandComparison/Response_pVersionInfomationBase_ButtonDelete_OnClick.def
+++ /dev/null
@@ -1,18 +0,0 @@
-Quintiq file version 2.0
-#parent: pVersionInfomationBase/ButtonDelete
-Response OnClick () id:Response_pVersionInfomationBase_ButtonDelete_OnClick
-{
-  #keys: '[414996.1.137612795]'
-  CanBindMultiple: false
-  DefinitionID: 'Responsedef_WebButton_OnClick'
-  GroupServerCalls: true
-  QuillAction
-  {
-    Body:
-    [*
-      if( WebMessageBox::Question( Translations::MessageBox_ConfirmDeletion( dhBaseVersion.Name() ),Translations::MessageBox_YesNo() ) = 0 ){
-        dhBaseVersion.Data().Delete();
-      }
-    *]
-  }
-}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormDemandComparison/Response_pVersionInfomationCompare_ButtonDelete2_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormDemandComparison/Response_pVersionInfomationCompare_ButtonDelete2_OnClick.def
deleted file mode 100644
index 8448354..0000000
--- a/_Main/UI/MacroPlannerWebApp/Component_FormDemandComparison/Response_pVersionInfomationCompare_ButtonDelete2_OnClick.def
+++ /dev/null
@@ -1,18 +0,0 @@
-Quintiq file version 2.0
-#parent: pVersionInfomationCompare/ButtonDelete2
-Response OnClick () id:Response_pVersionInfomationCompare_ButtonDelete2_OnClick
-{
-  #keys: '[414996.1.137612881]'
-  CanBindMultiple: false
-  DefinitionID: 'Responsedef_WebButton_OnClick'
-  GroupServerCalls: true
-  QuillAction
-  {
-    Body:
-    [*
-      if( WebMessageBox::Question( Translations::MessageBox_ConfirmDeletion( dhBaseVersion.Name() ),Translations::MessageBox_YesNo() ) = 0 ){
-        dhCompareVersion.Data().Delete();
-      }
-    *]
-  }
-}
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"
index f919155..9917d6f 100644
--- "a/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanComparison/Response_PanelRibbon504_bExport_OnClick\043891.def"
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanComparison/Response_PanelRibbon504_bExport_OnClick\043891.def"
@@ -11,7 +11,7 @@
     Body:
     [*
       rows := selectset( dhTable.Data(),LocalRow,row,exists( dhFinelProduct.Data(),Elements,product,product.ID() = row.ProductID()));
-      columns := selectset( dhTable.Data( ),LocalColumn,column,true );
+      columns := selectset( dhTable.Data( ),LocalColumn,column,not column.IsAttrbuteColumn() and dhStartDate.Data() <= column.Date() and dhEndDate.Data() > column.Date() );
       LocalCell_ProductionComparison::AsyncExport( RecycleBin, rows, columns, MacroPlan );
     *]
   }
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormPackagingPlan/Component_MatrixEditor493.def b/_Main/UI/MacroPlannerWebApp/Component_FormPackagingPlan/Component_MatrixEditor493.def
index c33b1c6..6a2a171 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormPackagingPlan/Component_MatrixEditor493.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormPackagingPlan/Component_MatrixEditor493.def
@@ -26,7 +26,7 @@
       ]
       Properties:
       [
-        Attributes: 'NetDemand;EndingInventory;UnpackagedInventory;PackagingInventory;Out;TransferIn;Package;Unpacking'
+        Attributes: 'NetDemand;NewSupply;EndingInventory;Out;TransferIn;UnpackagedInventory;PackagingInventory;Package;Unpacking'
         Column: 'PackagingPlanColumn'
         Row: 'PackagingPlanRow'
         Taborder: 0

--
Gitblit v1.9.3