瀏覽代碼

WeiWu ZJJL Gather: order by B_Code(2 IndexCode) & BillsNode.MajorIndex

MaiXinRong 8 年之前
父節點
當前提交
9813c8c7ee
共有 1 個文件被更改,包括 7 次插入0 次删除
  1. 7 0
      DataModules/ReportMemoryDm/rmWeiWuZjjlGatherDm.pas

+ 7 - 0
DataModules/ReportMemoryDm/rmWeiWuZjjlGatherDm.pas

@@ -52,6 +52,7 @@ type
     FDanWeiName: string;
 
     FIndexCode: string;
+    FSerialNo: Integer;
 
     function MergeStr(AStr1, AStr2: string): string;
   public
@@ -256,6 +257,7 @@ begin
   FDanWeiName := GetNameDanWei(vLeafXmj);
 
   FIndexCode := B_CodeToIndexCode(FBillsCode);
+  FSerialNo := ANode.MajorIndex;
 end;
 
 procedure TZjjl.Merge(ARec, AStageRec: TsdDataRecord; ANode: TBillsIDTreeNode);
@@ -291,6 +293,9 @@ begin
   FBillsOthTotalPrice := FBillsOthTotalPrice + ANode.Rec.OthTotalPrice.AsFloat;
   FBillsQuantity := FBillsQuantity + ANode.Rec.Quantity.AsFloat;
   FBillsTotalPrice := FBillsTotalPrice + ANode.Rec.TotalPrice.AsFloat;
+
+  if ANode.MajorIndex < FSerialNo then
+    FSerialNo := ANode.MajorIndex;
 end;
 
 function TZjjl.MergeStr(AStr1, AStr2: string): string;
@@ -323,6 +328,8 @@ function TrmWeiWuZjjlGatherData.AssignData(
     vZjjl1 := TZjjl(Item1);
     vZjjl2 := TZjjl(Item2);
     Result := CompareStr(vZjjl1.FIndexCode, vZjjl2.FIndexCode);
+    if Result = 0 then
+      Result := vZjjl1.FSerialNo - vZjjl2.FSerialNo;
   end;
 
 begin