From 7fccbbd4d9982aaa349b36cf8031cddac610e57f Mon Sep 17 00:00:00 2001
From: xiaoding721 <33130084+xiaoding721@users.noreply.github.com>
Date: 星期三, 20 十一月 2024 15:54:48 +0800
Subject: [PATCH] Merge branch 'dev' of http://47.101.211.7:10101/r/VWED into dev

---
 _Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Component_PanelProductLine#623.def                   |    1 
 _Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Component_PanelUnit#424.def                          |    1 
 _Main/BL/Type_NewOfflinePlanCell/StaticMethod_UpdateQuantity.qbl                                                         |   17 ++++
 _Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelOperation#603.def                          |    6 
 _Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelUnit#925.def                               |    1 
 _Main/BL/Type_AssemblyOnlinePlanVersion/StaticMethod_InitiateSearch.qbl                                                  |    4 
 _Main/BL/Type_CustomerDemandIDS/StaticMethod_GenerateData.qbl                                                            |    3 
 _Main/BL/Type_InventoryPlanArchiveVersion/StaticMethod_GenerateData.qbl                                                  |    4 
 _Main/BL/Type_NewOfflinePlanCell/StaticMethod_SynchronizeToNewSupply.qbl                                                 |   17 +--
 _Main/BL/Type_InventoryPlanArchiveVersion/Method_GenerateColumn.qbl                                                      |    2 
 _Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Component_PanelColumnSearch.def                      |    1 
 _Main/BL/Type_OfflinePlanArchiveVersion/Method_Generate.qbl                                                              |    2 
 _Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelProduct.def                                |    1 
 _Main/BL/Type_OfflinePlanArchiveVersion/Method_GenerateColumn.qbl                                                        |    2 
 _Main/BL/Type_InventoryPlanArchiveVersion/StaticMethod_InitiateSearch.qbl                                                |    4 
 _Main/BL/Type_AssemblyOnlinePlanVersion/Method_Generate.qbl                                                              |    8 +-
 _Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Component_PanelProductSearch.def                     |    2 
 _Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Component_PanelProduct.def                           |    1 
 _Main/BL/Type_NewOfflinePlanCell/StaticMethod_UpdateOrder.qbl                                                            |   11 ++
 _Main/Sys/Repr/Global/NewAssemblyOnlinePlanCell.qrp                                                                      |    8 ++
 _Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Component_PanelOperation#653.def                     |    6 
 _Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Response_PanelOperation_653_ButtonSearch_OnClick.def |   20 +++++
 _Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelColumnSearch.def                           |    1 
 _Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelRowSearch.def                              |    2 
 _Main/BL/Type_CustomerDemandIDS/Method_Generate.qbl                                                                      |    5 
 _Main/BL/Type_InventoryPlanArchiveVersion/Method_Generate.qbl                                                            |    7 +
 /dev/null                                                                                                                |   18 ----
 _Main/UI/MacroPlannerWebApp/Component_FormCustomerDemandPPAIDS/Component_PanelProduct.def                                |    1 
 _Main/BL/Type_CustomerDemandIDS/StaticMethod_InitiateSearch.qbl                                                          |    3 
 _Main/UI/MacroPlannerWebApp/Component_FormCustomerDemandPPAIDS/Component_PanelOperation.def                              |    1 
 _Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Response_PanelOperation_603_ButtonSearch_OnClick.def      |   20 +++++
 _Main/UI/MacroPlannerWebApp/Component_FormCustomerDemandPPAIDS/Response_PanelOperation_ButtonSearch_OnClick.def          |    3 
 _Main/BL/Type_AssemblyOnlinePlanVersion/StaticMethod_RefreshData.qbl                                                     |    4 
 33 files changed, 129 insertions(+), 58 deletions(-)

