| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|
|
|
| |
Update ooolib-python to 0.1.0
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Use two cents as to test if the amounts are close enough.
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
| |
|
|
|
|
| |
compatible.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
| |
HT Loïc Dachary <loic@dachary.org>, who noticed this.
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
There were a few spots where they were still sneaking in.
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
| |
Ensure that tagged linked files appear for all lines.
|
| |
|
|
|
|
| |
back from begin date.
|
| |
|
| |
|
|
|
|
| |
accounts.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
If "title:SOMETHING" occurs in the CSV file, use SOMETHING as the title of
the sheet.
|
|
|
|
|
|
| |
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).
|
|
|
|
|
|
|
| |
Report in CSV now goes to STDOUT.
The command line argument that was the difference to seek is now the bank
balance.
|
|
|
|
|
|
| |
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*.
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
This is the basic implementation but for large numbers, it needs a *LOT*
of RAM.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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 previous version was somewhat confusing anyway. Now it builds a
relatively clear spreadsheet of all categories. It also now outputs CSV.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
| |
I believe this trial balance report will look "more natural" to
accountants.
|