From 7e32f3de7e82bb64f1d47f888a90b12193eefb5b Mon Sep 17 00:00:00 2001
From: lihongji <3117313295@qq.com>
Date: 星期二, 03 九月 2024 17:11:54 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev' into dev

---
 _Main/BL/Type_CustomerDemandPPAIDS/StaticMethod_GenerateData.qbl |   23 ++++++++++++++++++++++-
 1 files changed, 22 insertions(+), 1 deletions(-)

diff --git a/_Main/BL/Type_CustomerDemandPPAIDS/StaticMethod_GenerateData.qbl b/_Main/BL/Type_CustomerDemandPPAIDS/StaticMethod_GenerateData.qbl
index c09496a..2139612 100644
--- a/_Main/BL/Type_CustomerDemandPPAIDS/StaticMethod_GenerateData.qbl
+++ b/_Main/BL/Type_CustomerDemandPPAIDS/StaticMethod_GenerateData.qbl
@@ -2,6 +2,7 @@
 #parent: #root
 StaticMethod GenerateData (
   const MacroPlan macroplan,
+  const Archive archive,
   InterfaceDataset interfaceDataset,
   String executor,
   Boolean versionflag
@@ -31,7 +32,7 @@
                                                                  , ReturnMsg                 := 'Success'
                                                                  , Success                   := true
                                                                   );
-    traverse( macroplan, SalesDemand.astype( Forecast ), forecast ){
+    traverse( macroplan, SalesDemand.astype( Forecast ), forecast, forecast.Origin() = 'PPA' ){
       cd                  :=interfaceDataset.CustomerDemandPPAIDS( relnew, Product           := forecast.ProductID()
                                                                    , DemandDate              := forecast.StartDate()
                                                                    , DemandQty               := [Number]forecast.Quantity()
@@ -41,6 +42,26 @@
                                                                    );
       loginfo.CustomerDemandPPAIDS( relinsert, cd );
     }
+    binaryValue           := TemplateManager::GetIDSFullTable( archive, Date::ActualDate().Year() );
+    CustomerDemandIDS::ReadStructure( binaryValue, interfaceDataset );
+    productcolumn         := select( interfaceDataset, CustomerDemandIDS.Column, column, column.Index() = 1 );
+    cnv2 := StringToDate::StandardConverter();
+    cnv2.SetCustomConversion();
+    cnv2.CustomFormatString( "dd/MM/yyyy" );
+    traverse( interfaceDataset, CustomerDemandIDS.Row, row ){
+      product             := selectobject( row, Cell, cell, cell.Column() = productcolumn );
+      traverse( row, Cell, cell, cell.Column().Index() > 3 ){
+        period := cnv2.Convert( cell.Column().Name() );
+        cd                  :=interfaceDataset.CustomerDemandPPAIDS( relnew, Product           := product.Value()
+                                                                     , DemandDate              := period
+                                                                     , DemandQty               := [Number]cell.Value()
+                                                                     , VersionName             := macroplan.ScenarioName()
+                                                                     , InterfaceTime           := nowdate
+                                                                     , VersionFlag             := versionflag
+                                                                     );
+        loginfo.CustomerDemandPPAIDS( relinsert, cd );
+      }
+    }
     loginfo.TotalRow( loginfo.CustomerDemandPPAIDS( relsize ) );
   *]
 }

--
Gitblit v1.9.3