From d65ca044060c02ed74022a273429ee741f61e1f0 Mon Sep 17 00:00:00 2001
From: lazhen <17772815105@139.com>
Date: 星期五, 27 九月 2024 18:04:06 +0800
Subject: [PATCH] 长春周报报表数据bug

---
 _Main/BL/Type_FinancialWeeklyReport/StaticMethod_GetDefaultCCUnit.qbl |    3 ++-
 _Main/BL/Type_FinancialWeeklyReport/StaticMethod_GetDefaultDLUnit.qbl |    3 ++-
 _Main/BL/Type_FinancialWeeklyReport/StaticMethod_Initialize.qbl       |   18 +++++++++---------
 _Main/BL/Type_FinancialSalesSource/StaticMethod_Download.qbl          |    2 +-
 _Main/BL/Type_InventorySummarySource/StaticMethod_Initialize.qbl      |    1 +
 _Main/BL/Type_MachiningPipelineSource0/StaticMethod_Initialize.qbl    |   20 ++++++++++----------
 _Main/BL/Type_FinancialProductionReport/Method_Generate.qbl           |    4 ++--
 7 files changed, 27 insertions(+), 24 deletions(-)

diff --git a/_Main/BL/Type_FinancialProductionReport/Method_Generate.qbl b/_Main/BL/Type_FinancialProductionReport/Method_Generate.qbl
index 2812b85..45e40f0 100644
--- a/_Main/BL/Type_FinancialProductionReport/Method_Generate.qbl
+++ b/_Main/BL/Type_FinancialProductionReport/Method_Generate.qbl
@@ -35,8 +35,8 @@
           
           showcell := column.FinancialProductionCell( relnew, Quantity := cell.Quantity() );
           showrow.FinancialProductionCell( relinsert, showcell );
-          value := [Real]cell.Value() + [Real]sumcell.Value();
-          sumcell.Value( [String]value );
+    //      value := [Real]cell.Value() + [Real]sumcell.Value();
+          sumcell.Quantity( sumcell.Quantity() + cell.Quantity() );
         }
       }
     }
diff --git a/_Main/BL/Type_FinancialSalesSource/StaticMethod_Download.qbl b/_Main/BL/Type_FinancialSalesSource/StaticMethod_Download.qbl
index 7b39260..fcbd81e 100644
--- a/_Main/BL/Type_FinancialSalesSource/StaticMethod_Download.qbl
+++ b/_Main/BL/Type_FinancialSalesSource/StaticMethod_Download.qbl
@@ -34,7 +34,7 @@
     tableElement.AppendChild( productcolumnelement ); 
     tableElement.AppendChild( unitcolumnelement ); 
     minindex        := min( table, FinancialSalesColumn, column, not column.IsDay(), column.Index() );
-    traverse ( table, FinancialSalesColumn, column ) {
+    traverse ( table, FinancialSalesColumn, column, not column.IsDay() ) {
       columnelement := xmlDOM.CreateElement( "column" );
       nameelement   := xmlDOM.CreateElement( "name" );
       typeelement   := xmlDOM.CreateElement( "type" );
diff --git a/_Main/BL/Type_FinancialWeeklyReport/StaticMethod_GetDefaultCCUnit.qbl b/_Main/BL/Type_FinancialWeeklyReport/StaticMethod_GetDefaultCCUnit.qbl
index 7bf8369..eda6e70 100644
--- a/_Main/BL/Type_FinancialWeeklyReport/StaticMethod_GetDefaultCCUnit.qbl
+++ b/_Main/BL/Type_FinancialWeeklyReport/StaticMethod_GetDefaultCCUnit.qbl
@@ -5,7 +5,8 @@
   TextBody:
   [*
     // 鐢勫叞楦� Jun-28-2024 (created)
-    return '闀挎槬宸ュ巶';
+    //return '闀挎槬宸ュ巶';
+    return 'VWED CC';
     //return 'Assembly Plant (France)';
   *]
 }
diff --git a/_Main/BL/Type_FinancialWeeklyReport/StaticMethod_GetDefaultDLUnit.qbl b/_Main/BL/Type_FinancialWeeklyReport/StaticMethod_GetDefaultDLUnit.qbl
index 781dc80..bdc2b39 100644
--- a/_Main/BL/Type_FinancialWeeklyReport/StaticMethod_GetDefaultDLUnit.qbl
+++ b/_Main/BL/Type_FinancialWeeklyReport/StaticMethod_GetDefaultDLUnit.qbl
@@ -5,7 +5,8 @@
   TextBody:
   [*
     // 鐢勫叞楦� Jun-28-2024 (created)
-    return '澶ц繛宸ュ巶';
+    //return '澶ц繛宸ュ巶';
+    return 'VWED DL';
     //return 'Assembly Plant (Spain)';
   *]
 }
