From f259326e9055b18b369a14d4b49e6e9af37ae749 Mon Sep 17 00:00:00 2001
From: lazhen <17772815105@139.com>
Date: 星期三, 11 十二月 2024 10:48:13 +0800
Subject: [PATCH] 实际发运数据报表调整

---
 _Main/BL/Type_ShippingActualData/StaticMethod_Synchronize.qbl |   12 ++++++++++--
 1 files changed, 10 insertions(+), 2 deletions(-)

diff --git a/_Main/BL/Type_ShippingActualData/StaticMethod_Synchronize.qbl b/_Main/BL/Type_ShippingActualData/StaticMethod_Synchronize.qbl
index d6be535..c1b8ee6 100644
--- a/_Main/BL/Type_ShippingActualData/StaticMethod_Synchronize.qbl
+++ b/_Main/BL/Type_ShippingActualData/StaticMethod_Synchronize.qbl
@@ -53,15 +53,23 @@
       }
       beforerowsize := owner.ShippingActualRow( relsize );
       traverse( sadatalist, Elements, e ){
-        row := selectobject( owner, ShippingActualRow, row, row.Name() = e.FourCode() );
+        row := selectobject( owner, ShippingActualRow, row, row.Name() = e.FourCode() and row.Fac() = e.Fac() );
         if( isnull( row ) ){
-          row := owner.ShippingActualRow( relnew, Name := e.FourCode() );
+          row := owner.ShippingActualRow( relnew, Name := e.FourCode(), Fac := e.Fac() );
         }
         
         cell := row.ShippingActualCell( relnew, Quantity := e.Quantity() );
         column.ShippingActualCell( relinsert, cell );
       }
       if( beforerowsize <> owner.ShippingActualRow( relsize ) ){
+        traverse( owner, ShippingActualColumn, sacolumn ){
+          traverse( owner, ShippingActualRow, row ) {
+            if( not exists( row, ShippingActualCell, cell, cell.ShippingActualColumn() = sacolumn ) ){
+              cell := row.ShippingActualCell( relnew, Quantity := 0 );
+              sacolumn.ShippingActualCell( relinsert, cell );
+            }
+          }
+        }
         rows := selectsortedset( owner, ShippingActualRow, row, row.Name() );
         nr    := 0;
         traverse( rows, Elements, e ){

--
Gitblit v1.9.3