to deal with bill 'payment types', in preparation for
employee expense vouchers.
* src/business/business-core/file/gnc-entry-xml-v2.c:
add support for the bill payment type.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@8033 57a11ea4-9604-0410-9ed3-97b8803252fd
...Currency()
* src/business/business-core/gncInvoice.[ch]: rename ...CommonCommodity()
to ...Currency()
use new gncOwner function name
* src/business/business-core/gncEntry.c: use new Currency() functions
* src/business/business-core/gw-business-core-spec.scm:
wrap gncInvoiceSetCurrency()
wrap gncInvoiceGetCurrency()
wrap gncOwnerGetCurrency()
* src/business/business-core/file/gnc-invoice-xml-v2.c: use new funcs
* src/business/business-gnome/dialog-invoice.c: use new functions --
set invoice currency based on owner's currency
* src/business/business-reports/invoice.scm: use invoice's currency
for printing the invoice.
PARTITAL fix for #101001
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@7817 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
not bleed over into billback items. Fixes RFE #91415
(See ChangeLog for more details)
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@7208 57a11ea4-9604-0410-9ed3-97b8803252fd
gncEntry->billAccount. Change the register so that Bills use
the BillAccount and Invoices use the InvoiceAccount. This
allows the same Entry to have both an "expense" and "income"
account to offset each other.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@7117 57a11ea4-9604-0410-9ed3-97b8803252fd
* implement "Default Project" in the Bill register to enter a
default Bill-to customer/job. It's only visible on Bills, not
Invoices.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@7116 57a11ea4-9604-0410-9ed3-97b8803252fd
* save these flags only if the entry is attached to a Bill.
* add a Billable column to Bill register
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@7110 57a11ea4-9604-0410-9ed3-97b8803252fd
An Entry now has pointers to an Invoice and a Bill, although
both are represented by a GncInvoice. Force a GncInvoice to a
Bill if the owner is a Vendor. (It's a regular Invoice if the
owner is a Customer). Eventually we can support Owner ==
Employee to deal with Expense Reports.
* gncInvoice: add gncBill{Add,Remove}Entry
* gncEntry: add gncEntry{Get,Set}Bill
* gw-business-core: wrap gncEntryGetBill
* gnc-entry-xml-v2: add entry:bill pointer
* gncEntryLedger: deal with Bill Entry. Don't need a lot of
columns (compared to Invoices). This is not complete, but is
at a workable point now.
* dialog-invoice: call the BILL vs. INVOICE entry-ledger based
on the invoice owner.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@7108 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
changes. Only set "global" dirty flag at 'commitedit'
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@6990 57a11ea4-9604-0410-9ed3-97b8803252fd
and discounts are computed, stored, and returned. Fix the Entry
XML code to save/load the new taxtable data (not backwards
compatible). Integrate new changes into the entry-ledger.
fix some bugs in the business xml code. fix some memory leaks.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@6966 57a11ea4-9604-0410-9ed3-97b8803252fd
save reports that reference Invoices, Customers, or Vendors and have
them reload properly.
* Add two new functions to interface Invoices, Customers, and Vendors
to scheme (RetGUID and LookupDirect)
* fix the way Entry values are computed. Cache the computed values so
you're not recomputing the math all the time. It should also round
properly, now.
* fix the display of entry values to round to the commodity fraction.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@6920 57a11ea4-9604-0410-9ed3-97b8803252fd
provide backend-support without changing the core backend
implementation.
* src/engine/gncObject: Add a 'mark_clean' data-type method()
add backend extension registration.
* src/engine/gnc-book.c: use mark_clean object interface
* src/backend/file/io-gncxml-v2: use the backend extensions
* src/business/business-core/gnc*: add the mark_clean methods
add commodities to many objects
* src/business/business-core/gncInvoice.c: fix GetPaidTxn() bug
* src/business/business-core/file: the XML backend extensions for
business objects.
* src/business/business-gnome/dialog-*: supply default commodities
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@6770 57a11ea4-9604-0410-9ed3-97b8803252fd
gncEntry: emit engine events for changes
emit an event when the order is set: 'owner' modified
gncOrder: add the entry to the order before setting the entry
business-gnome.scm: change the API for invoice/order find/edit functions
dialog-customer: change terms entry to a GtkEntry; handle as string
integrate invoice/order API changes
dialog-invoice: change find/edit API; start work for asynchronous UI
dialog-order: change find/edit API; start work for asynchronous UI
dialog-vendor: integrate invoice/order API changes
dialog-job-select: integrate invoice/order API changes
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@6750 57a11ea4-9604-0410-9ed3-97b8803252fd
gncEntry: add date_entered for better sorting
change SetDate methods from "Timespec*" to "Timespec"
update entry ledger to use new function calls
Fix a comparison bug in Entry/Invoice/Order. Compares now
work correctly.
Updated invoice report; use date->string to print today's date;
flags to print notes. Added more flexibility in what gets printed.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@6748 57a11ea4-9604-0410-9ed3-97b8803252fd
add 'ReturnValue' and 'ReturnTaxValue' functions for simplicity of wrapping
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@6737 57a11ea4-9604-0410-9ed3-97b8803252fd
the *_GUID defines, and change them all the QUERY_PARAM_GUID.
- Add a gncObject is_dirty() method, and have the book call it --
this gives the UI a means to warn the user if any business objects
changed.
- abstract out the storage methods in the business objects
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@6734 57a11ea4-9604-0410-9ed3-97b8803252fd
* Update the QueryNew API to take a GList of terms to allow
for any number of iterative lookups (such as
GncEntry->GncInvoice->GncAccount->GNCBook->guid) (not that this
is a useful example ;)
* Update all the business objects to the new API -- don't distinguish
between a parameter that returns a core type and a parameter that
returns another object. Note that this implies that the namespace
is shared between the objects and core types. Also note that this
is not enforced in any way.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@6681 57a11ea4-9604-0410-9ed3-97b8803252fd
* QueryNew interface revision-1 check-in
* update all the business objects to register with the new query system
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@6680 57a11ea4-9604-0410-9ed3-97b8803252fd
of closing and sets the close-date (for when you close out an
order to post an invoice).
- Refactor the Entry Value computation so that it is possible to
compute the values in real-time (although it's not used at the
moment)
- Change the Order Entry UI to make it a but clearer.
- change the EntryLedger to allow RO and RW entries for Invoices and
Orders.
- Implement closing an Order; Opening (editing/viewing) a closed should be
a read-only operation.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@6621 57a11ea4-9604-0410-9ed3-97b8803252fd
into the Entry from the Invoice.
Add more hooks to post an Invoice to an Account and lookup
an invoice from a transaction
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@6615 57a11ea4-9604-0410-9ed3-97b8803252fd
structure registration (GncBusinessObject) into "gncCore" in the
engine.
* Change all the Business Objects to take a GNCBook instead of
GncBusiness; use the GNCEntityTable in the Book for GUID storage.
* Use xaccGUIDNew() instead of guid_new().
* Move the object storage tables into the GNCBook via get/set_data.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@6041 57a11ea4-9604-0410-9ed3-97b8803252fd
to change how the Tax and Discount fields are handled (values
or percentages)
Add code to link a GncInvoice to a Transaction, and to lookup
the GncInvoice from a linked Transaction.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@5989 57a11ea4-9604-0410-9ed3-97b8803252fd