diff --git a/_Main/BL/Type_AssemblyOnlinePlanVersion/Method_Generate.qbl b/_Main/BL/Type_AssemblyOnlinePlanVersion/Method_Generate.qbl
index a13a3a7..56fd503 100644
--- a/_Main/BL/Type_AssemblyOnlinePlanVersion/Method_Generate.qbl
+++ b/_Main/BL/Type_AssemblyOnlinePlanVersion/Method_Generate.qbl
@@ -1,7 +1,9 @@
 Quintiq file version 2.0
 #parent: #root
 Method Generate (
-  AssemblyOnlinePlanVersionSearch search
+  AssemblyOnlinePlanVersionSearch search,
+  Strings products,
+  Strings units
 )
 {
   TextBody:
@@ -12,9 +14,7 @@
     //娓呯┖涔嬪墠瀛樺偍鐨勬樉绀烘暟鎹�
     aopcolumns              := selectuniquevalues(  table, Column, aopcolumn, aopcolumn.TimeUnit() = search.TimeUnit() and aopcolumn.StartDate() >= search.StartDate() and aopcolumn.StartDate() <= search.EndDate(), aopcolumn.StartDate() );
     this.Clear( aopcolumns );
-    traverse( table, Row, row, ( search.Unit() = FinancialProductionReport::GetDefaultAllUnit() or row.Unit() = search.Unit() ) 
-              and ( search.Product() = FinancialProductionReport::GetDefaultAllUnit() or search.Product() = row.Name() )
-              and ( search.ProductionLine() = FinancialProductionReport::GetDefaultAllUnit() or search.ProductionLine() = row.ProductionLine() ) ){
+    traverse( table, Row, row, ( units.Size() = 0 or units.Find( row.ProductionLine() ) > -1 ) and ( products.Size() = 0 or products.Find( row.Name() ) > -1 )  ){
       
       showrow               := selectobject( this, Row, showrow, showrow.Name() = row.Name() and showrow.Unit() = search.Unit() );
       if( isnull( showrow ) ){
diff --git a/_Main/BL/Type_AssemblyOnlinePlanVersion/StaticMethod_InitiateSearch.qbl b/_Main/BL/Type_AssemblyOnlinePlanVersion/StaticMethod_InitiateSearch.qbl
index d60f029..59cd18e 100644
--- a/_Main/BL/Type_AssemblyOnlinePlanVersion/StaticMethod_InitiateSearch.qbl
+++ b/_Main/BL/Type_AssemblyOnlinePlanVersion/StaticMethod_InitiateSearch.qbl
@@ -22,7 +22,9 @@
     }
     table                     := selectobject( owner, AssemblyOnlinePlanVersion, table, table.IsShow() );
     if( not isnull( table ) ){
-      table.Generate( search);
+      productids             := selectuniquevalues( table, Row, row, row.Name() );
+      productlines           := selectuniquevalues( table, Row, row, row.Unit() );
+      table.Generate( search, productids, productlines );
     }
     return table;
   *]
diff --git a/_Main/BL/Type_AssemblyOnlinePlanVersion/StaticMethod_RefreshData.qbl b/_Main/BL/Type_AssemblyOnlinePlanVersion/StaticMethod_RefreshData.qbl
index b4665c0..aebe9c1 100644
--- a/_Main/BL/Type_AssemblyOnlinePlanVersion/StaticMethod_RefreshData.qbl
+++ b/_Main/BL/Type_AssemblyOnlinePlanVersion/StaticMethod_RefreshData.qbl
@@ -34,6 +34,8 @@
         cell.Quantity( qty );
       }
     }
-    showtable.Generate( search );
+    productids             := selectuniquevalues( table, Row, row, row.Name() );
+    productlines           := selectuniquevalues( table, Row, row, row.ProductionLine() );
+    showtable.Generate( search, productids, productlines );
   *]
 }
diff --git a/_Main/BL/Type_CustomerDemandIDS/Method_Generate.qbl b/_Main/BL/Type_CustomerDemandIDS/Method_Generate.qbl
index 80c7eae..454d677 100644
--- a/_Main/BL/Type_CustomerDemandIDS/Method_Generate.qbl
+++ b/_Main/BL/Type_CustomerDemandIDS/Method_Generate.qbl
@@ -1,7 +1,8 @@
 Quintiq file version 2.0
 #parent: #root
 Method Generate (
-  CustomerDemandIDSSearch search
+  CustomerDemandIDSSearch search,
+  Strings products
 )
 {
   TextBody:
@@ -13,7 +14,7 @@
     idscolumns              := selectuniquevalues(  table, Column, idscolumn, idscolumn.TimeUnit() = search.TimeUnit() and idscolumn.StartDate() >= search.StartDate() and idscolumn.StartDate() <= search.EndDate(), idscolumn.StartDate() );
     this.Clear( idscolumns );
     traverse( table, Row, row, ( search.Unit() = FinancialProductionReport::GetDefaultAllUnit() or row.Factory() = search.Unit() ) 
-              and ( search.Product() = FinancialProductionReport::GetDefaultAllUnit() or search.Product() = row.Name() ) ){
+              and ( products.Size() = 0 or products.Find( row.Name() ) > -1 ) ){
       
       showrow               := selectobject( this, Row, showrow, showrow.Name() = row.Name() and showrow.Factory() = search.Unit() );
       if( isnull( showrow ) ){
diff --git a/_Main/BL/Type_CustomerDemandIDS/StaticMethod_GenerateData.qbl b/_Main/BL/Type_CustomerDemandIDS/StaticMethod_GenerateData.qbl
index 080d8f1..2de24a2 100644
--- a/_Main/BL/Type_CustomerDemandIDS/StaticMethod_GenerateData.qbl
+++ b/_Main/BL/Type_CustomerDemandIDS/StaticMethod_GenerateData.qbl
@@ -77,6 +77,7 @@
     
     source.Delete();
     info( '-------------------------End---------------------');
-    showtable.Generate( search );
+    productids             := selectuniquevalues( idstable, Row, row, row.Name() );
+    showtable.Generate( search, productids );
   *]
 }
diff --git a/_Main/BL/Type_CustomerDemandIDS/StaticMethod_InitiateSearch.qbl b/_Main/BL/Type_CustomerDemandIDS/StaticMethod_InitiateSearch.qbl
index 838f7e1..fe25074 100644
--- a/_Main/BL/Type_CustomerDemandIDS/StaticMethod_InitiateSearch.qbl
+++ b/_Main/BL/Type_CustomerDemandIDS/StaticMethod_InitiateSearch.qbl
@@ -21,7 +21,8 @@
     }
     table                     := selectobject( owner, CustomerDemandIDS, table, table.IsShow() );
     if( not isnull( table ) ){
-      table.Generate( search);
+      productids             := selectuniquevalues( table, Row, row, row.Name() );
+      table.Generate( search, productids );
     }
     return table;
   *]
diff --git a/_Main/BL/Type_InventoryPlanArchiveVersion/Method_Generate.qbl b/_Main/BL/Type_InventoryPlanArchiveVersion/Method_Generate.qbl
index 52dc1a3..5bcf2f4 100644
--- a/_Main/BL/Type_InventoryPlanArchiveVersion/Method_Generate.qbl
+++ b/_Main/BL/Type_InventoryPlanArchiveVersion/Method_Generate.qbl
@@ -1,7 +1,9 @@
 Quintiq file version 2.0
 #parent: #root
 Method Generate (
-  InventoryPlanArchiveVersionSearch search
+  InventoryPlanArchiveVersionSearch search,
+  Strings products,
+  Strings units
 )
 {
   TextBody:
@@ -12,8 +14,7 @@
     //娓呯┖涔嬪墠瀛樺偍鐨勬樉绀烘暟鎹�
     aopcolumns              := selectuniquevalues(  table, Column, aopcolumn, aopcolumn.TimeUnit() = search.TimeUnit() and aopcolumn.StartDate() >= search.StartDate() and aopcolumn.StartDate() <= search.EndDate(), aopcolumn.StartDate() );
     this.Clear( aopcolumns );
-    traverse( table, Row, row, ( search.Unit() = FinancialProductionReport::GetDefaultAllUnit() or row.Unit() = search.Unit() ) 
-              and ( search.Product() = FinancialProductionReport::GetDefaultAllUnit() or search.Product() = row.Name() )){
+    traverse( table, Row, row, ( units.Size() = 0 or units.Find( row.Unit() ) > -1 ) and ( products.Size() = 0 or products.Find( row.Name() ) > -1 ) ){
       
       showrow               := selectobject( this, Row, showrow, showrow.Name() = row.Name() and showrow.Unit() = search.Unit() );
       if( isnull( showrow ) ){
diff --git a/_Main/BL/Type_InventoryPlanArchiveVersion/Method_GenerateColumn.qbl b/_Main/BL/Type_InventoryPlanArchiveVersion/Method_GenerateColumn.qbl
index 4153da1..e4b553d 100644
--- a/_Main/BL/Type_InventoryPlanArchiveVersion/Method_GenerateColumn.qbl
+++ b/_Main/BL/Type_InventoryPlanArchiveVersion/Method_GenerateColumn.qbl
@@ -9,7 +9,7 @@
   TextBody:
   [*
     // 鐢勫叞楦� Jun-25-2024 (created)
-    timeunit              := guard( this.InterfaceDataset().AssemblyOnlinePlanVersionSearch().TimeUnit(), Translations::MP_GlobalParameters_Day() ) ;
+    timeunit              := guard( this.InterfaceDataset().InventoryPlanArchiveVersionSearch().TimeUnit(), Translations::MP_GlobalParameters_Day() ) ;
     weekstart             := periods.Element( 0 );
     
     monthstart            := periods.Element( 0 );
diff --git a/_Main/BL/Type_InventoryPlanArchiveVersion/StaticMethod_GenerateData.qbl b/_Main/BL/Type_InventoryPlanArchiveVersion/StaticMethod_GenerateData.qbl
index 9c03d40..bd4c18b 100644
--- a/_Main/BL/Type_InventoryPlanArchiveVersion/StaticMethod_GenerateData.qbl
+++ b/_Main/BL/Type_InventoryPlanArchiveVersion/StaticMethod_GenerateData.qbl
@@ -74,6 +74,8 @@
     }
     
     info( '-------------------------End---------------------');
-    showtable.Generate( search );
+    productids             := selectuniquevalues( table, Row, row, row.Name() );
+    productlines           := selectuniquevalues( table, Row, row, row.Unit() );
+    showtable.Generate( search, productids, productlines );
   *]
 }
diff --git a/_Main/BL/Type_InventoryPlanArchiveVersion/StaticMethod_InitiateSearch.qbl b/_Main/BL/Type_InventoryPlanArchiveVersion/StaticMethod_InitiateSearch.qbl
index 46683f7..2e90a8c 100644
--- a/_Main/BL/Type_InventoryPlanArchiveVersion/StaticMethod_InitiateSearch.qbl
+++ b/_Main/BL/Type_InventoryPlanArchiveVersion/StaticMethod_InitiateSearch.qbl
@@ -21,7 +21,9 @@
     }
     table                     := selectobject( owner, InventoryPlanArchiveVersion, table, table.IsShow() );
     if( not isnull( table ) ){
-      table.Generate( search);
+      productids             := selectuniquevalues( table, Row, row, row.Name() );
+      productlines           := selectuniquevalues( table, Row, row, row.Unit() );
+      table.Generate( search, productids, productlines );
     }
     return table;
   *]
