Hi

Unfortunately not. I am just manually adding the transactions at the moment 
from the statements.

It appears to be a bug because even attempting to access an account balance 
for assertions which is documented 
at https://github.com/ledger/ledger/wiki/Notes-from-the-Group has the same 
issue. For example this file fails for me even though the assertion should 
always pass:

= /Food/
  assert account("Expenses:Food").total <= $500

2010-06-12 Sample
  Expenses:Food                $100
  Assets:Checking

2010-06-12 Sample
  Expenses:Food                $100
  Assets:Checking

2010-08-12 Sample
  Expenses:Food                $100
  Assets:Checking


#ledger -f demo2.dat bal
While parsing file "/Users/mf/Documents/ledger/demo2.dat", line 14: 
While applying automated transaction from 
"/Users/mf/Documents/ledger/demo2.dat", lines 1-2:
> = /Food/
>   assert account("Expenses:Food").total <= $500
While extending transaction from "/Users/mf/Documents/ledger/demo2.dat", 
lines 12-14:
> 2010-08-12 Sample
>   Expenses:Food                $100
>   Assets:Checking
Error: Transaction assertion failed: ((account("Expenses:Food").total) <= 
{$500})


On Monday, February 25, 2013 3:44:47 PM UTC, bh wrote:
>
> @MF
>
> Did you get this working? I'd like to accomplish something similar but am 
> new to ledger. Thanks
>
> On Wednesday, January 2, 2013 3:35:47 PM UTC, MF wrote:
>>
>> Hi
>>
>> I am trying to setup an automated transaction that will allow me to 
>> manually add a simple transaction for a mortgage payment and the automated 
>> transaction will split it out to add an expense for the interest and reduce 
>> the liability with the remainder. Everything works for the first month, but 
>> after than, accessing account("Liabilities:Home Mortgage").total in the 
>> automated transaction seems to be giving an incorrect value.
>>
>> Here is a demo file:
>>
>> define mortgage_interest_rate = 4.0 / 100 / 12
>> define mortgage_interest() = (-account("Liabilities:Home 
>> Mortgage").total)*mortgage_interest_rate)
>> define mortgage_principal_addition(payment_amount) = payment_amount - 
>> mortgage_interest()
>>
>> = Expenses:Mortgage
>>   Expenses:Interest:Mortgage Interest   (mortgage_interest())
>>   Liabilities:Home Mortgage             
>> (mortgage_principal_addition(amount))
>>   Expenses:Mortgage                     (-amount)
>>
>>
>> # Opening balances
>> 2012/08/01 Initial mortgage liability
>>   Equity:Opening Balances  £100000.00
>>   Liabilities:Home Mortgage
>>
>>
>> # Mortgage payments
>> 2012/09/01 Mortgage payment
>>   Expenses:Mortgage        £1000
>>   Assets:Checking
>>
>> 2012/10/01 mortgage payment
>>   Expenses:mortgage        £1000
>>   Assets:checking
>>
>> 2012/11/01 mortgage payment
>>   Expenses:mortgage        £1000
>>   Assets:checking
>>
>> 2012/12/01 mortgage payment
>>   Expenses:mortgage        £1000
>>   Assets:checking
>>
>> 2013/01/01 mortgage payment
>>   Expenses:mortgage        £1000
>>   Assets:checking
>>
>> Then running the command 'ledger reg interest' gives the output:
>>
>> 12-Sep-01 Mortgage payment      ..In:Mortgage Interest      £333.33     
>>  £333.33
>> 12-Oct-01 mortgage payment      ..In:Mortgage Interest      £666.67     
>> £1000.00
>> 12-Nov-01 mortgage payment      ..In:Mortgage Interest     £1000.00     
>> £2000.00
>> 12-Dec-01 mortgage payment      ..In:Mortgage Interest     £1333.33     
>> £3333.33
>> 13-Jan-01 mortgage payment      ..In:Mortgage Interest     £1666.67     
>> £5000.00
>>
>>
>> As you can see, the first month appears correct but the values should go 
>> down slowly over time because the liability is going down. Calling 
>> 'account("Liabilities:Home Mortgage").total' in the automated transaction 
>> seems to be returning £100000 in the first transaction (correctly) but in 
>> the second and third transactions returns £200000 then £300000 etc.
>>
>> Is what I am trying to do possible?
>>
>> Thanks in advance.
>> MF
>>
>

-- 

--- 
You received this message because you are subscribed to the Google Groups 
"Ledger" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to