Add a "slots" parameter to allow for future expansion. Right
now this is completely ignored (which will allow future releases
to add a kvp-frame slots to any business function and allow that
file to be read by older versions). Right now the slot is ignored,
but that's better than barfing on the data file.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@9285 57a11ea4-9604-0410-9ed3-97b8803252fd
so it PROPERLY copies the bill term. Oops!
* src/business/business-core/file/gnc-tax-table-xml-v2.c:
when rebuilding the refcount, make sure we fix the grandparent
problems first so we refcount the correct object.
* src/business/business-core/file/gnc-bill-term-xml-v2.c:
when rebuilding the refcount, make sure we fix the grandparent
problems first so we refcount the correct object. Also cope
with the broken gncBillTermCopy() and hope that the existing
parent is correct.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@8638 57a11ea4-9604-0410-9ed3-97b8803252fd
modules to allow post-processing (scrubbing) of the book after
it is loaded from XML. This allows a plug-in to post-process
the complete book.
* src/business/business-core/file/gnc-customer-xml-v2.c:
* src/business/business-core/file/gnc-employee-xml-v2.c:
* src/business/business-core/file/gnc-entry-xml-v2.c:
* src/business/business-core/file/gnc-invoice-xml-v2.c:
* src/business/business-core/file/gnc-job-xml-v2.c:
* src/business/business-core/file/gnc-order-xml-v2.c:
* src/business/business-core/file/gnc-vendor-xml-v2.c:
add a NULL scrub member to the XML plugin API.
* src/business/business-core/file/gnc-tax-table-xml-v2.c:
create a scrub function to clear up bogus tax tables due
to bug #114888 (and related bugs) which could cause
tax tables to get created ad-nausium if you post and then
unpost an invoice. Scrubs all the entries for bogus
tax tables, and then clears out the bogus tax tables.
* src/business/business-core/file/gnc-bill-term-xml-v2.c:
Hook in an empty scrub routine, because I think the same
bug exists here, but I'll work on that later.
* src/business/business-core/gncEntry.c:
make sure we properly dereference tax tables when we destroy
an entry.
* src/business/business-core/gncTaxTable.c:
- keep a list of children so we can unref ourselves from our
children when we get destroyed
- deal with parentless children
Fixes bug #114888 -- don't generate phantom (parent) tax tables
and clean up any existing bogus tax tables.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@8595 57a11ea4-9604-0410-9ed3-97b8803252fd
* business/business-core/*.c: Implement BeginEdit()/CommitEdit() functions
for all the business-accounting data objects.
* Use the begin/commit calls in the GUI and file-backend.
* mostly fixes bug #96855.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@7431 57a11ea4-9604-0410-9ed3-97b8803252fd
their integer values). This is an incompatible change -- old
business XML objects will not load properly.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@7053 57a11ea4-9604-0410-9ed3-97b8803252fd
xml implementation for storing tax tables.
* add some more functions to gncTaxTable.[ch]
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@6965 57a11ea4-9604-0410-9ed3-97b8803252fd