diff --git a/_Main/BL/Type_NewOfflinePlanCell/StaticMethod_SynchronizeToNewSupply.qbl b/_Main/BL/Type_NewOfflinePlanCell/StaticMethod_SynchronizeToNewSupply.qbl
index 4c521e8..d00ed54 100644
--- a/_Main/BL/Type_NewOfflinePlanCell/StaticMethod_SynchronizeToNewSupply.qbl
+++ b/_Main/BL/Type_NewOfflinePlanCell/StaticMethod_SynchronizeToNewSupply.qbl
@@ -9,28 +9,25 @@
   TextBody:
   [*
     traverse ( selectedRows, Elements.NewOfflinePlanCell, cell, 
-               cell.NewOfflinePlanRow().Type() = "1" and cell.Quantity() > 0.0 
+               cell.NewOfflinePlanRow().Type() = "1" and cell.Quantity() >= 0.0 
     //           and cell.NewOfflinePlanRow().ProductionLine() = "eMotor Assy (France)" and cell.NewOfflinePlanColumn().StartDate() = Date::Construct( 2020, 4, 4 )
              ) 
     {
-     pto := select( macroPlan, Unit.Operation.PeriodTaskOperation, tempPTO,
-                    exists( tempPTO, NewSupply, tempNS, tempNS.ProductInStockingPointInPeriodPlanningLeaf().ProductInStockingPoint_MP().ProductID() = cell.NewOfflinePlanRow().ProductID() ) and
-                    tempPTO.Operation().UnitID() = cell.NewOfflinePlanRow().ProductionLine()                                                                                                 and
-                    tempPTO.Start().Date()       = cell.NewOfflinePlanColumn().StartDate() );
-      if ( isnull( pto ) ) {
+      pto := select( macroPlan, Unit.Operation.PeriodTaskOperation, tempPTO,
+                     exists( tempPTO, NewSupply, tempNS, tempNS.ProductInStockingPointInPeriodPlanningLeaf().ProductInStockingPoint_MP().ProductID() = cell.NewOfflinePlanRow().ProductID() ) and
+                     tempPTO.Operation().UnitID() = cell.NewOfflinePlanRow().ProductionLine()                                                                                                 and
+                     tempPTO.Start().Date()       = cell.NewOfflinePlanColumn().StartDate() );
+      if ( isnull( pto ) and cell.Quantity() > 0 ) {
         o  := select( macroPlan, Unit.Operation, tempO, tempO.ID() = cell.NewOfflinePlanRow().OperationID() );
         up := select( macroPlan, Unit.UnitPeriod, tempUP, tempUP.UnitID() = cell.NewOfflinePlanRow().ProductionLine() and tempUP.StartDate() = cell.NewOfflinePlanColumn().StartDate() );
         if ( not isnull( o ) and not isnull( up ) ) {
           PeriodTaskOperation::Create( o, up, cell.Quantity(), false );
         }
-      } else {
+      } else if ( not isnull( pto ) ) {
         if ( [Number]cell.Quantity() <> [Number]pto.Quantity() ) {
           pto.Update( cell.Quantity(), false );
         }
       }
-      
-      
-      
       
     }
   *]
diff --git a/_Main/BL/Type_NewOfflinePlanCell/StaticMethod_UpdateOrder.qbl b/_Main/BL/Type_NewOfflinePlanCell/StaticMethod_UpdateOrder.qbl
index 987530c..67fd195 100644
--- a/_Main/BL/Type_NewOfflinePlanCell/StaticMethod_UpdateOrder.qbl
+++ b/_Main/BL/Type_NewOfflinePlanCell/StaticMethod_UpdateOrder.qbl
@@ -18,7 +18,16 @@
     
     if ( guard( [Number]value.SubString( 1, 2 ) <= 0, true ) ) {
       error( "涓嶇鍚堟牸寮�" );
-    };
+    }
+    
+    if ( exists( nopc, NewOfflinePlanColumn.NewOfflinePlanCell, tempNOPCell, 
+                 tempNOPCell                                      <> nopc                                      and
+                 tempNOPCell.NewOfflinePlanRow().Type()           =  "1"                                       and
+                 tempNOPCell.NewOfflinePlanRow().ProductionLine() =  nopc.NewOfflinePlanRow().ProductionLine(),
+                 tempNOPCell.OrderNr() = [Number]value.SubString( 1, 2 ) ) 
+        ) {
+      error( "宸茬粡瀛樺湪Order锛�", [Number]value.SubString( 1, 2 ) );
+    }
     
     nopc.Order( value );
     nopc.OrderNr( [Number]value.SubString( 1, 2 ) );
