|
@@ -392,14 +392,16 @@ begin
|
|
|
begin
|
|
|
if FindChild(stnCurNode, stnStdNode) <> nil then
|
|
|
stnCurNode := FindChild(stnCurNode, stnStdNode)
|
|
|
- else
|
|
|
+ else if Assigned(stnCurNode) then
|
|
|
begin
|
|
|
if TBillsIDTreeNode(stnCurNode).HasLedger or
|
|
|
(not stnCurNode.HasChildren and TBillsIDTreeNode(stnCurNode).HasMeasure) then
|
|
|
raise Exception.Create('不可添加该项目节数据!')
|
|
|
else
|
|
|
stnCurNode := InsertChild(stnCurNode, stnStdNode);
|
|
|
- end;
|
|
|
+ end
|
|
|
+ else
|
|
|
+ Break;
|
|
|
stnStdNode := GetTopParentNode(AStdBillsNode, AStdBillsNode.Level - iLevel);
|
|
|
end;
|
|
|
end;
|
|
@@ -495,7 +497,7 @@ function TBillsCompileData.IsSameNode(ANode,
|
|
|
ACompareNode: TsdIDTreeNode): Boolean;
|
|
|
begin
|
|
|
if ANode.Rec.ValueByName('StaticID').AsInteger > 0 then
|
|
|
- Result := (ANode.Rec.ValueByName('ID').AsInteger = ACompareNode.Rec.ValueByName('ID').AsInteger)
|
|
|
+ Result := (ANode.Rec.ValueByName('StaticID').AsInteger = ACompareNode.Rec.ValueByName('ID').AsInteger)
|
|
|
else
|
|
|
Result := (ANode.Rec.ValueByName('Code').AsString = ACompareNode.Rec.ValueByName('Code').AsString)
|
|
|
and (ANode.Rec.ValueByName('B_Code').AsString = ACompareNode.Rec.ValueByName('B_Code').AsString)
|