🙇‍♂️

On Sun, Jan 17, 2021 at 11:25 AM Martin Blais <[email protected]> wrote:

> Use run_query() instead:
>
> https://github.com/beancount/beancount/blob/master/beancount/query/query.py#L13
>
>
>
> On Sun, Jan 17, 2021 at 12:18 PM Aaron Stacy <[email protected]>
> wrote:
>
>> Thanks Martin and Ben!
>>
>> The following gives me precisely what I need:
>>
>>     select number(only("USD", sum(position)))
>>     from open on 2020-10-01 close on 2020-11-01
>>     where
>>         account ~ "My:Checking" and
>>         number(units(position)) > 0 and
>>         findfirst("Income:Hooli", other_accounts) != NULL
>>
>> EXCEPT I'd like a number in Python instead of text output in the
>> terminal. Cribbing from Ben's examples, I came up with the following to run
>> it from Python:
>>
>>     from beancount.query.query_compile import compile
>>     from beancount.query.query_env import FilterPostingsEnvironment,
>> FilterEntriesEnvironment, TargetsEnvironment
>>     from beancount.query.query_execute import execute_query
>>     from beancount.query.query_parser import Parser
>>     from beancount.loader import load_file
>>
>>     entries, errors, options = load_file('my.beancount')
>>     text = '... the query from above ...'
>>     ast = Parser().parse(text)
>>     compiled = compile(ast, TargetsEnvironment(),
>> FilterPostingsEnvironment(), FilterEntriesEnvironment())
>>     columns, results = execute_query(compiled, entries, options)
>>
>> Thanks again for taking the time to help!
>>
>> On Sat, Jan 16, 2021 at 11:49 PM Martin Blais <[email protected]> wrote:
>>
>>> If you're only interested in income just filter the date interval you
>>> need.
>>>
>>> The "close" operation is essentially there to ensure that the balances
>>> of the assets/liabilities accounts are correct when you filter out
>>> transactions from the past, i.e., it just inserts a transfer from all of
>>> the past's net income to the balance sheet accounts at the head of the
>>> filtered transactions.
>>>
>>>
>>> On Sat, Jan 16, 2021 at 4:24 PM Aaron Stacy <[email protected]>
>>> wrote:
>>>
>>>> HI all! I'd like to make a customized income statement where some
>>>> accounts are added together. For example, I'd like to know all income for
>>>> the past month, whether it was Income:Hooli:Salary or Income:Hooli:RSU's. I
>>>> can get pretty close with the query:
>>>>
>>>>     select account, sum(position) from open on 2020-12-01 close on
>>>> 2020-12-31 where account ~ "Income" group by account order by account;
>>>>
>>>> But then I need to go through and sum the specific accounts I happen to
>>>> care about. I'm comfortable importing beancount, using it to parse my
>>>> ledger, and iterating through expenses, but can someone point me to what
>>>> I'd do to get the open on/close on part?
>>>>
>>>> Thanks!
>>>>
>>>> --
>>>> You received this message because you are subscribed to the Google
>>>> Groups "Beancount" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send
>>>> an email to [email protected].
>>>> To view this discussion on the web visit
>>>> https://groups.google.com/d/msgid/beancount/26067fa0-0a9a-41ec-9b5d-2f62c9714ff0n%40googlegroups.com
>>>> <https://groups.google.com/d/msgid/beancount/26067fa0-0a9a-41ec-9b5d-2f62c9714ff0n%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>> .
>>>>
>>> --
>>> You received this message because you are subscribed to a topic in the
>>> Google Groups "Beancount" group.
>>> To unsubscribe from this topic, visit
>>> https://groups.google.com/d/topic/beancount/_XEernfER5w/unsubscribe.
>>> To unsubscribe from this group and all its topics, send an email to
>>> [email protected].
>>> To view this discussion on the web visit
>>> https://groups.google.com/d/msgid/beancount/CAK21%2BhNCseoKOVRPFUgpmKg3UM1VmcKonEDZA_Ck%2BCTrc%2BbhRA%40mail.gmail.com
>>> <https://groups.google.com/d/msgid/beancount/CAK21%2BhNCseoKOVRPFUgpmKg3UM1VmcKonEDZA_Ck%2BCTrc%2BbhRA%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>> .
>>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "Beancount" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to [email protected].
>> To view this discussion on the web visit
>> https://groups.google.com/d/msgid/beancount/CACjABkm2Gh3VXoJinXDMw224hSD%2B6z1LCQK_gRN3WsCVut7JzQ%40mail.gmail.com
>> <https://groups.google.com/d/msgid/beancount/CACjABkm2Gh3VXoJinXDMw224hSD%2B6z1LCQK_gRN3WsCVut7JzQ%40mail.gmail.com?utm_medium=email&utm_source=footer>
>> .
>>
> --
> You received this message because you are subscribed to a topic in the
> Google Groups "Beancount" group.
> To unsubscribe from this topic, visit
> https://groups.google.com/d/topic/beancount/_XEernfER5w/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to
> [email protected].
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/beancount/CAK21%2BhMnuezFxeoTJ6%2BDEat-njGpFNges2s9gPmEg3T5pg25pg%40mail.gmail.com
> <https://groups.google.com/d/msgid/beancount/CAK21%2BhMnuezFxeoTJ6%2BDEat-njGpFNges2s9gPmEg3T5pg25pg%40mail.gmail.com?utm_medium=email&utm_source=footer>
> .
>

-- 
You received this message because you are subscribed to the Google Groups 
"Beancount" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/beancount/CACjABkmqJhuOcua7n_0Nx43FaOt%2BOZW0kviZ7%3DQQzzbJqWNMGA%40mail.gmail.com.

Reply via email to