summaryrefslogtreecommitdiff
path: root/contrib/non-profit-audit-reports
Commit message (Collapse)AuthorAgeFilesLines
* Use Python raw strings for regex methods argumentAlexis Hildebrandt2024-07-081-7/+7
|
* chore: Fix inline python format-stringsAlexis Hildebrandt2023-12-081-1/+1
|
* Migrate Python scripts to Python 3Alexis Hildebrandt2023-12-043-1971/+2005
| | | | Update ooolib-python to 0.1.0
* typosspaette2023-01-072-6/+6
|
* Fix typos found by codespellAlexis Hildebrandt2022-07-195-6/+6
|
* Fix some typosMartin Michlmayr2020-05-161-1/+1
|
* Remove references to BugzillaMartin Michlmayr2018-06-011-1/+1
|
* Some of the totals rounded via -V cause rounding more than one penny.Bradley M. Kuhn2013-07-141-4/+4
| | | | Use two cents as to test if the amounts are close enough.
* Add Fraud Receivable to Accrued accounts.Bradley M. Kuhn2013-07-141-3/+3
| | | | | | Funds lots and expected recoverable from Fraud are in an account called "Accrued:Fraud Receivable". In this report, show this along with the total of Loan Receivables.
* Use "ledger accounts" command rather than the '-F "%150A\n" reg' report ↵Bradley M. Kuhn2013-07-122-4/+2
| | | | | | | | | | | | | | | solution. Ledger has had (probably for some time) an "accounts" command that will list all the accounts from all transactions meeting the other criteria set on the command line. That's really what we're looking for here when we build this chart of accounts, and thus that should be used. Note that this corrects a subtle bug that wasn't apparent with the old solution. With the '-F "%150A\n" reg' solution, accounts that balanced out to zero for period (e.g., accrual accounts that were emptied during in the month) did not show up on the reports. This bug that I didn't know I had here is thus now fixed by switching to the "accounts" report.
* The $formattedBeginDate should derive from $beginDate, not $endDate (duh!)Bradley M. Kuhn2013-07-101-1/+1
|
* Type lists need to change along with the groupings.Bradley M. Kuhn2013-05-101-2/+2
|
* Chart of accounts change s/Enforcement/Compliance/, but make backwards ↵Bradley M. Kuhn2013-05-101-2/+2
| | | | compatible.
* Comment to expound more on what it means for <Adjustment> entries to be ↵Bradley M. Kuhn2013-02-201-0/+13
| | | | | | | | | | | | | ignored by these reports. Loïc Dachary <loic@dachary.org>, during patch review, pondered whether the ignoring of <Adjustment> by these scripts could ever be used to hide funds, ala the movies Superman III and Office Space. After discussion, we both concluded that it would not be possible to hide funds merely with this report. Such hiding would have to also dig into the main Ledger codebase and muck with how it handles auto-generated <Adjustment> entries.
* Include better explanation of what this report is for in the comments.Bradley M. Kuhn2013-02-201-1/+13
|
* Fix typo in error output.Bradley M. Kuhn2013-02-201-1/+1
| | | | HT Loïc Dachary <loic@dachary.org>, who noticed this.
* Use a Math::BigFloat() rather than a regular float for Adjustment comparison.Bradley M. Kuhn2013-02-201-3/+4
| | | | | | | | | Based on patch review by Loïc Dachary <loic@dachary.org>, we discovered that this script inconsistently used 0.02 as a float when comparing against numbers from the Math::BigFloat() package. While there were no known bugs related to this (presumably the 0.02 got coerced into a BigFloat (or vice-versa) and compared properly), this change nevertheless normalizes to use of a BigFloat for comparison.
* Equity and Adjustment accounts should not appear in these reports at all.Bradley M. Kuhn2013-02-192-1/+7
| | | | There were a few spots where they were still sneaking in.
* Catch a few additional accounts under Conference RBI category.Bradley M. Kuhn2013-02-181-1/+1
|
* Remove spurious print statement.Bradley M. Kuhn2013-02-181-1/+0
|
* Subtotaling of BRANCH DEPOSITs.Bradley M. Kuhn2013-02-181-2/+43
| | | | | | | | The auditors seem to like to see the check deposits made to be subtotaled, so that's done here. I attempted to aid this by using a --sort and/or --sort-xacts option (or combo thereof) on the ledger command line, but this didn't work as expected. I opened a bug in ledger about this: http://bugs.ledger-cli.org/show_bug.cgi?id=901
* Remove extra newlineBradley M. Kuhn2013-02-181-1/+1
|
* Rework report to be just two files (disbursements and receipts).Bradley M. Kuhn2013-02-181-19/+18
| | | | Ensure that tagged linked files appear for all lines.
* Sort solution by date in output.Bradley M. Kuhn2013-02-181-1/+1
|
* Searching is better when you can set the begin date, end date and then go ↵Bradley M. Kuhn2013-02-181-6/+6
| | | | back from begin date.
* Improve spreadsheet and debugging output.Bradley M. Kuhn2013-02-181-6/+10
|
* This could be for any period, not just the FY.Bradley M. Kuhn2013-02-181-1/+1
|
* Correct account names due to renaming of Conference accounts in chart of ↵Bradley M. Kuhn2013-02-181-4/+4
| | | | accounts.
* Remove output of TXT files. CSV output is adequate.Bradley M. Kuhn2013-02-181-13/+0
|
* Correct regular expression for account queries to avoid inclusion of ↵Bradley M. Kuhn2013-02-181-2/+2
| | | | | | | | | | | | | sub-accounts. The previous queries had a bug whereby an account in the form "A:B" would include all transactions for sub accounts such as "A:B:C". That's not the intended effect. Entries should appear in the lowest level account, and not in their parent. The regular expression now is anchored at start and finish in both queries to ensure this works correctly.
* Support for title: field, to name sheets in the ODS file.Bradley M. Kuhn2013-02-181-1/+4
| | | | | If "title:SOMETHING" occurs in the CSV file, use SOMETHING as the title of the sheet.
* Start search from date: easy way to resume searches.Bradley M. Kuhn2013-02-181-5/+5
| | | | | | Instead of always starting a search from the end date, allow a CLI option that is the data to use for the start of searching (back from the end date). This is useful when resuming a search (since they take a long time).
* Finish reporting details for STDOUT; change command line arg to bank balance.Bradley M. Kuhn2013-02-181-20/+40
| | | | | | | Report in CSV now goes to STDOUT. The command line argument that was the difference to seek is now the bank balance.
* Default to brute-force subset sum solution.Bradley M. Kuhn2013-02-181-8/+44
| | | | | | The dynamic programming version of the subset sum problem required far too much RAM for larger bank balances. Meanwhile, the brute-force is not to bad now that the loop tries the closer dates *first*.
* Support for a list of known checksums of files already copied over.Bradley M. Kuhn2013-02-181-9/+70
| | | | | | | | | | For the times when we want to make shorter names of files by doing copies of the documentation files for hyperlink usage, allow input of a new command line option which is a list in the form of: PATH_TO_FILE : sha25sum so that those files can be used rather than new copies made.
* Rename the function to note it's the dynamic programming one.Bradley M. Kuhn2013-02-181-2/+2
|
* Loop through to build smaller sets when testing.Bradley M. Kuhn2013-02-181-29/+52
| | | | | | | Usually, transactions that didn't appear are nearby in date to the statement date. This loop cycles through. Overall, this would take longer to find a solution, but since most solutions are in the early dates "back" from the statement date, this will probably be faster in typical cases.
* Basic implementation probably correct, but needs much RAM.Bradley M. Kuhn2013-02-181-9/+36
| | | | | This is the basic implementation but for large numbers, it needs a *LOT* of RAM.
* Began work on script to reconcile bank accounts.Bradley M. Kuhn2013-02-181-0/+122
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The goal here is to take as input an account, a monthly balance amount that appears on a bank statement, and the date of that bank statement and output the list of transactions that likely weren't cleared properly as of that date that caused the balance in the accounts to fail to match the balance that appeared on the statement. Note that determining this answer requires solving the known NP-Complete problem called the subset sum problem. There is a known pseudo-polynomial dynamic programming solution to this problem, but it's still exponential in the size of the numbers you have to balance. So, if you have *big* account balances, this will make take quite a while to run. For smaller accounts, the pseudo-polynomial solution might be helpful. (BTW, the wikipedia entry on the subset sum problem isn't, at the time of this commit, particularly good, but it's "good enough" to give you a sense of what the subset sum problem is: http://en.wikipedia.org/wiki/Subset_sum_problem ) I originally wrote the subset sum problem solution implementation here: https://gitorious.org/bkuhn/small-hacks/commit/2dca069d810b61cdfad46e00abcb1a3edaf56d1b The code is just cut and pasted in here with some minor modifications. This rest of this first commit just has that aforementioned paste, plus the beginnings of the CLI and query to run to get the proper entries.
* Add --single-file-directory option: create single directory with all linked ↵Bradley M. Kuhn2013-02-181-5/+46
| | | | | | | | | | | | | | | | files. This new option copies all files to the directory specified as an argument to the --single-file-directory option, and also creates dummy shorter filenames for the files. This feature was implemented to get around a problem found when zip'ing the spreadsheet up with the supporting files for users on Windows. The Windows users encounter the error 0x80010135 related to some of the ZIP files going beyond the maximum path name length on windows. Apparently, opening ZIP files with long path names just doesn't work on Microsoft systems. I've suggested our accountants switch to a Free Software operating system, but they declined.
* The restricted fund report has been almost entirely rewritten.Bradley M. Kuhn2013-01-061-70/+151
| | | | | The previous version was somewhat confusing anyway. Now it builds a relatively clear spreadsheet of all categories. It also now outputs CSV.
* More flexible CSV -> ODS hyperlinks and pagebreaks; csv2ods.py produces ↵Bradley M. Kuhn2013-01-063-21/+32
| | | | | | | | | | | | | | | | | | 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.
* Correct sorting of output in trial balance report.Bradley M. Kuhn2013-01-061-3/+6
|
* Completed report on unpaid accruals.Bradley M. Kuhn2013-01-061-3/+29
|
* Ordering of options had always been incorrect on this call; Fixed.Bradley M. Kuhn2013-01-061-1/+1
|
* First crack at an unpaid accruals report.Bradley M. Kuhn2013-01-051-0/+84
|
* Add balances for permanent (i.e., asset) accounts.Bradley M. Kuhn2013-01-051-3/+41
| | | | | | 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.
* MANIFEST file is now also generated by general-ledger report.Bradley M. Kuhn2013-01-041-0/+10
| | | | | 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.
* Updated expected test output data for general-ledger report.Bradley M. Kuhn2013-01-043-4/+6
|
* Corrected Trial Balance report based on discussion with accountants.Bradley M. Kuhn2013-01-041-26/+57
| | | | | I believe this trial balance report will look "more natural" to accountants.