diff --git a/_Main/BL/Type_NewOfflinePlanCell/StaticMethod_UpdateQuantity.qbl b/_Main/BL/Type_NewOfflinePlanCell/StaticMethod_UpdateQuantity.qbl
index 7e82739..9dde79f 100644
--- a/_Main/BL/Type_NewOfflinePlanCell/StaticMethod_UpdateQuantity.qbl
+++ b/_Main/BL/Type_NewOfflinePlanCell/StaticMethod_UpdateQuantity.qbl
@@ -6,5 +6,20 @@
   String attrName
 )
 {
-  TextBody: 'nopc.Quantity( value );'
+  TextBody:
+  [*
+    if ( value < 0 ) {
+      error( "鏁伴噺涓嶈兘涓鸿礋" );
+    }
+    
+    nopc.Quantity( value );
+    
+    // 鏁伴噺涓�0锛屼慨鏀筄rder
+    if ( value = 0 ) {
+      nopc.Order( "" );
+      nopc.OrderNr( 0 );
+    }
+    
+    // 濡傛灉鏁伴噺涓嶄负0锛屼慨鏀筄rder
+  *]
 }
diff --git a/_Main/BL/Type_OfflinePlanArchiveVersion/Method_Generate.qbl b/_Main/BL/Type_OfflinePlanArchiveVersion/Method_Generate.qbl
index 0c8071c..e97dc5c 100644
--- a/_Main/BL/Type_OfflinePlanArchiveVersion/Method_Generate.qbl
+++ b/_Main/BL/Type_OfflinePlanArchiveVersion/Method_Generate.qbl
@@ -14,7 +14,7 @@
     //娓呯┖涔嬪墠瀛樺偍鐨勬樉绀烘暟鎹�
     aopcolumns              := selectuniquevalues(  table, Column, aopcolumn, aopcolumn.TimeUnit() = search.TimeUnit() and aopcolumn.StartDate() >= search.StartDate() and aopcolumn.StartDate() <= search.EndDate(), aopcolumn.StartDate() );
     this.Clear( aopcolumns );
