Patch by Christoph Holtermann:
1) I decided to let the methods return "Division by Zero" for denom()==0.
2) As proposed in
http://stackoverflow.com/questions/1307014/python-str-versus-unicode i created
both __str__ and __unicode__.
3) I use format to fix the decimal places to 2. It would be nice if the number
would be configurable.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@20128 57a11ea4-9604-0410-9ed3-97b8803252fd
This caused online price quotes to fail for anything other than a currency.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@20126 57a11ea4-9604-0410-9ed3-97b8803252fd
* Add a macro GNC_RESAVE_VERSION which holds an svn revision number.
* When fully saving a database put this number in versions with
table_name Gnucash-Resave.
* On database load, compare the current GNC_RESAVE_VERSION with the
Gnucash revision and Gnucash-Resave revision saved when the database
was created.
* If the current GNC_RESAVE_VERSION > the saved Gnucash
version, then emit ERR_SQL_DB_TOO_OLD.
* If GNC_RESAVE_VERSION < the saved Gnucash-Resave, emit ERR_SQL_DB_TOO_NEW.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@20123 57a11ea4-9604-0410-9ed3-97b8803252fd
tables out of the way, writing new tables, and then dropping the old
tables once everything has been saved.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@20119 57a11ea4-9604-0410-9ed3-97b8803252fd
This patch makes this feature available as button "Duplicate" in the search window.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@20115 57a11ea4-9604-0410-9ed3-97b8803252fd
The newer "import-export/aqbanking" has been in use since aqbanking-3.0.0.
As it turned out, we require aqbanking-4.0.0 now anyway, which was
release 2009-05-30. Consequently, the old module isn't being maintained
by us and so needs to be removed.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@20106 57a11ea4-9604-0410-9ed3-97b8803252fd
qof_instance_begin_edit. Add qof_session_safe_save. Add unit tests for
these changes.
QofBook read-only attribute is to prevent starting an edit when the
version of Gnucash which created a dataset is newer than the one
currently running. This is to prevent writing records of an old format
into an existing data set. The user can use File>Save As to create a new
QofSession which will write a completely new dataset in the current
format. This is an important safety feature for future versions of
Gnucash which will not bring all of a dataset into memory, instead
loading only what is immediately needed.
Safe-save is the Qof access to allow writing out a dataset to an
existing server database (i.e., postgresql or mysql) while maintaining
the ability to both transaction-protect saving individual records while
maintaining the ability to rollback the entire save if something goes
wrong.
The unit test framework is added to enable testing these components.
More tests will be added in a later commit.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@20103 57a11ea4-9604-0410-9ed3-97b8803252fd
While $HOME is fine on linux, on Windows the most sensible location is "My Documents"
(or its translated equivalent).
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@20101 57a11ea4-9604-0410-9ed3-97b8803252fd
and add a hint for translators to the error message string
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@20100 57a11ea4-9604-0410-9ed3-97b8803252fd
Old state files are still read (if no new equivalent exists yet)
but will never be written to again.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@20098 57a11ea4-9604-0410-9ed3-97b8803252fd
No version GnuCash 2.2.x version will produce state files with
spaces in their key names, and we don't need to worry about older
compatibility (migrating from 2.0.x should always happen via 2.2.x).
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@20096 57a11ea4-9604-0410-9ed3-97b8803252fd
This version uses 2 separate sentences,
mentions currencies and
gives a clue for the account type.
Add enable basic doxygen output.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@20089 57a11ea4-9604-0410-9ed3-97b8803252fd
The INVOICE_TYPE string unfortunately is
stored in translated form due to the usage of gncInvoiceGetType()
for user-visible strings as well. Hence, as an exception we
must also search for the translated here even though it's an
internal flag.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@20087 57a11ea4-9604-0410-9ed3-97b8803252fd
Additional: explain alternatives and optional parts
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@20086 57a11ea4-9604-0410-9ed3-97b8803252fd
Get the bi_import plugin building on Windows by including missing libc functions
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@20085 57a11ea4-9604-0410-9ed3-97b8803252fd
Patch by Manfred Usselmann:
This patch adds a toggle action to the online banking menu, which allows to
open and close the online banking log window. In addition it adds an option to
the online banking preferences to keep the log window open after the transfer
has finished.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@20078 57a11ea4-9604-0410-9ed3-97b8803252fd
Patch by Herbert Thoma:
Matthias Gruhn suggested on the German GnuCash list:
Add averages to the income and expense bar chart reports just like it was
introduced for the income and expense pie chart reports in r19253
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@20077 57a11ea4-9604-0410-9ed3-97b8803252fd
Also, to my knowledge the docs don't contain a "what's new in 2.4" section,
so I removed that tip as well.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@20071 57a11ea4-9604-0410-9ed3-97b8803252fd
Patch by Bert Claesen (but I changed the option name):
Patch to aging.scm to include due date and "current" bucket
Patch file for aging.scm to include:
* Option to select due date or date posted
* Added column of "Current" for invoices not yet due
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@20069 57a11ea4-9604-0410-9ed3-97b8803252fd
Patch by Jim Radford (with code beautified and re-indented by myself):
The attached patches sort the slots, lots, book accounts, bill terms,
customers, employees, entries, invoices, jobs, orders, tax tables and
vendors before saving them to the GnuCash XML file.
This is an attempt to make saves more idempotent thereby facilitating
the use of a revision control system on the GnuCash XML files.
With these patches most of the needless and seemingly random churn is
gone and I can add or remove a transaction and expect
there to be no unrelated changes to the GnuCash file.
I've been using and refining this patches for the last few years, so it has
received quite a bit of testing.
David Fraser adds: Without specific testing, I'm using this on an average-sized gnucash file
(5.7MB) without noticing any particular slowdown in saving, but a wonderful
reduction in diffs when comparing changes.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@20067 57a11ea4-9604-0410-9ed3-97b8803252fd
Patch by Jim Radford:
When doing
make install DESTDIR=/tmp/gnucash
the install fails because GCONF_SCHEMA_CONFIG_SOURCE doesn't end up using
DESTDIR (and it's non-trivial because of the xml:: prefix). The attached patch
fixes it for me but is non-ideal because it hard codes the value of
GCONF_SCHEMA_CONFIG_SOURCE using GCONF_SCHEMA_CONFIG_SOURCE_DIRONLY.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@20065 57a11ea4-9604-0410-9ed3-97b8803252fd