From 051e4ab1ef82c58dc9563281ec14c02fc250e20f Mon Sep 17 00:00:00 2001 From: Daraul Harris Date: Sat, 5 Dec 2020 14:43:21 +0800 Subject: Do not treat balance assignments with 0 diff as a null posting Ledger is treating balance assignments that have a 0 diff as having a null posting, leading to the posting being auto-balanced and therefore causing incorrect values to be returned for the transaction. I fixed this by just making the posting equal to amt - amt (0 in the right commodity). Fixes #1942 --- test/regress/1942_c.test | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 test/regress/1942_c.test (limited to 'test/regress/1942_c.test') diff --git a/test/regress/1942_c.test b/test/regress/1942_c.test new file mode 100644 index 00000000..a36099bd --- /dev/null +++ b/test/regress/1942_c.test @@ -0,0 +1,28 @@ +2018/01/01 * Opening Balance + Assets:Checking $1000.00 + Equity:Opening Balances -$1000.00 + +2018/01/01 * Budget + Assets:Budget:Rent $100.00 + Assets:Budget:Emergency $200.00 + Assets:Checking -$300.00 + +2018/01/01 * Budget + Assets:Budget:Rent = $100.00 + Assets:Budget:Emergency = $400.00 + Assets:Bank -$500.00 + +test bal Assets -> 1 +__ERROR__ +While parsing file "$FILE", line 13: +While balancing transaction from "$FILE", lines 10-13: +> 2018/01/01 * Budget +> Assets:Budget:Rent = $100.00 +> Assets:Budget:Emergency = $400.00 +> Assets:Bank -$500.00 +Unbalanced remainder is: + $-300.00 +Amount to balance against: + $200.00 +Error: Transaction does not balance +end test -- cgit v1.2.3