-    traverse( table, Row, row, units.Find( row.ProductionLine() ) > -1 and products.Find( row.Name() ) > -1 ){
+    traverse( table, Row, row, ( units.Size() = 0 or units.Find( row.ProductionLine() ) > -1 ) and ( products.Size() = 0 or products.Find( row.Name() ) > -1 ) ){
       
       showrow               := selectobject( this, Row, showrow, showrow.Name() = row.Name() and showrow.Unit() = search.Unit() );
       if( isnull( showrow ) ){
diff --git a/_Main/BL/Type_OfflinePlanArchiveVersion/Method_GenerateColumn.qbl b/_Main/BL/Type_OfflinePlanArchiveVersion/Method_GenerateColumn.qbl
index 2a3b3f3..593691d 100644
--- a/_Main/BL/Type_OfflinePlanArchiveVersion/Method_GenerateColumn.qbl
+++ b/_Main/BL/Type_OfflinePlanArchiveVersion/Method_GenerateColumn.qbl
@@ -9,7 +9,7 @@
   TextBody:
   [*
     // 鐢勫叞楦� Jun-25-2024 (created)
-    timeunit              := guard( this.InterfaceDataset().AssemblyOnlinePlanVersionSearch().TimeUnit(), Translations::MP_GlobalParameters_Day() ) ;
+    timeunit              := guard( this.InterfaceDataset().OfflinePlanArchiveSearch().TimeUnit(), Translations::MP_GlobalParameters_Day() ) ;
     weekstart             := periods.Element( 0 );
     
     monthstart            := periods.Element( 0 );
diff --git a/_Main/Sys/Repr/Global/NewAssemblyOnlinePlanCell.qrp b/_Main/Sys/Repr/Global/NewAssemblyOnlinePlanCell.qrp
index c8ae0df..59a9871 100644
--- a/_Main/Sys/Repr/Global/NewAssemblyOnlinePlanCell.qrp
+++ b/_Main/Sys/Repr/Global/NewAssemblyOnlinePlanCell.qrp
@@ -25,6 +25,14 @@
         DefaultBackgroundColor: false
         InheritConversion: false
       }
+      DataRepresentation.Conditional
+      {
+        BackgroundColor: '$FF0066'
+        ConditionBody: 'object.Quantity() < 0.0'
+        ConversionBody: ''
+        DefaultBackgroundColor: false
+        InheritConversion: false
+      }
     ]
   }
   AttributeRepresentation ShiftPatternEnd
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Component_PanelColumnSearch.def b/_Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Component_PanelColumnSearch.def
index 08be1a7..35f8d03 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Component_PanelColumnSearch.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Component_PanelColumnSearch.def
@@ -7,6 +7,7 @@
   [
     #child: PanelPeriod_384
     #child: PanelTimeUnit
+    #child: PanelOperation_653
   ]
   Properties:
   [
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelOperation.def "b/_Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Component_PanelOperation\043653.def"
similarity index 67%
copy from _Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelOperation.def
copy to "_Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Component_PanelOperation\043653.def"
index fe79643..e86d851 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelOperation.def
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Component_PanelOperation\043653.def"
@@ -1,13 +1,13 @@
 Quintiq file version 2.0
-Component PanelOperation
+Component PanelOperation id:PanelOperation_653
 {
-  #keys: '[415136.0.1307935388]'
+  #keys: '[415136.0.1325100270]'
   BaseType: 'WebPanel'
   Children:
   [
     Component ButtonSearch
     {
-      #keys: '[415136.0.1307935389]'
+      #keys: '[415136.0.1325100271]'
       BaseType: 'WebButton'
       Properties:
       [
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Component_PanelOperation.def b/_Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Component_PanelOperation.def
deleted file mode 100644
index eaabdb8..0000000
--- a/_Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Component_PanelOperation.def
+++ /dev/null
@@ -1,23 +0,0 @@
-Quintiq file version 2.0
-Component PanelOperation
-{
-  #keys: '[415136.0.1307730510]'
-  BaseType: 'WebPanel'
-  Children:
-  [
-    Component ButtonSearch
-    {
-      #keys: '[415136.0.1307730511]'
-      BaseType: 'WebButton'
-      Properties:
-      [
-        Image: 'VIEW'
-        Taborder: 0
-      ]
-    }
-  ]
-  Properties:
-  [
-    Taborder: 3
-  ]
-}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Component_PanelProduct.def b/_Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Component_PanelProduct.def
index f95a591..04b4eac 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Component_PanelProduct.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Component_PanelProduct.def
@@ -21,5 +21,6 @@
   Properties:
   [
     Taborder: 2
+    Visible: false
   ]
 }
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Component_PanelProductLine\043623.def" "b/_Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Component_PanelProductLine\043623.def"
index e027346..f3bcb1f 100644
--- "a/_Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Component_PanelProductLine\043623.def"
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Component_PanelProductLine\043623.def"
@@ -19,5 +19,6 @@
   Properties:
   [
     Taborder: 1
+    Visible: false
   ]
 }
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Component_PanelProductSearch.def b/_Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Component_PanelProductSearch.def
index 242e37c..ae55515 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Component_PanelProductSearch.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Component_PanelProductSearch.def
@@ -5,7 +5,6 @@
   BaseType: 'WebPanel'
   Children:
   [
-    #child: PanelOperation
     #child: PanelUnit_424
     #child: PanelProductLine_623
     #child: PanelProduct
@@ -14,5 +13,6 @@
   [
     Orientation: 'horizontal'
     Taborder: 0
+    Visible: false
   ]
 }
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Component_PanelUnit\043424.def" "b/_Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Component_PanelUnit\043424.def"
index a4a9b96..11d83b7 100644
--- "a/_Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Component_PanelUnit\043424.def"
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Component_PanelUnit\043424.def"
@@ -19,5 +19,6 @@
   Properties:
   [
     Taborder: 0
+    Visible: false
   ]
 }
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Response_PanelOperation_653_ButtonSearch_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Response_PanelOperation_653_ButtonSearch_OnClick.def
new file mode 100644
index 0000000..9eed8ea
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Response_PanelOperation_653_ButtonSearch_OnClick.def
@@ -0,0 +1,20 @@
+Quintiq file version 2.0
+#parent: PanelOperation_653/ButtonSearch
+Response OnClick () id:Response_PanelOperation_653_ButtonSearch_OnClick
+{
+  #keys: '[415136.0.1325100269]'
+  CanBindMultiple: false
+  DefinitionID: 'Responsedef_WebButton_OnClick'
+  QuillAction
+  {
+    Body:
+    [*
+      if( not isnull( DataHolderTable.Data() ) ){ 
+        productids      := selectuniquevalues( DataHolderProduct.Data(), Elements, product, product.ID() );
+        units           := selectuniquevalues( DataHolderUnit.Data(), Elements, unit, unit.ID() );
+        DataHolderTable.Data().Generate( dhSearch.Data(), productids, units );
+      }
+    *]
+    GroupServerCalls: false
+  }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Response_PanelOperation_ButtonSearch_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Response_PanelOperation_ButtonSearch_OnClick.def
deleted file mode 100644
index 32087c6..0000000
--- a/_Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Response_PanelOperation_ButtonSearch_OnClick.def
+++ /dev/null
@@ -1,18 +0,0 @@
-Quintiq file version 2.0
-#parent: PanelOperation/ButtonSearch
-Response OnClick () id:Response_PanelOperation_ButtonSearch_OnClick
-{
-  #keys: '[415136.0.1307730509]'
-  CanBindMultiple: false
-  DefinitionID: 'Responsedef_WebButton_OnClick'
-  QuillAction
-  {
-    Body:
-    [*
-      if( not isnull( DataHolderTable.Data() ) ){ 
-        DataHolderTable.Data().Generate( dhSearch.Data() );
-      }
-    *]
-    GroupServerCalls: false
-  }
-}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormCustomerDemandPPAIDS/Component_PanelOperation.def b/_Main/UI/MacroPlannerWebApp/Component_FormCustomerDemandPPAIDS/Component_PanelOperation.def
index d6e42b3..d9add6f 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormCustomerDemandPPAIDS/Component_PanelOperation.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormCustomerDemandPPAIDS/Component_PanelOperation.def
@@ -18,7 +18,6 @@
   ]
   Properties:
   [
-    FixedSize: true
     Taborder: 6
   ]
 }
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormCustomerDemandPPAIDS/Component_PanelProduct.def b/_Main/UI/MacroPlannerWebApp/Component_FormCustomerDemandPPAIDS/Component_PanelProduct.def
index 0d843ab..dad34b6 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormCustomerDemandPPAIDS/Component_PanelProduct.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormCustomerDemandPPAIDS/Component_PanelProduct.def
@@ -21,5 +21,6 @@
   Properties:
   [
     Taborder: 3
+    Visible: false
   ]
 }
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormCustomerDemandPPAIDS/Response_PanelOperation_ButtonSearch_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormCustomerDemandPPAIDS/Response_PanelOperation_ButtonSearch_OnClick.def
index f33236e..5d7e04a 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormCustomerDemandPPAIDS/Response_PanelOperation_ButtonSearch_OnClick.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormCustomerDemandPPAIDS/Response_PanelOperation_ButtonSearch_OnClick.def
@@ -10,7 +10,8 @@
     Body:
     [*
       if( not isnull( DataHolderTable.Data() ) ){ 
-        DataHolderTable.Data().Generate( dhSearch.Data() );
+        productids      := selectuniquevalues( DataHolderProduct.Data(), Elements, product, product.ID() );
+        DataHolderTable.Data().Generate( dhSearch.Data(), productids );
       }
     *]
     GroupServerCalls: false
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelColumnSearch.def b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelColumnSearch.def
index 5e19d64..fd75797 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelColumnSearch.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelColumnSearch.def
@@ -7,6 +7,7 @@
   [
     #child: PanelPeriod_71
     #child: PanelTimeUnit
+    #child: PanelOperation_603
   ]
   Properties:
   [
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelOperation.def "b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelOperation\043603.def"
similarity index 68%
rename from _Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelOperation.def
rename to "_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelOperation\043603.def"
index fe79643..49efc82 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelOperation.def
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelOperation\043603.def"
@@ -1,13 +1,13 @@
 Quintiq file version 2.0
-Component PanelOperation
+Component PanelOperation id:PanelOperation_603
 {
-  #keys: '[415136.0.1307935388]'
+  #keys: '[415136.0.1323960400]'
   BaseType: 'WebPanel'
   Children:
   [
     Component ButtonSearch
     {
-      #keys: '[415136.0.1307935389]'
+      #keys: '[415136.0.1323960401]'
       BaseType: 'WebButton'
       Properties:
       [
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelProduct.def b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelProduct.def
index c8ea5a5..399eaa6 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelProduct.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelProduct.def
@@ -21,5 +21,6 @@
   Properties:
   [
     Taborder: 1
+    Visible: false
   ]
 }
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelRowSearch.def b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelRowSearch.def
index 5a3d0e5..54de79d 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelRowSearch.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelRowSearch.def
@@ -7,11 +7,11 @@
   [
     #child: PanelUnit_925
     #child: PanelProduct
-    #child: PanelOperation
   ]
   Properties:
   [
     Orientation: 'horizontal'
     Taborder: 0
+    Visible: false
   ]
 }
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelUnit\043925.def" "b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelUnit\043925.def"
index 3282220..18c4eca 100644
--- "a/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelUnit\043925.def"
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelUnit\043925.def"
@@ -19,5 +19,6 @@
   Properties:
   [
     Taborder: 0
+    Visible: false
   ]
 }
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Response_PanelOperation_603_ButtonSearch_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Response_PanelOperation_603_ButtonSearch_OnClick.def
new file mode 100644
index 0000000..a5891a0
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Response_PanelOperation_603_ButtonSearch_OnClick.def
@@ -0,0 +1,20 @@
+Quintiq file version 2.0
+#parent: PanelOperation_603/ButtonSearch
+Response OnClick () id:Response_PanelOperation_603_ButtonSearch_OnClick
+{
+  #keys: '[415136.0.1323960399]'
+  CanBindMultiple: false
+  DefinitionID: 'Responsedef_WebButton_OnClick'
+  QuillAction
+  {
+    Body:
+    [*
+      if( not isnull( DataHolderTable.Data() ) ){ 
+        productids      := selectuniquevalues( DataHolderProduct.Data(), Elements, product, product.ID() );
+        units           := selectuniquevalues( DataHolderUnit.Data(), Elements, unit, unit.ID() );
+        DataHolderTable.Data().Generate( dhSearch.Data(), productids, units );
+      }
+    *]
+    GroupServerCalls: false
+  }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Response_PanelOperation_ButtonSearch_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Response_PanelOperation_ButtonSearch_OnClick.def
deleted file mode 100644
index d613ac6..0000000
--- a/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Response_PanelOperation_ButtonSearch_OnClick.def
+++ /dev/null
@@ -1,18 +0,0 @@
-Quintiq file version 2.0
-#parent: PanelOperation/ButtonSearch
-Response OnClick () id:Response_PanelOperation_ButtonSearch_OnClick
-{
-  #keys: '[415136.0.1307935387]'
-  CanBindMultiple: false
-  DefinitionID: 'Responsedef_WebButton_OnClick'
-  QuillAction
-  {
-    Body:
-    [*
-      if( not isnull( DataHolderTable.Data() ) ){ 
-        DataHolderTable.Data().Generate( dhSearch.Data() );
-      }
-    *]
-    GroupServerCalls: false
-  }
-}

--
Gitblit v1.9.3