GnuCash
5.6-150-g038405b370+
|
Business Entry Interface. More...
#include <glib.h>
#include "gncBusiness.h"
#include "gncInvoice.h"
#include "gncOrder.h"
#include "gncTaxTable.h"
#include "gncOwner.h"
Go to the source code of this file.
Macros | |
#define | GNC_ID_ENTRY "gncEntry" |
#define | GNC_TYPE_ENTRY (gnc_entry_get_type ()) |
#define | GNC_ENTRY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), GNC_TYPE_ENTRY, GncEntry)) |
#define | GNC_ENTRY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), GNC_TYPE_ENTRY, GncEntryClass)) |
#define | GNC_IS_ENTRY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GNC_TYPE_ENTRY)) |
#define | GNC_IS_ENTRY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), GNC_TYPE_ENTRY)) |
#define | GNC_ENTRY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), GNC_TYPE_ENTRY, GncEntryClass)) |
#define | ENTRY_DATE "date" |
#define | ENTRY_DATE_ENTERED "date-entered" |
#define | ENTRY_DESC "desc" |
#define | ENTRY_ACTION "action" |
#define | ENTRY_NOTES "notes" |
#define | ENTRY_QTY "qty" |
#define | ENTRY_IPRICE "iprice" |
#define | ENTRY_IACCT "invoice-account" |
#define | ENTRY_BACCT "bill-account" |
#define | ENTRY_BPRICE "bprice" |
#define | ENTRY_BILLABLE "billable?" |
#define | ENTRY_BILLTO "bill-to" |
#define | ENTRY_ORDER "order" |
#define | ENTRY_INVOICE "invoice" |
#define | ENTRY_BILL "bill" |
#define | ENTRY_INV_DISC_TYPE "discount-type" |
#define | ENTRY_INV_DISC_HOW "discount-method" |
#define | ENTRY_INV_TAXABLE "invoice-taxable" |
#define | ENTRY_BILL_TAXABLE "bill-taxable" |
#define | ENTRY_INV_TAX_INC "invoice-tax-included" |
#define | ENTRY_BILL_TAX_INC "bill-tax-included" |
#define | ENTRY_INV_DISCOUNT "invoice-discount" |
#define | ENTRY_BILL_PAY_TYPE "bill-payment-type" |
#define | gncEntryGetGUID(x) qof_instance_get_guid(QOF_INSTANCE(x)) |
Typedefs | |
typedef GList | AccountValueList |
Enumerations | |
enum | GncEntryPaymentType { GNC_PAYMENT_CASH = 1, GNC_PAYMENT_CARD } |
enum | GncDiscountHow { GNC_DISC_PRETAX = 1, GNC_DISC_SAMETIME, GNC_DISC_POSTTAX } |
Functions | |
GType | gnc_entry_get_type (void) |
const char * | gncEntryDiscountHowToString (GncDiscountHow how) |
How to apply the discount and taxes. More... | |
gboolean | gncEntryDiscountStringToHow (const char *str, GncDiscountHow *how) |
const char * | gncEntryPaymentTypeToString (GncEntryPaymentType type) |
gboolean | gncEntryPaymentStringToType (const char *str, GncEntryPaymentType *type) |
void | gncEntryCopy (const GncEntry *src, GncEntry *dest, gboolean add_entry) |
GncOrder * | gncEntryGetOrder (const GncEntry *entry) |
GncInvoice * | gncEntryGetInvoice (const GncEntry *entry) |
GncInvoice * | gncEntryGetBill (const GncEntry *entry) |
gboolean | gncEntryIsOpen (const GncEntry *entry) |
void | gncEntryBeginEdit (GncEntry *entry) |
void | gncEntryCommitEdit (GncEntry *entry) |
int | gncEntryCompare (const GncEntry *a, const GncEntry *b) |
Create/Destroy Functions | |
GncEntry * | gncEntryCreate (QofBook *book) |
void | gncEntryDestroy (GncEntry *entry) |
Generic (shared) data | |
void | gncEntrySetDateGDate (GncEntry *entry, const GDate *date) |
Set the date of this entry. | |
void | gncEntrySetDate (GncEntry *entry, time64 date) |
DEPRECATED - use gncEntrySetDateGDate() instead! (Because the time-of-day is a misleading extra information. More... | |
void | gncEntrySetDateEntered (GncEntry *entry, time64 date) |
void | gncEntrySetDescription (GncEntry *entry, const char *desc) |
void | gncEntrySetAction (GncEntry *entry, const char *action) |
void | gncEntrySetNotes (GncEntry *entry, const char *notes) |
void | gncEntrySetQuantity (GncEntry *entry, gnc_numeric quantity) |
Set the internal quantity without any conversion. More... | |
void | gncEntrySetDocQuantity (GncEntry *entry, gnc_numeric quantity, gboolean is_cn) |
Set the internal quantity converting from the quantity as visible on the physical document. More... | |
GDate | gncEntryGetDateGDate (const GncEntry *entry) |
Returns the day of this entry. | |
time64 | gncEntryGetDate (const GncEntry *entry) |
DEPRECATED - use gncEntryGetDateGDate() instead! (Because the time-of-day is a misleading extra information. More... | |
time64 | gncEntryGetDateEntered (const GncEntry *entry) |
const char * | gncEntryGetDescription (const GncEntry *entry) |
const char * | gncEntryGetAction (const GncEntry *entry) |
const char * | gncEntryGetNotes (const GncEntry *notes) |
gnc_numeric | gncEntryGetQuantity (const GncEntry *entry) |
Get the quantity as stored internally. More... | |
gnc_numeric | gncEntryGetDocQuantity (const GncEntry *entry, gboolean is_cn) |
Get the quantity as on the physical document. More... | |
Customer Invoices | |
void | gncEntrySetInvAccount (GncEntry *entry, Account *acc) |
void | gncEntrySetInvPrice (GncEntry *entry, gnc_numeric price) |
void | gncEntrySetInvTaxable (GncEntry *entry, gboolean taxable) |
void | gncEntrySetInvTaxIncluded (GncEntry *entry, gboolean tax_included) |
void | gncEntrySetInvTaxTable (GncEntry *entry, GncTaxTable *table) |
void | gncEntrySetInvDiscount (GncEntry *entry, gnc_numeric discount) |
void | gncEntrySetInvDiscountType (GncEntry *entry, GncAmountType type) |
void | gncEntrySetInvDiscountHow (GncEntry *entry, GncDiscountHow how) |
void | qofEntrySetInvDiscType (GncEntry *entry, const char *type) |
void | qofEntrySetInvDiscHow (GncEntry *entry, const char *type) |
Account * | gncEntryGetInvAccount (const GncEntry *entry) |
gnc_numeric | gncEntryGetInvPrice (const GncEntry *entry) |
gnc_numeric | gncEntryGetPrice (const GncEntry *entry, const gboolean cust_doc, const gboolean net) |
gnc_numeric | gncEntryGetInvDiscount (const GncEntry *entry) |
GncAmountType | gncEntryGetInvDiscountType (const GncEntry *entry) |
GncDiscountHow | gncEntryGetInvDiscountHow (const GncEntry *entry) |
char * | qofEntryGetInvDiscType (const GncEntry *entry) |
char * | qofEntryGetInvDiscHow (const GncEntry *entry) |
gboolean | gncEntryGetInvTaxable (const GncEntry *entry) |
gboolean | gncEntryGetInvTaxIncluded (const GncEntry *entry) |
GncTaxTable * | gncEntryGetInvTaxTable (const GncEntry *entry) |
Vendor Bills (and Employee Expenses) | |
void | gncEntrySetBillAccount (GncEntry *entry, Account *acc) |
void | gncEntrySetBillPrice (GncEntry *entry, gnc_numeric price) |
void | gncEntrySetBillTaxable (GncEntry *entry, gboolean taxable) |
void | gncEntrySetBillTaxIncluded (GncEntry *entry, gboolean tax_included) |
void | gncEntrySetBillTaxTable (GncEntry *entry, GncTaxTable *table) |
void | gncEntrySetBillable (GncEntry *entry, gboolean billable) |
void | gncEntrySetBillTo (GncEntry *entry, GncOwner *billto) |
Account * | gncEntryGetBillAccount (const GncEntry *entry) |
gnc_numeric | gncEntryGetBillPrice (const GncEntry *entry) |
gboolean | gncEntryGetBillTaxable (const GncEntry *entry) |
gboolean | gncEntryGetBillTaxIncluded (const GncEntry *entry) |
GncTaxTable * | gncEntryGetBillTaxTable (const GncEntry *entry) |
gboolean | gncEntryGetBillable (const GncEntry *entry) |
GncOwner * | gncEntryGetBillTo (GncEntry *entry) |
GncEntryPaymentType | gncEntryGetBillPayment (const GncEntry *entry) |
employee-stuff | |
void | gncEntrySetBillPayment (GncEntry *entry, GncEntryPaymentType type) |
Getting Values | |
An entry has three important values:
These values can be retrieved in several variants. Depending on how they will be used some sign reversals can be applied on the values:
For tax there are TaxValue and TaxValues variants: the first one returns to total tax value for this entry, meaning the sum of all individual taxes. The second one returns a list of all the individual tax values for this entry. This list holds unrounded values only, there's no variant with rounded values. Note that this list is not owned by the entry. When no longer needed, it should be freed with gncAccountValueDestroy. Finally, there are rounded and unrounded variants of most of these functions. | |
gnc_numeric | gncEntryGetDocValue (GncEntry *entry, gboolean round, gboolean is_cust_doc, gboolean is_cn) |
gnc_numeric | gncEntryGetDocTaxValue (GncEntry *entry, gboolean round, gboolean is_cust_doc, gboolean is_cn) |
AccountValueList * | gncEntryGetDocTaxValues (GncEntry *entry, gboolean is_cust_doc, gboolean is_cn) |
Careful: the returned list is NOT owned by the entry and should be freed by the caller. | |
gnc_numeric | gncEntryGetDocDiscountValue (GncEntry *entry, gboolean round, gboolean is_cust_doc, gboolean is_cn) |
gnc_numeric | gncEntryGetBalValue (GncEntry *entry, gboolean round, gboolean is_cust_doc) |
gnc_numeric | gncEntryGetBalTaxValue (GncEntry *entry, gboolean round, gboolean is_cust_doc) |
AccountValueList * | gncEntryGetBalTaxValues (GncEntry *entry, gboolean is_cust_doc) |
Careful: the returned list is NOT owned by the entry and should be freed by the caller. | |
gnc_numeric | gncEntryGetBalDiscountValue (GncEntry *entry, gboolean round, gboolean is_cust_doc) |
void | gncEntryComputeValue (gnc_numeric qty, gnc_numeric price, const GncTaxTable *tax_table, gboolean tax_included, gnc_numeric discount, GncAmountType discount_type, GncDiscountHow discount_how, int SCU, gnc_numeric *value, gnc_numeric *discount_value, GList **tax_values) |
Compute the Entry value, tax_value, and discount_value, based on the quantity, price, discount, tax_-table, and types. More... | |
Business Entry Interface.
Definition in file gncEntry.h.