From ea578007e86bdc01430bc8b9683d8e69eb2438e5 Mon Sep 17 00:00:00 2001
From: hongji.li <hongji.a.li@capgemini.com>
Date: 星期一, 06 十一月 2023 17:40:26 +0800
Subject: [PATCH] 优化交易汇总报表

---
 _Main/BL/Type_SummaryOfInboundTransaction/StaticMethod_FlushData.qbl |   50 +++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 49 insertions(+), 1 deletions(-)

diff --git a/_Main/BL/Type_SummaryOfInboundTransaction/StaticMethod_FlushData.qbl b/_Main/BL/Type_SummaryOfInboundTransaction/StaticMethod_FlushData.qbl
index e941bd0..b7bf786 100644
--- a/_Main/BL/Type_SummaryOfInboundTransaction/StaticMethod_FlushData.qbl
+++ b/_Main/BL/Type_SummaryOfInboundTransaction/StaticMethod_FlushData.qbl
@@ -1,7 +1,55 @@
 Quintiq file version 2.0
 #parent: #root
 StaticMethod FlushData (
-  GlobalOTDSOP globalOTDSOP
+  GlobalOTDSOP globalOTDSOP,
+  const GlobalOTDTable globalOTDTable
 )
 {
+  TextBody:
+  [*
+    globalOTDSOP.SummaryOfInboundTransaction( relflush );
+    
+    traverse ( globalOTDTable, Global_MappingSummaryOfInboundTransaction, gmsoit ) {
+      targetSummaryOfInboundTransaction := select( globalOTDSOP, SummaryOfInboundTransaction, tempSOIBT, 
+                                                   tempSOIBT.Item()      =  gmsoit.Item()     and
+                                                   tempSOIBT.OrganCode() = gmsoit.OrganCode() and
+                                                   tempSOIBT.OrganName() = gmsoit.OrganName() and
+                                                   tempSOIBT.PlantName() = gmsoit.PlantName() );
+      
+      if ( isnull( targetSummaryOfInboundTransaction ) ) {
+        targetSummaryOfInboundTransaction := globalOTDSOP.SummaryOfInboundTransaction( relnew, Item      := gmsoit.Item(),
+                                                                                               OrganCode := gmsoit.OrganCode(),
+                                                                                               OrganName := gmsoit.OrganName(),
+                                                                                               PlantName := gmsoit.PlantName()
+                                                                                      );
+      }
+      
+      if ( gmsoit.TransactionDate().Month() = 1 ) {
+        targetSummaryOfInboundTransaction.Total1( targetSummaryOfInboundTransaction.Total1() + gmsoit.TransactionQTY() );
+      } else if ( gmsoit.TransactionDate().Month() = 2 ) {
+        targetSummaryOfInboundTransaction.Total2( targetSummaryOfInboundTransaction.Total2() + gmsoit.TransactionQTY() );
+      } else if ( gmsoit.TransactionDate().Month() = 3 ) {
+        targetSummaryOfInboundTransaction.Total3( targetSummaryOfInboundTransaction.Total3() + gmsoit.TransactionQTY() );
+      } else if ( gmsoit.TransactionDate().Month() = 4 ) {
+        targetSummaryOfInboundTransaction.Total4( targetSummaryOfInboundTransaction.Total4() + gmsoit.TransactionQTY() );
+      } else if ( gmsoit.TransactionDate().Month() = 5 ) {
+        targetSummaryOfInboundTransaction.Total5( targetSummaryOfInboundTransaction.Total5() + gmsoit.TransactionQTY() );
+      } else if ( gmsoit.TransactionDate().Month() = 6 ) {
+        targetSummaryOfInboundTransaction.Total6( targetSummaryOfInboundTransaction.Total6() + gmsoit.TransactionQTY() );
+      } else if ( gmsoit.TransactionDate().Month() = 7 ) {
+        targetSummaryOfInboundTransaction.Total7( targetSummaryOfInboundTransaction.Total7() + gmsoit.TransactionQTY() );
+      } else if ( gmsoit.TransactionDate().Month() = 8 ) {
+        targetSummaryOfInboundTransaction.Total8( targetSummaryOfInboundTransaction.Total8() + gmsoit.TransactionQTY() );
+      } else if ( gmsoit.TransactionDate().Month() = 9 ) {
+        targetSummaryOfInboundTransaction.Total9( targetSummaryOfInboundTransaction.Total9() + gmsoit.TransactionQTY() );
+      } else if ( gmsoit.TransactionDate().Month() = 10 ) {
+        targetSummaryOfInboundTransaction.Total10( targetSummaryOfInboundTransaction.Total10() + gmsoit.TransactionQTY() );
+      } else if ( gmsoit.TransactionDate().Month() = 11 ) {
+        targetSummaryOfInboundTransaction.Total11( targetSummaryOfInboundTransaction.Total11() + gmsoit.TransactionQTY() );
+      } else if ( gmsoit.TransactionDate().Month() = 12 ) {
+        targetSummaryOfInboundTransaction.Total12( targetSummaryOfInboundTransaction.Total2() + gmsoit.TransactionQTY() );
+      }
+      
+    }
+  *]
 }

--
Gitblit v1.9.3