Contrib: Non profit reports: generate only CSV files, better sorting, more flexible hyperlinks & pagebreaks #114

Merged
merged 19 commits into from Jan 29, 2013

Projects

None yet

2 participants

@bkuhn
Contributor
bkuhn commented Jan 3, 2013

This is a series of commits to the non-profit audit reports contrib/ area that I've been working on.

These commits change the output for all reports to just be CSV files, and sort the accounts in a way preferred by our auditors (and presumably other accountants as well).

Also included are improvements to csv2ods.py to improve the generation of hyperlinks and pagebreaks.

bkuhn added some commits Jan 3, 2013
@bkuhn bkuhn Created Trial balance report for summary reports. 269d0fd
@bkuhn bkuhn Updated sorting function based on advice of auditing accountants.
Our auditing accounts tell us they want accounts sorted by:
Assets
Liabilities
Net Assets
Income
Expenses

in a general ledger report.  Generally, I think we should just apply the
same sorting.

Since Ledger doesn't use account codes by default, this is my hack to
solve this problem for now.  Maybe there should be an account code tag for
sorting purposes at least?
bfdf20b
@bkuhn bkuhn Change chart of accounts output to be a CSV file instead of TXT file.
This includes adding a formatted start date string too.
f01ddd4
@bkuhn bkuhn Changed balance sheet output from a TXT file to a CSV file. d18e01a
@bkuhn bkuhn Convert trial-balance report to CSV from TXT file.
Also, ignore Ledger's Equity: accounts properly.
b939bbe
@bkuhn bkuhn Add option to skip generating the page breaks. fbd6c30
@bkuhn bkuhn Change Income and Expenses reports to generate CSV files, rather than…
… TXT files.
750321c
@bkuhn bkuhn Some minor formatting fixes for the trial balance report. 2fad8fe
@bkuhn bkuhn Sort of accounts was buggy; it never made the final else due to bad r…
…egexes.

This fix now has the sort working correctly.
e317e1f
@bkuhn bkuhn Corrected Trial Balance report based on discussion with accountants.
I believe this trial balance report will look "more natural" to
accountants.
986829b
@bkuhn bkuhn Updated expected test output data for general-ledger report. 87f0c44
@bkuhn bkuhn MANIFEST file is now also generated by general-ledger report.
We should give the sample MANIFEST for users that want to make sure they
got the script working properly, and to show the sample output.
2b237aa
@bkuhn bkuhn Add balances for permanent (i.e., asset) accounts.
Based on a request from our accountants, I've changed the RUNNING TOTAL
field (which is generally useless to accountants anyway) to be a BALANCE
amount for starting and ending accounts.
4290a4e
@bkuhn bkuhn First crack at an unpaid accruals report. b04fbb1
@bkuhn bkuhn Ordering of options had always been incorrect on this call; Fixed. 39db5bb
@bkuhn bkuhn Completed report on unpaid accruals. 2142a36
@bkuhn bkuhn Correct sorting of output in trial balance report. 6d98bc5
@bkuhn bkuhn More flexible CSV -> ODS hyperlinks and pagebreaks; csv2ods.py produc…
…es MANIFEST.

Previous version of csv2ods.py simply assumed that fields beyond five
would have links to files.  This obviously lacked flexibility and was a
silly hard-code.  Now, those CSV fields that have link:SOMETHING will
cause a hyperlink to be created to SOMETHING.

Meanwhile, the pagebreak support was similarly hard-coded.  Now, any CSV
field that has the word "pagebreak" in it will generate a pagebreak.

The general ledger and cash receipts/disbursement journals have been
modified to make use of these new features in csv2ods.py.

Finally, the --skip-page-break option is now moot in csv2ods.py, so that
is herein removed.
8cddda4
@bkuhn bkuhn The restricted fund report has been almost entirely rewritten.
The previous version was somewhat confusing anyway. Now it builds a
relatively clear spreadsheet of all categories.  It also now outputs CSV.
9d78dc6
@jwiegley jwiegley merged commit 0e91b17 into ledger:next Jan 29, 2013
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment