I have a question regarding the use of { } vs @ to specify
commodities. Let's take two examples:
---
; Example A
D 100.00 GBP
2012-01-01 * Opening balance
Assets:A 100 AAA @ 5.00 GBP
Equity:Opening balance
2012-01-20 * Transfer
Assets:A -100 AAA @ 5.00 GBP
Assets:B 100 AAA @ 5.00 GBP
--
; Example B
D 100.00 GBP
2012-01-01 * Opening balance
Assets:A 100 AAA @ 5.00 GBP
Equity:Opening balance
2012-01-20 * Transfer
Assets:A -100 AAA {5.00 GBP}
Assets:B 100 AAA {5.00 GBP}
--
When you run --lot-prices on both examples, the output is identical.
However, when I use -B, the first example gives me the output I was
expecting:
500.00 GBP Assets:B
-500.00 GBP Equity:Opening balance
whereas the second example gives me:
500.00 GBP Assets
-100 AAA
500.00 GBP A
100 AAA B
-500.00 GBP Equity:Opening balance
Is this behaviour normal or a bug?
To me, using { } makes more sense because I just want to transfer
existing commodities and { } allows me to specify which lot I'm
talking about. @ doesn't make sense to me in this example because
I'm not selling anything.
Obviously, it seems I have to use @ to get the output I expect but I'd
like to better understand the differences between { } and @ in this
example and why { } doesn't do what I was expecting. John, can you
clarify?
--
Martin Michlmayr
http://www.cyrius.com/