Main Page   Modules   Alphabetical List   Data Structures   File List   Data Fields   Globals  

Account.h File Reference

Account handling public routines. More...

#include "gnc-book.h"
#include "GNCId.h"
#include "gnc-engine.h"
#include "kvp_frame.h"

Account parameter names

#define ACCOUNT_KVP   "kvp"
#define ACCOUNT_NAME_   "name"
#define ACCOUNT_CODE_   "code"
#define ACCOUNT_DESCRIPTION_   "desc"
#define ACCOUNT_NOTES_   "notes"
#define ACCOUNT_BALANCE_   "balance"
#define ACCOUNT_CLEARED_BALANCE   "cleared-balance"
#define ACCOUNT_RECONCILED_BALANCE   "reconciled-balance"
#define ACCOUNT_TAX_RELATED   "tax-related-p"

Account Placeholder getters/setters

enum  GNCPlaceholderType { PLACEHOLDER_NONE, PLACEHOLDER_THIS, PLACEHOLDER_CHILD }
gboolean xaccAccountGetPlaceholder (Account *account)
void xaccAccountSetPlaceholder (Account *account, gboolean option)
GNCPlaceholderType xaccAccountGetDescendantPlaceholder (Account *account)

Account Conversion routines

Conversion routines for the account types to/from strings that are used in persistant storage, communications. These strings should *not& be translated to the local language. Typical converstion is INCOME -> "INCOME".

char * xaccAccountTypeEnumAsString (GNCAccountType type)
gboolean xaccAccountStringToType (const char *str, GNCAccountType *type)
GNCAccountType xaccAccountStringToEnum (const char *str)

Account Constructors/Destructors and Edit/Commit

Account * xaccMallocAccount (GNCBook *book)
Account * xaccCloneAccount (const Account *from, GNCBook *book)
Account * xaccCloneAccountSimple (const Account *from, GNCBook *book)
void xaccAccountBeginEdit (Account *account)
void xaccAccountCommitEdit (Account *account)
void xaccAccountDestroy (Account *account)

Account kvp_frame getters/setters

kvp_frame * xaccAccountGetSlots (Account *account)
void xaccAccountSetSlots_nc (Account *account, kvp_frame *frame)

Account GUID subroutines

const GUID * xaccAccountGetGUID (Account *account)
GUID xaccAccountReturnGUID (Account *account)
Account * xaccAccountLookup (const GUID *guid, GNCBook *book)
Account * xaccAccountLookupDirect (GUID guid, GNCBook *book)

Account general setters/getters

void xaccAccountSetType (Account *account, GNCAccountType)
void xaccAccountSetName (Account *account, const char *name)
void xaccAccountSetCode (Account *account, const char *code)
void xaccAccountSetDescription (Account *account, const char *desc)
void xaccAccountSetNotes (Account *account, const char *notes)
void xaccAccountSetLastNum (Account *account, const char *num)
GNCAccountType xaccAccountGetType (Account *account)
const char * xaccAccountGetName (Account *account)
const char * xaccAccountGetCode (Account *account)
const char * xaccAccountGetDescription (Account *account)
const char * xaccAccountGetNotes (Account *account)
const char * xaccAccountGetLastNum (Account *account)

Account Deprecated currency/security access routines.

Deprecated:
The current API associates only one thing with an account: the 'commodity'. Use xaccAccountGetCommodity() to fetch it.


void DxaccAccountSetCurrency (Account *account, gnc_commodity *currency, GNCBook *book)
void DxaccAccountSetSecurity (Account *account, gnc_commodity *security, GNCBook *book)
gnc_commodity * DxaccAccountGetCurrency (Account *account, GNCBook *book)
gnc_commodity * DxaccAccountGetSecurity (Account *account, GNCBook *book)
void DxaccAccountSetCurrencySCU (Account *account, int frac)
int DxaccAccountGetCurrencySCU (Account *account)

Account Children and Parent getters/setters

AccountGroup * xaccAccountGetChildren (Account *account)
AccountGroup * xaccAccountGetParent (Account *account)
Account * xaccAccountGetParentAccount (Account *account)
GList * xaccAccountGetDescendants (Account *account)
void xaccAccountSetReconcileChildrenStatus (Account *account, gboolean status)
gboolean xaccAccountGetReconcileChildrenStatus (Account *account)

Account Tax related getters/setters

gboolean xaccAccountGetTaxRelated (Account *account)
void xaccAccountSetTaxRelated (Account *account, gboolean tax_related)
const char * xaccAccountGetTaxUSCode (Account *account)
void xaccAccountSetTaxUSCode (Account *account, const char *code)
const char * xaccAccountGetTaxUSPayerNameSource (Account *account)
void xaccAccountSetTaxUSPayerNameSource (Account *account, const char *source)

