Files | |
| file | gncEntry.h |
| Business Entry Interface. | |
Getting Values | |
| The first three return the rounded values -- the last returns the list of unrounded account-values. The list belongs to the entry and will be destroyed, so use it quickly. | |
| typedef GList | AccountValueList |
| gnc_numeric | gncEntryReturnValue (GncEntry *entry, gboolean is_inv) |
| gnc_numeric | gncEntryReturnDiscountValue (GncEntry *entry, gboolean is_inv) |
| gnc_numeric | gncEntryReturnTaxValue (GncEntry *entry, gboolean is_inv) |
| AccountValueList * | gncEntryReturnTaxValues (GncEntry *entry, gboolean is_inv) |
| void | gncEntryGetValue (GncEntry *entry, gboolean is_inv, gnc_numeric *value, gnc_numeric *discount, gnc_numeric *tax_value, GList **tax_values) |
| 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) |
Create/Destroy Functions | |
| GncEntry * | gncEntryCreate (QofBook *book) |
| void | gncEntryDestroy (GncEntry *entry) |
Generic (shared) data | |
| void | gncEntrySetDate (GncEntry *entry, Timespec date) |
| void | gncEntrySetDateEntered (GncEntry *entry, Timespec 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) |
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) |
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) |
employee-stuff | |
| void | gncEntrySetBillPayment (GncEntry *entry, GncEntryPaymentType type) |
Generic (shared) data | |
| Timespec | gncEntryGetDate (const GncEntry *entry) |
| Timespec | 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) |
Customer Invoices | |
| Account * | gncEntryGetInvAccount (const GncEntry *entry) |
| gnc_numeric | gncEntryGetInvPrice (const GncEntry *entry) |
| 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) | |
| 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) |
Defines | |
| #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 | gncEntryLookup(book, guid) QOF_BOOK_LOOKUP_ENTITY((book),(guid),GNC_ID_ENTRY, GncEntry) |
| #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 _gncEntry | GncEntry |
| typedef _gncEntryClass | GncEntryClass |
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) |
| 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) |
| 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) |
| #define gncEntryLookup | ( | book, | |||
| guid | ) | QOF_BOOK_LOOKUP_ENTITY((book),(guid),GNC_ID_ENTRY, GncEntry) |
Return a pointer to the instance gncEntry that is identified by the guid, and is residing in the book. Returns NULL if the instance can't be found. Equivalent function prototype is GncEntry * gncEntryLookup (QofBook *book, const GUID *guid);
Definition at line 223 of file gncEntry.h.
| enum GncDiscountHow |
Definition at line 42 of file gncEntry.h.
00042 { 00043 GNC_DISC_PRETAX = 1, 00044 GNC_DISC_SAMETIME, 00045 GNC_DISC_POSTTAX 00046 } GncDiscountHow;
| enum GncEntryPaymentType |
Definition at line 37 of file gncEntry.h.
00037 { 00038 GNC_PAYMENT_CASH = 1, 00039 GNC_PAYMENT_CARD 00040 } GncEntryPaymentType;
| const char* gncEntryDiscountHowToString | ( | GncDiscountHow | how | ) |
How to apply the discount and taxes. There are three distinct ways to apply them:
Type: discount tax PRETAX pretax pretax-discount SAMETIME pretax pretax POSTTAX pretax+tax pretax
Definition at line 111 of file gncEntry.c.
00112 { 00113 switch(how) 00114 { 00115 GNC_RETURN_ENUM_AS_STRING(GNC_DISC_PRETAX, "PRETAX"); 00116 GNC_RETURN_ENUM_AS_STRING(GNC_DISC_SAMETIME, "SAMETIME"); 00117 GNC_RETURN_ENUM_AS_STRING(GNC_DISC_POSTTAX, "POSTTAX"); 00118 default: 00119 g_warning ("asked to translate unknown discount-how %d.\n", how); 00120 break; 00121 } 00122 return(NULL); 00123 }
| void gncEntryGetValue | ( | GncEntry * | entry, | |
| gboolean | is_inv, | |||
| gnc_numeric * | value, | |||
| gnc_numeric * | discount, | |||
| gnc_numeric * | tax_value, | |||
| GList ** | tax_values | |||
| ) |
Compute the Entry value, tax-value, and discount_value, based on the quantity, price, discount, tax-table, and types. The value is the amount the merchant gets, the taxes are what the gov't gets, and the discount is how much the customer saved. The SCU is the target denominator of the value and tax -- it should be the account or commodity SCU of the target.
The tax_values list is the property of the entry and will be destroyed automatically, so use it quickly. Note that all return values from these two functions are NOT rounded.
Definition at line 1136 of file gncEntry.c.
01139 { 01140 if (!entry) return; 01141 gncEntryRecomputeValues (entry); 01142 if (value) 01143 *value = (is_inv ? entry->i_value : entry->b_value); 01144 if (discount_value) 01145 *discount_value = (is_inv ? entry->i_disc_value : gnc_numeric_zero()); 01146 if (tax_value) 01147 *tax_value = (is_inv ? entry->i_tax_value : entry->b_tax_value); 01148 if (tax_values) 01149 *tax_values = (is_inv ? entry->i_tax_values : entry->b_tax_values); 01150 }
1.5.2