diff --git a/_Main/BL/Type_FinancialWeeklyReport/StaticMethod_Initialize.qbl b/_Main/BL/Type_FinancialWeeklyReport/StaticMethod_Initialize.qbl
index dcd3b98..ba8dd8d 100644
--- a/_Main/BL/Type_FinancialWeeklyReport/StaticMethod_Initialize.qbl
+++ b/_Main/BL/Type_FinancialWeeklyReport/StaticMethod_Initialize.qbl
@@ -44,38 +44,38 @@
     ccsvaluecumulant          := [Real]0;
     
     traverse( table, FinancialWeeklyColumn, column ){
-      productioncolumn      := selectobject( productiontable, FinancialProductionColumn, pcolumn, pcolumn.Name() = column.Name() and pcolumn.Period() = column.Period() );
-      salescolumn           := selectobject( salestable, FinancialSalesColumn, scolumn, scolumn.Name() = column.Name() and scolumn.Period() = column.Period() );
+      productioncolumn      := selectobject( productiontable, FinancialProductionColumn, pcolumn, pcolumn.Name() = column.Name() and pcolumn.Period() = column.Period() and not pcolumn.IsDay() );
+      salescolumn           := selectobject( salestable, FinancialSalesColumn, scolumn, scolumn.Name() = column.Name() and scolumn.Period() = column.Period() and not scolumn.IsDay() );
       
       //浜ч噺姹囨��
       totalpvalue           := [Real]0;
       dlpvalue              := [Real]0;
       ccpvalue              := [Real]0;
-      traverse( productioncolumn, FinancialProductionCell, cell, [Real]cell.Value() > 0 ){
+      traverse( productioncolumn, FinancialProductionCell, cell, cell.Quantity() > 0 ){
         unit                := cell.FinancialProductionRow().Unit();
         
         if( unit = allunit ){
-          totalpvalue       := totalpvalue + [Real]cell.Value();
+          totalpvalue       := totalpvalue + cell.Quantity();
           if( column.Period() = startofplanning.StartOfMonth().Date() ){
             totalpvaluecumulant := totalpvaluecumulant - cell.PlanValue();
           }
         }else if( unit = dlunit ){
-          dlpvalue          := dlpvalue + [Real]cell.Value();
+          dlpvalue          := dlpvalue + cell.Quantity();
           if( column.Period() = startofplanning.StartOfMonth().Date() ){
             dlpvaluecumulant := dlpvaluecumulant - cell.PlanValue();
           }
         }else if( unit = ccunit ){
-          ccpvalue          := ccpvalue + [Real]cell.Value();
+          ccpvalue          := ccpvalue + cell.Quantity();
           if( column.Period() = startofplanning.StartOfMonth().Date() ){
             ccpvaluecumulant := ccpvaluecumulant - cell.PlanValue();
           }
         }
       }
-      totalpcell            := column.FinancialWeeklyCell( relnew, Value := [String]totalpvalue );
+      totalpcell            := column.FinancialWeeklyCell( relnew, Value := [String]( [Number]totalpvalue ) );
       totalproduction.FinancialWeeklyCell( relinsert, totalpcell );
-      dlpcell               := column.FinancialWeeklyCell( relnew, Value := [String]dlpvalue );
+      dlpcell               := column.FinancialWeeklyCell( relnew, Value := [String]( [Number]dlpvalue ) );
       dlproduction.FinancialWeeklyCell( relinsert, dlpcell );
-      ccpcell               := column.FinancialWeeklyCell( relnew, Value := [String]ccpvalue );
+      ccpcell               := column.FinancialWeeklyCell( relnew, Value := [String]( [Number]ccpvalue ) );
       ccproduction.FinancialWeeklyCell( relinsert, ccpcell );
       
       //閿�閲忔眹鎬�
diff --git a/_Main/BL/Type_InventorySummarySource/StaticMethod_Initialize.qbl b/_Main/BL/Type_InventorySummarySource/StaticMethod_Initialize.qbl
index d8f2435..ec32de3 100644
--- a/_Main/BL/Type_InventorySummarySource/StaticMethod_Initialize.qbl
+++ b/_Main/BL/Type_InventorySummarySource/StaticMethod_Initialize.qbl
@@ -59,6 +59,7 @@
                                                   and pispip.Period_MP().TimeUnit() = Translations::MP_GlobalParameters_Day(), pispip.Start() );
     
           traverse( pispips, Elements, pispip ){
+            products.Add( pisp.Product_MP() );
             period            := pispip.Period_MP();
             periodtime        := period.Start().Date();
             periodname        := periodtime.Format( "M2/D2/Y" );
diff --git a/_Main/BL/Type_MachiningPipelineSource0/StaticMethod_Initialize.qbl b/_Main/BL/Type_MachiningPipelineSource0/StaticMethod_Initialize.qbl
index de5f0d3..8d933a7 100644
--- a/_Main/BL/Type_MachiningPipelineSource0/StaticMethod_Initialize.qbl
+++ b/_Main/BL/Type_MachiningPipelineSource0/StaticMethod_Initialize.qbl
@@ -95,17 +95,17 @@
       productparents        := product.GetAllParent();
       if( exists( productparents, Elements, e, e.ID() = productparent ) ){//鏌ヨ浜у搧绫诲瀷鏄彂鍔ㄦ満
         //璧峰搴撳瓨鐐规槸鍚︽槸澶ц繛or闀挎槬
-        originsp              := selectobject( owner, StockingPoint_MP, sp, sp.ID() = tprow.SourceStockpoingPointID() );
-        originunit            := originsp.Unit();
-        originparentunits     := originunit.GetAllParent();
-        originiscc            := originsp.ID() = ccunit or originunit.ID() = ccunit or exists( originparentunits, Elements, punit, punit.ID() = ccunit );
-        originisdl            := originsp.ID() = dlunit or originunit.ID() = dlunit or exists( originparentunits, Elements, punit, punit.ID() = dlunit );
+    //    originsp              := selectobject( owner, StockingPoint_MP, sp, sp.ID() = tprow.SourceStockpoingPointID() );
+    //    originunit            := originsp.Unit();
+    //    originparentunits     := originunit.GetAllParent();
+        originiscc            := tprow.SourceStockpoingPointID() = 'CC';//originsp.ID() = ccunit or originunit.ID() = ccunit or exists( originparentunits, Elements, punit, punit.ID() = ccunit );
+        originisdl            := tprow.SourceStockpoingPointID() = 'DL';//originsp.ID() = dlunit or originunit.ID() = dlunit or exists( originparentunits, Elements, punit, punit.ID() = dlunit );
         //鐩殑鍦版槸鍚︽槸闀挎槬澶栫搴�
-        destisp               := selectobject( owner, StockingPoint_MP, sp, sp.ID() = tprow.TargetStockpoingPointID() );
-        destiunit             := destisp.Unit();
-        destiparentunits      := destiunit.GetAllParent();
-        destiiscc             := destisp.ID() = ccunit or destiunit.ID() = ccunit or exists( destiparentunits, Elements, punit, punit.ID() = ccunit );
-        destiisdl             := destisp.ID() = dlunit or destiunit.ID() = dlunit or exists( destiparentunits, Elements, punit, punit.ID() = dlunit );
+    //    destisp               := selectobject( owner, StockingPoint_MP, sp, sp.ID() = tprow.TargetStockpoingPointID() );
+    //    destiunit             := destisp.Unit();
+    //    destiparentunits      := destiunit.GetAllParent();
+        destiiscc             := tprow.TargetStockpoingPointID() = 'CC';//destisp.ID() = ccunit or destiunit.ID() = ccunit or exists( destiparentunits, Elements, punit, punit.ID() = ccunit );
+        destiisdl             := tprow.TargetStockpoingPointID() = 'DL';//destisp.ID() = dlunit or destiunit.ID() = dlunit or exists( destiparentunits, Elements, punit, punit.ID() = dlunit );
         if( ( originiscc and destiisdl ) or ( originisdl and destiiscc ) ){
           row := table.GetRow( tprow.ProductID() );
           traverse( tprow, TransferPlanCell, tpcell, tpcell.TransferPlanColumn().ColumnDate() <> Date::MinDate() ){

--
Gitblit v1.9.3