Account Reconciliation information getters/setters

gboolean xaccAccountGetReconcileLastDate (Account *account, time_t *last_date)
void xaccAccountSetReconcileLastDate (Account *account, time_t last_date)
gboolean xaccAccountGetReconcileLastInterval (Account *account, int *months, int *days)
void xaccAccountSetReconcileLastInterval (Account *account, int months, int days)
gboolean xaccAccountGetReconcilePostponeDate (Account *account, time_t *postpone_date)
void xaccAccountSetReconcilePostponeDate (Account *account, time_t postpone_date)
gboolean xaccAccountGetReconcilePostponeBalance (Account *account, gnc_numeric *balance)
void xaccAccountSetReconcilePostponeBalance (Account *account, gnc_numeric balance)
void xaccAccountClearReconcilePostpone (Account *account)

Account AutoInterest getters/setters

Note:
FIXME: What is this?


gboolean xaccAccountGetAutoInterestXfer (Account *account, gboolean default_value)
void xaccAccountSetAutoInterestXfer (Account *account, gboolean option)

Defines

#define ACCOUNT_MATCH_ALL_TYPE   "account-match-all"

Typedefs

typedef gpointer(* SplitCallback )(Split *s, gpointer data)
typedef gboolean(* TransactionCallback )(Transaction *t, void *data)

Enumerations

enum  GNCAccountType {
  BAD_TYPE = -1, NO_TYPE = -1, BANK = 0, CASH = 1,
  CREDIT = 3, ASSET = 2, LIABILITY = 4, STOCK = 5,
  MUTUAL = 6, CURRENCY = 7, INCOME = 8, EXPENSE = 9,
  EQUITY = 10, RECEIVABLE = 11, PAYABLE = 12, NUM_ACCOUNT_TYPES = 13,
  CHECKING = 13, SAVINGS = 14, MONEYMRKT = 15, CREDITLINE = 16
}

Functions

const char * xaccAccountGetTypeStr (GNCAccountType type)
GNCAccountType xaccAccountGetTypeFromStr (const gchar *str)
gboolean xaccAccountTypesCompatible (GNCAccountType parent_type, GNCAccountType child_type)
GNCBook * xaccAccountGetBook (Account *account)
Account * xaccAccountLookupTwin (Account *acc, GNCBook *book)
gboolean xaccAccountEqual (Account *a, Account *b, gboolean check_guids)
void xaccAccountInsertLot (Account *, GNCLot *)
void xaccAccountRemoveLot (Account *, GNCLot *)
void xaccAccountInsertSplit (Account *account, Split *split)
void xaccAccountFixSplitDateOrder (Account *account, Split *split)
void xaccTransFixSplitDateOrder (Transaction *trans)
int xaccAccountOrder (Account **account_1, Account **account_2)
void xaccAccountDeleteOldData (Account *account)
SplitList * xaccAccountGetSplitList (Account *account)
LotList * xaccAccountGetLotList (Account *account)
LotList * xaccAccountFindOpenLots (Account *acc, gboolean(*match_func)(GNCLot *lot, gpointer user_data), gpointer user_data, GCompareFunc sort_func)
char * xaccAccountGetFullName (Account *account, const char separator)
gboolean xaccAccountHasAncestor (Account *account, Account *ancestor)
void xaccAccountSetMark (Account *account, short mark)
short xaccAccountGetMark (Account *account)
void xaccClearMark (Account *account, short val)
void xaccClearMarkDown (Account *account, short val)
void xaccClearMarkDownGr (AccountGroup *group, short val)
void xaccAccountSetPriceSrc (Account *account, const char *src)
const char * xaccAccountGetPriceSrc (Account *account)
void xaccAccountSetQuoteTZ (Account *account, const char *tz)
const char * xaccAccountGetQuoteTZ (Account *account)
gpointer xaccAccountForEachSplit (Account *account, SplitCallback, gpointer data)
gboolean xaccAccountForEachTransaction (Account *account, TransactionCallback, void *data)
gboolean xaccAccountVisitUnvisitedTransactions (Account *account, TransactionCallback, void *data, GHashTable *visited_txns)
Transaction * xaccAccountFindTransByDesc (Account *account, const char *description)
Split * xaccAccountFindSplitByDesc (Account *account, const char *description)


Detailed Description

Account handling public routines.

Author:
Copyright (C) 1997 Robin D. Clark , Copyright (C) 1997-2002 Linas Vepstas <linas@linas.org>

Generated on Sun Feb 9 23:48:07 2003 for GnuCash by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002