GnuCash  5.6-150-g038405b370+
Account.h
Go to the documentation of this file.
1 /********************************************************************\
2  * This program is free software; you can redistribute it and/or *
3  * modify it under the terms of the GNU General Public License as *
4  * published by the Free Software Foundation; either version 2 of *
5  * the License, or (at your option) any later version. *
6  * *
7  * This program is distributed in the hope that it will be useful, *
8  * but WITHOUT ANY WARRANTY; without even the implied warranty of *
9  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
10  * GNU General Public License for more details. *
11  * *
12  * You should have received a copy of the GNU General Public License*
13  * along with this program; if not, contact: *
14  * *
15  * Free Software Foundation Voice: +1-617-542-5942 *
16  * 51 Franklin Street, Fifth Floor Fax: +1-617-542-2652 *
17  * Boston, MA 02110-1301, USA gnu@gnu.org *
18  * *
19 \********************************************************************/
45 #ifndef XACC_ACCOUNT_H
46 #define XACC_ACCOUNT_H
47 #include "qof.h"
48 #include "gnc-engine.h"
49 #include "policy.h"
50 
51 #ifdef __cplusplus
52 extern "C" {
53 #endif
54 typedef gnc_numeric (*xaccGetBalanceFn)( const Account *account );
55 
56 typedef gnc_numeric (*xaccGetBalanceInCurrencyFn) (
57  const Account *account, const gnc_commodity *report_commodity,
58  gboolean include_children);
59 
60 typedef gnc_numeric (*xaccGetBalanceAsOfDateFn) (
61  Account *account, time64 date);
62 
63 typedef void (*AccountCb)(Account *a, gpointer data);
64 typedef gpointer (*AccountCb2)(Account *a, gpointer data);
65 
66 typedef struct
67 {
68  QofInstanceClass parent_class;
69 } AccountClass;
70 
71 /* --- type macros --- */
72 #define GNC_TYPE_ACCOUNT (gnc_account_get_type ())
73 #define GNC_ACCOUNT(o) \
74  (G_TYPE_CHECK_INSTANCE_CAST ((o), GNC_TYPE_ACCOUNT, Account))
75 #define GNC_ACCOUNT_CLASS(k) \
76  (G_TYPE_CHECK_CLASS_CAST((k), GNC_TYPE_ACCOUNT, AccountClass))
77 #define GNC_IS_ACCOUNT(o) \
78  (G_TYPE_CHECK_INSTANCE_TYPE ((o), GNC_TYPE_ACCOUNT))
79 #define GNC_IS_ACCOUNT_CLASS(k) \
80  (G_TYPE_CHECK_CLASS_TYPE ((k), GNC_TYPE_ACCOUNT))
81 #define GNC_ACCOUNT_GET_CLASS(o) \
82  (G_TYPE_INSTANCE_GET_CLASS ((o), GNC_TYPE_ACCOUNT, AccountClass))
83 
87 GType gnc_account_get_type(void);
88 
98 #ifdef __cplusplus
99 enum GNCAccountType
100 #else
101 typedef enum
102 #endif
103 {
164  /* bank account types */
173  ACCT_TYPE_LAST
174 #ifdef __cplusplus
175 };
176 #else
178 #endif
179 
180 
186 
189 
198  Account * xaccCloneAccount (const Account *source, QofBook *book);
199 
202  void xaccAccountBeginEdit (Account *account);
203 
206  void xaccAccountCommitEdit (Account *account);
207 
211  void xaccAccountDestroy (Account *account);
212 
216 
218  gboolean xaccAccountEqual(const Account *a, const Account* b,
219  gboolean check_guids);
220 
230  int xaccAccountOrder (const Account *account_1, const Account *account_2);
231 
234  /* ------------------ */
235 
243  const gchar *gnc_get_account_separator_string (void);
244  gunichar gnc_get_account_separator (void);
245  void gnc_set_account_separator (const gchar *separator);
246 
247  /*@ dependent @*/
248  Account *gnc_book_get_root_account(QofBook *book);
249  void gnc_book_set_root_account(QofBook *book, Account *root);
250 
252 #define xaccAccountGetGUID(X) qof_entity_get_guid(QOF_INSTANCE(X))
253 #define xaccAccountReturnGUID(X) (X ? *(qof_entity_get_guid(QOF_INSTANCE(X))) : *(guid_null()))
254 
258  /*@ dependent @*/ Account * xaccAccountLookup (const GncGUID *guid, QofBook *book);
259 #define xaccAccountLookupDirect(g,b) xaccAccountLookup(&(g),b)
260 
263  /* Tests account and descendants -- if all have no splits then return TRUE.
264  * Otherwise if any account or its descendants have split return FALSE.
265  */
266 
267  gboolean gnc_account_and_descendants_empty (Account *acc);
268 
281  gchar *gnc_account_name_violations_errmsg (const gchar *separator, GList* invalid_account_names);
282 
293  GList *gnc_account_list_name_violations (QofBook *book, const gchar *separator);
294 
295  /* ------------------ */
296 
300  QofBook *gnc_account_get_book(const Account *account);
302  void xaccAccountSetType (Account *account, GNCAccountType);
304  void xaccAccountSetName (Account *account, const char *name);
306  void xaccAccountSetCode (Account *account, const char *code);
308  void xaccAccountSetDescription (Account *account, const char *desc);
310  void xaccAccountSetColor (Account *account, const char *color);
312  void xaccAccountSetFilter (Account *account, const char *filter);
314  void xaccAccountSetSortOrder (Account *account, const char *sortorder);
316  void xaccAccountSetSortReversed (Account *account, gboolean sortreversed);
318  void xaccAccountSetNotes (Account *account, const char *notes);
319 
326  void xaccAccountSetOnlineID (Account *account, const char *id);
327 
329  void xaccAccountSetAssociatedAccount (Account *acc, const char *tag,
330  const Account *assoc_acct);
331 
333  void xaccAccountSetLastNum (Account *account, const char *num);
335  void gnc_account_set_policy (Account *account, GNCPolicy *policy);
340  GNCAccountType xaccAccountGetType (const Account *account);
343  gboolean xaccAccountIsPriced(const Account *acc);
344 
353  const gnc_numeric start_baln);
354 
363  const gnc_numeric start_baln);
364 
373  const gnc_numeric start_baln);
374 
380 
386 
396  void gnc_account_set_defer_bal_computation (Account *acc, gboolean defer);
397 
407  gboolean gnc_account_insert_split (Account *acc, Split *s);
408 
418  gboolean gnc_account_remove_split (Account *acc, Split *s);
419 
421  const char * xaccAccountGetName (const Account *account);
423  const char * xaccAccountGetCode (const Account *account);
425  const char * xaccAccountGetDescription (const Account *account);
427  const char * xaccAccountGetColor (const Account *account);
429  const char * xaccAccountGetFilter (const Account *account);
431  const char * xaccAccountGetSortOrder (const Account *account);
433  gboolean xaccAccountGetSortReversed (const Account *account);
435  const char * xaccAccountGetNotes (const Account *account);
436 
440  const char * xaccAccountGetOnlineID (const Account *account);
441 
443  Account* xaccAccountGetAssociatedAccount (const Account *acc, const char *tag);
445  const char * xaccAccountGetLastNum (const Account *account);
447  GNCPolicy *gnc_account_get_policy (Account *account);
450 
455 
460  void xaccAccountSortSplits (Account *acc, gboolean force);
461 
475  gchar * gnc_account_get_full_name (const Account *account);
476 
487  Account * xaccAccountGainsAccount (Account *acc, gnc_commodity *curr);
494  void dxaccAccountSetPriceSrc (Account *account, const char *src);
501  const char * dxaccAccountGetPriceSrc (const Account *account);
536  void xaccAccountSetCommodity (Account *account, gnc_commodity *comm);
537 
539  /*@ dependent @*/
540  gnc_commodity * xaccAccountGetCommodity (const Account *account);
541 
548  gnc_commodity * gnc_account_get_currency_or_parent(const Account* account);
549 
554  int xaccAccountGetCommoditySCU (const Account *account);
555 
558  int xaccAccountGetCommoditySCUi (const Account *account);
559 
564  void xaccAccountSetCommoditySCU (Account *account, int frac);
565 
567  void xaccAccountSetNonStdSCU (Account *account, gboolean flag);
568 
571  gboolean xaccAccountGetNonStdSCU (const Account *account);
580  gnc_numeric xaccAccountGetBalance (const Account *account);
583  gnc_numeric xaccAccountGetClearedBalance (const Account *account);
586  gnc_numeric xaccAccountGetReconciledBalance (const Account *account);
587  gnc_numeric xaccAccountGetPresentBalance (const Account *account);
588  gnc_numeric xaccAccountGetProjectedMinimumBalance (const Account *account);
590  gnc_numeric xaccAccountGetBalanceAsOfDate (Account *account,
591  time64 date);
592 
594  gnc_numeric xaccAccountGetReconciledBalanceAsOfDate (Account *account, time64 date);
595 
596  /* These two functions convert a given balance from one commodity to
597  another. The account argument is only used to get the Book, and
598  may have nothing to do with the supplied balance. Likewise, the
599  date argument is only used for commodity conversion and may have
600  nothing to do with supplied balance.
601 
602  Since they really have nothing to do with Accounts, there's
603  probably some better place for them, but where? gnc-commodity.h?
604  */
605  gnc_numeric xaccAccountConvertBalanceToCurrency(
606  const Account *account, /* for book */
607  gnc_numeric balance,
608  const gnc_commodity *balance_currency,
609  const gnc_commodity *new_currency);
610  gnc_numeric xaccAccountConvertBalanceToCurrencyAsOfDate(
611  const Account *account, /* for book */
612  gnc_numeric balance, const gnc_commodity *balance_currency,
613  const gnc_commodity *new_currency, time64 date);
614 
615  /* These functions get some type of balance in the desired commodity.
616  'report_commodity' may be NULL to use the account's commodity. */
617  gnc_numeric xaccAccountGetBalanceInCurrency (
618  const Account *account, const gnc_commodity *report_commodity,
619  gboolean include_children);
620  gnc_numeric xaccAccountGetClearedBalanceInCurrency (
621  const Account *account, const gnc_commodity *report_commodity,
622  gboolean include_children);
623  gnc_numeric xaccAccountGetReconciledBalanceInCurrency (
624  const Account *account, const gnc_commodity *report_commodity,
625  gboolean include_children);
626  gnc_numeric xaccAccountGetPresentBalanceInCurrency (
627  const Account *account, const gnc_commodity *report_commodity,
628  gboolean include_children);
629  gnc_numeric xaccAccountGetProjectedMinimumBalanceInCurrency (
630  const Account *account, const gnc_commodity *report_commodity,
631  gboolean include_children);
632 
636  Account *acc, time64 date, gnc_commodity *report_commodity,
637  gboolean include_children);
641  Account *account, time64 date, gnc_commodity *report_commodity,
642  gboolean include_children);
643 
644  gnc_numeric xaccAccountGetNoclosingBalanceChangeForPeriod (
645  Account *acc, time64 date1, time64 date2, gboolean recurse);
646  gnc_numeric xaccAccountGetNoclosingBalanceChangeInCurrencyForPeriod (
647  Account *acc, time64 date1, time64 date2, gboolean recurse);
648  gnc_numeric xaccAccountGetBalanceChangeForPeriod (
649  Account *acc, time64 date1, time64 date2, gboolean recurse);
650 
681  void gnc_account_append_child (Account *new_parent, Account *child);
682 
693  void gnc_account_remove_child (Account *parent, Account *child);
694 
703  /*@ dependent @*/
704  Account * gnc_account_get_parent (const Account *account);
705 
715  Account * gnc_account_get_root (Account *account);
716 
723  gboolean gnc_account_is_root (const Account *account);
724 
739  GList *gnc_account_get_children (const Account *account);
740 
744  GList *gnc_account_get_children_sorted (const Account *account);
745 
752  gint gnc_account_n_children (const Account *account);
753 
765  gint gnc_account_child_index (const Account *parent, const Account *child);
766 
777  Account *gnc_account_nth_child (const Account *parent, gint num);
778 
794  GList * gnc_account_get_descendants (const Account *account);
795 
814  GList *gnc_account_get_descendants_sorted (const Account *account);
815 
822  gint gnc_account_n_descendants (const Account *account);
823 
830  gint gnc_account_get_current_depth (const Account *account);
831 
839  gint gnc_account_get_tree_depth (const Account *account);
840 
857  void gnc_account_foreach_child (const Account *account,
858  AccountCb func, /*@ null @*/ gpointer user_data);
859 
873  void gnc_account_foreach_descendant (const Account *account,
874  AccountCb func, /*@ null @*/ gpointer user_data);
875 
891  gpointer gnc_account_foreach_descendant_until (const Account *account,
892  AccountCb2 func, /*@ null @*/ gpointer user_data);
893 
894 
907  void gnc_account_join_children (Account *to_parent, Account *from_parent);
908 
914  void gnc_account_merge_children (Account *parent);
915 
919  void xaccAccountSetReconcileChildrenStatus(Account *account, gboolean status);
920 
922  gboolean xaccAccountGetReconcileChildrenStatus(const Account *account);
923 
929  gboolean xaccAccountHasAncestor(const Account *acc, const Account *ancestor);
930 
945  Account *gnc_account_lookup_by_name (const Account *parent, const char *name);
946 
951  Account *gnc_account_lookup_by_full_name (const Account *any_account,
952  const gchar *name);
953 
958  const char *code);
959 
966  Account *gnc_account_lookup_by_opening_balance (Account *account, gnc_commodity *commodity);
967 
983  const char* name,
984  GNCAccountType acctype,
985  gnc_commodity* commodity);
988  /* ------------------ */
989 
998  const char * xaccAccountTypeEnumAsString (GNCAccountType type);
1004  gboolean xaccAccountStringToType (const char* str, GNCAccountType *type);
1010  GNCAccountType xaccAccountStringToEnum (const char* str);
1011 
1015  const char * xaccAccountGetTypeStr (GNCAccountType type);
1016 
1021 
1024 
1027  gboolean xaccAccountTypesCompatible (GNCAccountType parent_type,
1028  GNCAccountType child_type);
1029 
1032  guint32 xaccAccountTypesValid(void);
1033 
1038 
1042 
1043 
1048 
1052 
1053 
1056  /* ------------------ */
1057 
1065 #define xaccAccountInsertSplit(acc, s) xaccSplitSetAccount((s), (acc))
1066 
1078  SplitList* xaccAccountGetSplitList (const Account *account);
1079 
1080  size_t xaccAccountGetSplitsSize (const Account *account);
1081 
1084  void xaccAccountMoveAllSplits (Account *accfrom, Account *accto);
1085 
1114  gint xaccAccountForEachTransaction(const Account *account,
1115  TransactionCallback proc,
1116  void *data);
1117 
1119  Transaction * xaccAccountFindTransByDesc(const Account *account,
1120  const char *description);
1121 
1123  Split * xaccAccountFindSplitByDesc(const Account *account,
1124  const char *description);
1125 
1128  /* ------------------ */
1129 
1138  void xaccAccountInsertLot (Account *, GNCLot *);
1139  void xaccAccountRemoveLot (Account *, GNCLot *);
1140 
1149  LotList* xaccAccountGetLotList (const Account *account);
1150 
1157  gpointer xaccAccountForEachLot(
1158  const Account *acc,
1159  gpointer (*proc)(GNCLot *lot, gpointer user_data), /*@ null @*/ gpointer user_data);
1160 
1161 
1167  LotList * xaccAccountFindOpenLots (const Account *acc,
1168  gboolean (*match_func)(GNCLot *lot,
1169  gpointer user_data),
1170  /*@ null @*/ gpointer user_data, GCompareFunc sort_func);
1171 
1173  /* ------------------ */
1174 
1179  gboolean xaccAccountGetReconcileLastDate (const Account *account,
1180  time64 *last_date);
1182  void xaccAccountSetReconcileLastDate (Account *account, time64 last_date);
1183 
1185  gboolean xaccAccountGetReconcileLastInterval (const Account *account,
1186  int *months, int *days);
1189  int months, int days);
1191  gboolean xaccAccountGetReconcilePostponeDate (const Account *account,
1192  time64 *postpone_date);
1195  time64 postpone_date);
1196 
1198  gboolean xaccAccountGetReconcilePostponeBalance (const Account *account,
1199  gnc_numeric *balance);
1202  gnc_numeric balance);
1203 
1219  gboolean xaccAccountGetHigherBalanceLimit (const Account *account,
1220  gnc_numeric *balance);
1221 
1228  void xaccAccountSetHigherBalanceLimit (Account *account, gnc_numeric balance);
1229 
1235 
1243  gboolean xaccAccountGetLowerBalanceLimit (const Account *account,
1244  gnc_numeric *balance);
1245 
1252  void xaccAccountSetLowerBalanceLimit (Account *account, gnc_numeric balance);
1253 
1259 
1266  gboolean xaccAccountGetIncludeSubAccountBalances (const Account *account);
1267 
1274  void xaccAccountSetIncludeSubAccountBalances (Account *account, gboolean include);
1278  typedef enum
1279  {
1280  PLACEHOLDER_NONE,
1281  PLACEHOLDER_THIS,
1282  PLACEHOLDER_CHILD,
1284 
1295  gboolean xaccAccountGetPlaceholder (const Account *account);
1296 
1303  void xaccAccountSetPlaceholder (Account *account, gboolean val);
1304 
1317  gboolean xaccAccountGetAppendText (const Account *account);
1318 
1327  void xaccAccountSetAppendText (Account *account, gboolean val);
1328 
1335  gboolean xaccAccountGetIsOpeningBalance (const Account *account);
1336 
1343  void xaccAccountSetIsOpeningBalance (Account *account, gboolean val);
1344 
1364  gboolean xaccAccountGetHidden (const Account *acc);
1365 
1373  void xaccAccountSetHidden (Account *acc, gboolean val);
1374 
1384  gboolean xaccAccountIsHidden (const Account *acc);
1397  gboolean xaccAccountGetAutoInterest (const Account *acc);
1398 
1405  void xaccAccountSetAutoInterest (Account *acc, gboolean val);
1406 
1415  gboolean xaccAccountGetTaxRelated (const Account *account);
1417  void xaccAccountSetTaxRelated (Account *account, gboolean tax_related);
1419  const char * xaccAccountGetTaxUSCode (const Account *account);
1421  void xaccAccountSetTaxUSCode (Account *account, const char *code);
1423  const char * xaccAccountGetTaxUSPayerNameSource (const Account *account);
1425  void xaccAccountSetTaxUSPayerNameSource (Account *account, const char *source);
1427  gint64 xaccAccountGetTaxUSCopyNumber (const Account *account);
1429  void xaccAccountSetTaxUSCopyNumber (Account *account, gint64 copy_number);
1437  const char *gnc_account_get_debit_string (GNCAccountType acct_type);
1439  const char *gnc_account_get_credit_string (GNCAccountType acct_type);
1440 
1453  void xaccAccountSetMark (Account *account, short mark);
1454 
1460  void xaccClearMark (Account *account, short val);
1461 
1464  void xaccClearMarkDown (Account *account, short val);
1512 
1518 
1524  gboolean xaccTransactionTraverse(Transaction *trans, int stage);
1525 
1540  unsigned int stage,
1541  TransactionCallback thunk,
1542  void *data);
1543 
1558  unsigned int stage,
1559  TransactionCallback thunk,
1560  void *data);
1561 
1594  TransactionCallback proc, void *data);
1595 
1603  time64 gnc_account_get_earliest_date (const Account* account);
1604 
1605  /* Look up an Account in the map non-Baysian
1606  */
1607  Account* gnc_account_imap_find_account (Account* acc, const char* category,
1608  const char *key);
1609 
1610  /* Look up an Account in the map non-Baysian, searching through the
1611  * import map data of all accounts. Returns first match.
1612  */
1613  Account* gnc_account_imap_find_any (QofBook *book, const char* category, const char *key);
1614 
1615  /* Store an Account in the map non Baysian
1616  */
1617  void gnc_account_imap_add_account (Account* acc, const char *category,
1618  const char *key, Account *added_acc);
1619 
1620  /* Remove a reference to an Account in the map non Baysian
1621  */
1622  void gnc_account_imap_delete_account(Account* acc, const char* category, const char* key);
1623 
1626  Account* gnc_account_imap_find_account_bayes (Account* acc, GList* tokens);
1627 
1630  void gnc_account_imap_add_account_bayes (Account* acc, GList* tokens,
1631  Account *added_acc);
1632 
1633  typedef struct imap_info
1634  {
1635  Account *source_account;
1636  Account *map_account;
1637  GList *list;
1638  char *head;
1639  char *category;
1640  char *match_string;
1641  char *count;
1642  }GncImapInfo;
1643 
1648 
1653 
1657  GList *gnc_account_imap_get_info (Account *acc, const char *category);
1658 
1662  gchar *gnc_account_get_map_entry (Account *acc, const char *head, const char *category);
1663 
1667  GncGUID *gnc_account_get_map_guid_entry (Account *acc, const char *head, const char *category);
1668 
1672  void gnc_account_delete_map_entry (Account *acc, char *head, char *category,
1673  char *match_string, gboolean empty);
1674 
1678 
1683 
1696  void DxaccAccountSetCurrency (Account *account, gnc_commodity *currency);
1697 
1701  gnc_commodity * DxaccAccountGetCurrency (const Account *account);
1702 
1710  void dxaccAccountSetQuoteTZ (Account *account, const char *tz);
1718  const char * dxaccAccountGetQuoteTZ (const Account *account);
1724 #define ACCOUNT_KVP "kvp"
1725 #define ACCOUNT_NAME_ "name"
1726 #define ACCOUNT_CODE_ "code"
1727 #define ACCOUNT_DESCRIPTION_ "desc"
1728 #define ACCOUNT_COLOR_ "color"
1729 #define ACCOUNT_FILTER_ "filter"
1730 #define ACCOUNT_SORT_ORDER_ "sort-order"
1731 #define ACCOUNT_SORT_REVERSED_ "sort-reversed"
1732 #define ACCOUNT_NOTES_ "notes"
1733 #define ACCOUNT_BALANCE_ "balance"
1734 #define ACCOUNT_NOCLOSING_ "noclosing"
1735 #define ACCOUNT_OPENING_BALANCE_ "opening-balance"
1736 #define ACCOUNT_CLEARED_ "cleared"
1737 #define ACCOUNT_RECONCILED_ "reconciled"
1738 #define ACCOUNT_PRESENT_ "present"
1739 #define ACCOUNT_FUTURE_MINIMUM_ "future-minimum"
1740 #define ACCOUNT_TAX_RELATED "tax-related-p"
1741 #define ACCOUNT_TYPE_ "account-type"
1742 #define ACCOUNT_SCU "smallest-commodity-unit"
1743 #define ACCOUNT_NSCU "non-standard-scu"
1744 #define ACCOUNT_PARENT "parent-account"
1745 
1750 #define ACCOUNT_MATCH_ALL_TYPE "account-match-all"
1751 
1752 #ifdef __cplusplus
1753  } /* extern "C" */
1754 #endif
1755 
1756 #endif /* XACC_ACCOUNT_H */
1757 
void xaccAccountSetType(Account *account, GNCAccountType)
Set the account's type.
Definition: Account.cpp:2418
Account * gnc_account_get_parent(const Account *account)
This routine returns a pointer to the parent of the specified account.
Definition: Account.cpp:2916
void xaccAccountSetFilter(Account *account, const char *filter)
Set the account's Filter.
Definition: Account.cpp:2600
void xaccAccountSetSortOrder(Account *account, const char *sortorder)
Set the account's Sort Order.
Definition: Account.cpp:2606
gint xaccAccountForEachTransaction(const Account *account, TransactionCallback proc, void *data)
The xaccAccountForEachTransaction() routine will traverse all of the transactions in account and call...
Definition: Account.cpp:5123
int xaccAccountTreeForEachTransaction(Account *acc, TransactionCallback proc, void *data)
Traverse all of the transactions in the given account group.
int gnc_account_tree_staged_transaction_traversal(const Account *account, unsigned int stage, TransactionCallback thunk, void *data)
gnc_account_tree_staged_transaction_traversal() calls thunk on each transaction in the group whose cu...
Definition: Account.cpp:5062
gboolean xaccAccountGetAutoInterest(const Account *acc)
Get the "auto interest" flag for an account.
Definition: Account.cpp:4148
const char * xaccAccountGetLastNum(const Account *account)
Get the last num field of an Account.
Definition: Account.cpp:4656
GNCAccountType xaccAccountTypeGetFundamental(GNCAccountType t)
Convenience function to return the fundamental type asset/liability/income/expense/equity given an ac...
Definition: Account.cpp:4468
gchar * gnc_account_get_map_entry(Account *acc, const char *head, const char *category)
Returns the text string pointed to by head and category for the Account, free the returned text...
Definition: Account.cpp:5705
GList LotList
GList of GNCLots.
Definition: gnc-engine.h:205
gboolean xaccAccountGetSortReversed(const Account *account)
Get the account's Sort Order direction.
Definition: Account.cpp:3349
guint32 xaccAccountTypesCompatibleWith(GNCAccountType type)
Return the bitmask of account types compatible with a given type.
Definition: Account.cpp:4340
void gnc_account_imap_info_destroy(GncImapInfo *)
Clean destructor for the imap_info structure of Bayesian mappings.
Definition: Account.cpp:5655
void gnc_account_append_child(Account *new_parent, Account *child)
This function will remove from the child account any pre-existing parent relationship, and will then add the account as a child of the new parent.
Definition: Account.cpp:2817
gpointer xaccAccountForEachLot(const Account *acc, gpointer(*proc)(GNCLot *lot, gpointer user_data), gpointer user_data)
The xaccAccountForEachLot() method will apply the function 'proc' to each lot in the account...
GList * gnc_account_get_descendants_sorted(const Account *account)
This function returns a GList containing all the descendants of the specified account, sorted at each level.
Definition: Account.cpp:3033
gint gnc_account_n_descendants(const Account *account)
Return the number of descendants of the specified account.
Definition: Account.cpp:2983
gint64 xaccAccountGetTaxUSCopyNumber(const Account *account)
Returns copy_number stored in KVP; if KVP doesn't exist or copy_number is zero, returns 1...
Definition: Account.cpp:4044
gboolean gnc_account_is_root(const Account *account)
This routine indicates whether the specified account is the root node of an account tree...
Definition: Account.cpp:2934
SplitList * xaccAccountGetSplitList(const Account *account)
The xaccAccountGetSplitList() routine returns a pointer to a GList of the splits in the account...
Definition: Account.cpp:3923
void xaccAccountSetAssociatedAccount(Account *acc, const char *tag, const Account *assoc_acct)
Set the account's associated account e.g.
Definition: Account.cpp:2650
gboolean xaccAccountGetNonStdSCU(const Account *account)
Return boolean, indicating whether this account uses a non-standard SCU.
Definition: Account.cpp:2755
int xaccAccountGetCommoditySCUi(const Account *account)
Return the 'internal' SCU setting.
Definition: Account.cpp:2719
gnc_commodity * DxaccAccountGetCurrency(const Account *account)
Definition: Account.cpp:3377
void gnc_account_foreach_descendant(const Account *account, AccountCb func, gpointer user_data)
This method will traverse all children of this accounts and their descendants, calling 'func' on each...
Definition: Account.cpp:3217
void xaccAccountSetNotes(Account *account, const char *notes)
Set the account's notes.
Definition: Account.cpp:2636
gboolean xaccAccountIsPriced(const Account *acc)
Returns true if the account is a stock, mutual fund or currency, otherwise false. ...
Definition: Account.cpp:4524
void gnc_account_delete_map_entry(Account *acc, char *head, char *category, char *match_string, gboolean empty)
Delete the entry for Account pointed to by head,category and match_string, if empty is TRUE then use ...
Definition: Account.cpp:5721
Expense accounts are used to denote expenses.
Definition: Account.h:143
const char * xaccAccountGetFilter(const Account *account)
Get the account's filter.
Definition: Account.cpp:3337
GNCAccountType xaccAccountGetType(const Account *account)
Returns the account's account type.
Definition: Account.cpp:3248
void xaccAccountSetMark(Account *account, short mark)
Set a mark on the account.
Definition: Account.cpp:2060
const char * xaccAccountGetOnlineID(const Account *account)
Get the account's online_id (see xaccAccountSetOnlineID).
Definition: Account.cpp:3361
int xaccAccountGetCommoditySCU(const Account *account)
Return the SCU for the account.
Definition: Account.cpp:2726
const char * xaccAccountGetCode(const Account *account)
Get the account's accounting code.
Definition: Account.cpp:3317
gboolean xaccAccountGetAppendText(const Account *account)
Get the "import-append-text" flag for an account.
Definition: Account.cpp:4104
void xaccAccountSetReconcileLastDate(Account *account, time64 last_date)
DOCUMENT ME!
Definition: Account.cpp:4557
STRUCTS.
Account * gnc_account_create_root(QofBook *book)
Create a new root level account.
Definition: Account.cpp:1283
void xaccAccountSetTaxRelated(Account *account, gboolean tax_related)
DOCUMENT ME!
Definition: Account.cpp:4014
Mutual Fund accounts will typically be shown in registers which show three columns: price...
Definition: Account.h:125
void xaccAccountSortSplits(Account *acc, gboolean force)
The xaccAccountSortSplits() routine will resort the account's splits if the sort is dirty...
Definition: Account.cpp:2002
void xaccAccountSetCode(Account *account, const char *code)
Set the account's accounting code.
Definition: Account.cpp:2459
gpointer gnc_account_foreach_descendant_until(const Account *account, AccountCb2 func, gpointer user_data)
This method will traverse all children of this accounts and their descendants, calling 'func' on each...
Definition: Account.cpp:3225
void gnc_account_set_policy(Account *account, GNCPolicy *policy)
Set the account's lot order policy.
Definition: Account.cpp:2106
void xaccAccountSetOnlineID(Account *account, const char *id)
Set the account's online_id, the identifier (e.g.
Definition: Account.cpp:2642
void xaccAccountSetReconcileLastInterval(Account *account, int months, int days)
DOCUMENT ME!
Definition: Account.cpp:4587
gboolean gnc_account_remove_split(Account *acc, Split *s)
Remove the given split from an account.
Definition: Account.cpp:1971
gnc_numeric xaccAccountGetBalanceAsOfDateInCurrency(Account *account, time64 date, gnc_commodity *report_commodity, gboolean include_children)
This function gets the balance at the end of the given date in the desired commodity.
Definition: Account.cpp:3825
guint32 xaccAccountTypesValid(void)
Returns the bitmask of the account type enums that are valid.
Definition: Account.cpp:4445
const char * xaccAccountTypeEnumAsString(GNCAccountType type)
Conversion routines for the account types to/from strings that are used in persistent storage...
Definition: Account.cpp:4220
stop here; the following types just aren't ready for prime time
Definition: Account.h:161
GList * gnc_account_list_name_violations(QofBook *book, const gchar *separator)
Runs through all the accounts and returns a list of account names that contain the provided separator...
Definition: Account.cpp:273
void xaccAccountSetHigherBalanceLimit(Account *account, gnc_numeric balance)
Set the higher balance limit for the account.
Definition: Account.cpp:4706
void xaccAccountInsertLot(Account *, GNCLot *)
The xaccAccountInsertLot() method will register the indicated lot with this account.
Definition: Account.cpp:2138
void xaccAccountMoveAllSplits(Account *accfrom, Account *accto)
The xaccAccountMoveAllSplits() routine reassigns each of the splits in accfrom to accto...
Definition: Account.cpp:2198
void gnc_account_set_sort_dirty(Account *acc)
Tell the account believes that the splits may be incorrectly sorted and need to be resorted...
Definition: Account.cpp:1882
The cash account type is used to denote a shoe-box or pillowcase stuffed with * cash.
Definition: Account.h:110
const char * gnc_account_get_debit_string(GNCAccountType acct_type)
Get the debit string associated with this account type.
Definition: Account.cpp:4064
void gnc_account_imap_add_account_bayes(Account *acc, GList *tokens, Account *added_acc)
Updates the imap for a given account using a list of tokens.
Definition: Account.cpp:5544
void xaccAccountSetLastNum(Account *account, const char *num)
Set the last num field of an Account.
Definition: Account.cpp:4665
gnc_numeric xaccAccountGetClearedBalance(const Account *account)
Get the current balance of the account, only including cleared transactions.
Definition: Account.cpp:3455
gboolean xaccAccountGetReconcilePostponeDate(const Account *account, time64 *postpone_date)
DOCUMENT ME!
Definition: Account.cpp:4597
Account used to record multiple commodity transactions.
Definition: Account.h:155
gboolean xaccAccountGetLowerBalanceLimit(const Account *account, gnc_numeric *balance)
Get the lower balance limit for the account.
Definition: Account.cpp:4699
void xaccAccountDestroy(Account *account)
The xaccAccountDestroy() routine can be used to get rid of an account.
Definition: Account.cpp:1588
gboolean xaccAccountIsHidden(const Account *acc)
Should this account be "hidden".
Definition: Account.cpp:4175
Account * gnc_account_lookup_by_name(const Account *parent, const char *name)
The gnc_account_lookup_by_name() subroutine fetches the account by name from the descendants of the s...
Definition: Account.cpp:3074
void gnc_account_remove_child(Account *parent, Account *child)
This function will remove the specified child account from the specified parent account.
Definition: Account.cpp:2879
int xaccAccountOrder(const Account *account_1, const Account *account_2)
The xaccAccountOrder() subroutine defines a sorting order on accounts.
Definition: Account.cpp:2356
Stock accounts will typically be shown in registers which show three columns: price, number of shares, and value.
Definition: Account.h:122
const char * xaccAccountGetColor(const Account *account)
Get the account's color.
Definition: Account.cpp:3331
Split * xaccAccountFindSplitByDesc(const Account *account, const char *description)
Returns a pointer to the split, not a copy.
Definition: Account.cpp:4881
gboolean xaccAccountIsAssetLiabType(GNCAccountType t)
Convenience function to check if the account is a valid Asset or Liability type, but not a business a...
Definition: Account.cpp:4454
void xaccClearMarkDown(Account *account, short val)
The xaccClearMarkDown will clear the mark only in this and in sub-accounts.
Definition: Account.cpp:2082
GList SplitList
GList of Split.
Definition: gnc-engine.h:207
GNCAccountType xaccAccountStringToEnum(const char *str)
Conversion routines for the account types to/from strings that are used in persistent storage...
Definition: Account.cpp:4291
bank account type – don't use this for now, see NUM_ACCOUNT_TYPES
Definition: Account.h:165
gchar * gnc_account_get_full_name(const Account *account)
The gnc_account_get_full_name routine returns the fully qualified name of the account using the given...
Definition: Account.cpp:3286
gnc_numeric xaccAccountGetReconciledBalanceAsOfDate(Account *account, time64 date)
Get the reconciled balance of the account at the end of the day of the date specified.
Definition: Account.cpp:3519
void xaccAccountSetPlaceholder(Account *account, gboolean val)
Set the "placeholder" flag for an account.
Definition: Account.cpp:4098
gboolean xaccAccountTypesCompatible(GNCAccountType parent_type, GNCAccountType child_type)
Return TRUE if accounts of type parent_type can have accounts of type child_type as children...
Definition: Account.cpp:4427
gnc_numeric xaccAccountGetNoclosingBalanceAsOfDateInCurrency(Account *acc, time64 date, gnc_commodity *report_commodity, gboolean include_children)
This function gets the balance at the end of the given date, ignoring closing entries, in the desired commodity.
Definition: Account.cpp:3835
gchar * gnc_account_name_violations_errmsg(const gchar *separator, GList *invalid_account_names)
Composes a translatable error message showing which account names clash with the current account sepa...
Definition: Account.cpp:235
void xaccAccountClearLowerBalanceLimit(Account *account)
Clear the lower balance limit for the account.
Definition: Account.cpp:4724
gboolean xaccTransactionTraverse(Transaction *trans, int stage)
xaccTransactionTraverse() checks the stage of the given transaction.
Definition: Account.cpp:5012
void xaccAccountSetColor(Account *account, const char *color)
Set the account's Color.
Definition: Account.cpp:2594
Transaction * xaccAccountFindTransByDesc(const Account *account, const char *description)
Returns a pointer to the transaction, not a copy.
Definition: Account.cpp:4894
void xaccAccountSetIncludeSubAccountBalances(Account *account, gboolean include)
Set whether to include balances of sub accounts.
Definition: Account.cpp:4736
void gnc_account_set_balance_dirty(Account *acc)
Tell the account that the running balances may be incorrect and need to be recomputed.
Definition: Account.cpp:1896
Income accounts are used to denote income.
Definition: Account.h:140
void gnc_account_foreach_child(const Account *account, AccountCb func, gpointer user_data)
This method will traverse the immediate children of this accounts, calling 'func' on each account...
Definition: Account.cpp:3206
Account * gnc_account_lookup_by_code(const Account *parent, const char *code)
The gnc_account_lookup_by_code() subroutine works like gnc_account_lookup_by_name, but uses the account code.
Definition: Account.cpp:3087
void gnc_account_tree_begin_staged_transaction_traversals(Account *acc)
gnc_account_tree_begin_staged_transaction_traversals() resets the traversal marker inside every trans...
Definition: Account.cpp:5027
void dxaccAccountSetPriceSrc(Account *account, const char *src)
Set a string that identifies the Finance::Quote backend that should be used to retrieve online prices...
Definition: Account.cpp:4808
void xaccAccountBeginStagedTransactionTraversals(const Account *account)
xaccAccountBeginStagedTransactionTraversals() resets the traversal marker for each transaction which ...
Definition: Account.cpp:5004
Implement Accounting Policy.
GNCPlaceholderType xaccAccountGetDescendantPlaceholder(const Account *account)
Returns PLACEHOLDER_NONE if account is NULL or neither account nor any descendant of account is a pla...
Definition: Account.cpp:4135
const char * xaccAccountGetDescription(const Account *account)
Get the account's description.
Definition: Account.cpp:3324
void gnc_account_set_start_reconciled_balance(Account *acc, const gnc_numeric start_baln)
This function will set the starting reconciled commodity balance for this account.
Definition: Account.cpp:3435
void gnc_account_delete_all_bayes_maps(Account *acc)
Delete all bayes entries for Account.
Definition: Account.cpp:5748
const char * dxaccAccountGetQuoteTZ(const Account *account)
Get the timezone to be used when interpreting the results from a given Finance::Quote backend...
Definition: Account.cpp:4844
time64 gnc_account_get_earliest_date(const Account *account)
Returns the date of the earliest split in the account, or INT64_MAX.
Definition: Account.cpp:5100
GType gnc_account_get_type(void)
Returns the GType type system description of the Account class.
line of credit – don't use this for now, see NUM_ACCOUNT_TYPES
Definition: Account.h:171
void xaccAccountClearReconcilePostpone(Account *account)
DOCUMENT ME!
Definition: Account.cpp:4647
const char * xaccAccountGetTaxUSPayerNameSource(const Account *account)
DOCUMENT ME!
Definition: Account.cpp:4032
void gnc_account_reset_convert_bayes_to_flat(void)
Reset the flag that indicates the function imap_convert_bayes_to_flat has been run.
Definition: Account.cpp:5466
GList * gnc_account_get_children_sorted(const Account *account)
This routine returns a GList of all children accounts of the specified account, ordered by xaccAccoun...
Definition: Account.cpp:2950
The bank account type denotes a savings or checking account held at a bank.
Definition: Account.h:107
LotList * xaccAccountGetLotList(const Account *account)
The xaccAccountGetLotList() routine returns a list of all lots in this account.
Definition: Account.cpp:3948
void xaccAccountRecomputeBalance(Account *)
The following recompute the partial balances (stored with the transaction) and the total balance...
Definition: Account.cpp:2277
GList * gnc_account_imap_get_info_bayes(Account *acc)
Returns a GList of structure imap_info of all Bayesian mappings for required Account.
Definition: Account.cpp:5665
GList * gnc_account_imap_get_info(Account *acc, const char *category)
Returns a GList of structure imap_info of all Non Bayesian mappings for required Account.
Definition: Account.cpp:5676
Account * gnc_account_lookup_by_full_name(const Account *any_account, const gchar *name)
The gnc_account_lookup_full_name() subroutine works like gnc_account_lookup_by_name, but uses fully-qualified names using the given separator.
Definition: Account.cpp:3144
gboolean gnc_account_get_defer_bal_computation(Account *acc)
Get the account's flag for deferred balance computation.
Definition: Account.cpp:1922
void xaccAccountSetReconcilePostponeDate(Account *account, time64 postpone_date)
DOCUMENT ME!
Definition: Account.cpp:4612
A/P account type.
Definition: Account.h:151
const char * xaccAccountGetTaxUSCode(const Account *account)
DOCUMENT ME!
Definition: Account.cpp:4020
gboolean xaccAccountIsAPARType(GNCAccountType t)
Convenience function to check if the account is a valid business account type (meaning an Accounts Pa...
Definition: Account.cpp:4500
bank account type – don't use this for now, see NUM_ACCOUNT_TYPES
Definition: Account.h:167
gboolean xaccAccountStringToType(const char *str, GNCAccountType *type)
Conversion routines for the account types to/from strings that are used in persistent storage...
Definition: Account.cpp:4257
void xaccAccountSetIsOpeningBalance(Account *account, gboolean val)
Set the "opening-balance" flag for an account.
Definition: Account.cpp:4126
void xaccAccountSetReconcilePostponeBalance(Account *account, gnc_numeric balance)
DOCUMENT ME!
Definition: Account.cpp:4637
gboolean xaccAccountEqual(const Account *a, const Account *b, gboolean check_guids)
Compare two accounts for equality - this is a deep compare.
Definition: Account.cpp:1664
gboolean xaccAccountGetTaxRelated(const Account *account)
DOCUMENT ME!
Definition: Account.cpp:4008
void gnc_account_set_start_cleared_balance(Account *acc, const gnc_numeric start_baln)
This function will set the starting cleared commodity balance for this account.
Definition: Account.cpp:3422
Account * xaccCloneAccount(const Account *source, QofBook *book)
The xaccCloneAccount() routine makes a simple copy of the indicated account, placing it in the indica...
Definition: Account.cpp:1300
gnc_numeric xaccAccountGetReconciledBalance(const Account *account)
Get the current balance of the account, only including reconciled transactions.
Definition: Account.cpp:3462
asset (and liability) accounts indicate generic, generalized accounts that are none of the above...
Definition: Account.h:116
gint gnc_account_n_children(const Account *account)
Return the number of children of the specified account.
Definition: Account.cpp:2957
void gnc_account_join_children(Account *to_parent, Account *from_parent)
The gnc_account_join_children() subroutine will move (reparent) all child accounts from the from_pare...
Definition: Account.cpp:4904
gnc_numeric xaccAccountGetBalanceAsOfDate(Account *account, time64 date)
Get the balance of the account at the end of the day before the date specified.
Definition: Account.cpp:3507
All type declarations for the whole Gnucash engine.
gnc_numeric xaccAccountGetBalance(const Account *account)
Get the current balance of the account, which may include future splits.
Definition: Account.cpp:3448
gboolean xaccAccountGetReconcileLastDate(const Account *account, time64 *last_date)
DOCUMENT ME!
Definition: Account.cpp:4539
void dxaccAccountSetQuoteTZ(Account *account, const char *tz)
Set the timezone to be used when interpreting the results from a given Finance::Quote backend...
Definition: Account.cpp:4833
The currency account type indicates that the account is a currency trading account.
Definition: Account.h:129
void xaccAccountSetCommoditySCU(Account *account, int frac)
Set the SCU for the account.
Definition: Account.cpp:2703
GNCAccountType
The account types are used to determine how the transaction data in the account is displayed...
Definition: Account.h:101
gnc_commodity * gnc_account_get_currency_or_parent(const Account *account)
Returns a gnc_commodity that is a currency, suitable for being a Transaction's currency.
Definition: Account.cpp:3396
Account * xaccAccountGetAssociatedAccount(const Account *acc, const char *tag)
Get the account's associated account e.g.
Definition: Account.cpp:3368
gboolean xaccAccountGetHidden(const Account *acc)
Get the "hidden" flag for an account.
Definition: Account.cpp:4163
void xaccAccountSetAppendText(Account *account, gboolean val)
Set the "import-append-text" flag for an account.
Definition: Account.cpp:4110
gboolean gnc_account_insert_split(Account *acc, Split *s)
Insert the given split from an account.
Definition: Account.cpp:1941
GList * gnc_account_get_descendants(const Account *account)
This routine returns a flat list of all of the accounts that are descendants of the specified account...
Definition: Account.cpp:3025
void xaccAccountSetAutoInterest(Account *acc, gboolean val)
Set the "auto interest" flag for an account.
Definition: Account.cpp:4154
void xaccAccountSetTaxUSCode(Account *account, const char *code)
DOCUMENT ME!
Definition: Account.cpp:4026
GNCPlaceholderType
DOCUMENT ME!
Definition: Account.h:1278
gboolean xaccAccountGetIsOpeningBalance(const Account *account)
Get the "opening-balance" flag for an account.
Definition: Account.cpp:4116
QofBook reference.
Definition: qofbook-p.hpp:46
guint32 xaccParentAccountTypesCompatibleWith(GNCAccountType type)
Return the bitmask of parent account types compatible with a given type.
Definition: Account.cpp:4380
gboolean xaccAccountGetReconcileChildrenStatus(const Account *account)
DOCUMENT ME!
Definition: Account.cpp:4868
gboolean xaccAccountGetReconcileLastInterval(const Account *account, int *months, int *days)
DOCUMENT ME!
Definition: Account.cpp:4566
gboolean xaccAccountGetIncludeSubAccountBalances(const Account *account)
Get whether to include balances of sub accounts.
Definition: Account.cpp:4730
Not a type.
Definition: Account.h:104
const char * dxaccAccountGetPriceSrc(const Account *account)
Get a string that identifies the Finance::Quote backend that should be used to retrieve online prices...
Definition: Account.cpp:4820
liability (and asset) accounts indicate generic, generalized accounts that are none of the above...
Definition: Account.h:119
const char * gnc_account_get_credit_string(GNCAccountType acct_type)
Get the credit string associated with this account type.
Definition: Account.cpp:4076
void xaccAccountDestroyAllTransactions(Account *acc)
Destroy all of the transactions that parent splits in an account.
Definition: Account.cpp:1598
GList * gnc_account_get_children(const Account *account)
This routine returns a GList of all children accounts of the specified account.
Definition: Account.cpp:2941
void xaccAccountSetHidden(Account *acc, gboolean val)
Set the "hidden" flag for an account.
Definition: Account.cpp:4169
void xaccAccountBeginEdit(Account *account)
The xaccAccountBeginEdit() subroutine is the first phase of a two-phase-commit wrapper for account up...
Definition: Account.cpp:1473
gboolean xaccAccountHasAncestor(const Account *acc, const Account *ancestor)
Returns true if the account is 'ancestor' or has 'ancestor' as an ancestor.
Definition: Account.cpp:4197
gnc_commodity * xaccAccountGetCommodity(const Account *account)
Get the account's commodity.
Definition: Account.cpp:3389
gboolean xaccAccountGetPlaceholder(const Account *account)
Get the "placeholder" flag for an account.
Definition: Account.cpp:4092
gint gnc_account_get_current_depth(const Account *account)
Return the number of levels of this account below the root account.
Definition: Account.cpp:2991
A/R account type.
Definition: Account.h:149
void xaccAccountSetSortReversed(Account *account, gboolean sortreversed)
Set the account's Sort Order direction.
Definition: Account.cpp:2612
bank account type – don't use this for now, see NUM_ACCOUNT_TYPES
Definition: Account.h:169
void xaccAccountSetLowerBalanceLimit(Account *account, gnc_numeric balance)
Set the lower balance limit for the account.
Definition: Account.cpp:4712
Account * xaccAccountGainsAccount(Account *acc, gnc_commodity *curr)
Retrieve the gains account used by this account for the indicated currency, creating and recording a ...
Definition: Account.cpp:4790
gboolean xaccAccountGetHigherBalanceLimit(const Account *account, gnc_numeric *balance)
Get the higher balance limit for the account.
Definition: Account.cpp:4692
Account * gnc_account_nth_child(const Account *parent, gint num)
Return the n'th child account of the specified parent account.
Definition: Account.cpp:2974
Account * xaccMallocAccount(QofBook *book)
Constructor.
Definition: Account.cpp:1269
gint gnc_account_child_index(const Account *parent, const Account *child)
Return the index of the specified child within the list of the parent's children. ...
Definition: Account.cpp:2964
gint64 time64
Most systems that are currently maintained, including Microsoft Windows, BSD-derived Unixes and Linux...
Definition: gnc-date.h:87
void xaccAccountSetTaxUSPayerNameSource(Account *account, const char *source)
DOCUMENT ME!
Definition: Account.cpp:4038
void xaccAccountSetDescription(Account *account, const char *desc)
Set the account's description.
Definition: Account.cpp:2478
void DxaccAccountSetCurrency(Account *account, gnc_commodity *currency)
Definition: Account.cpp:2766
void gnc_account_set_start_balance(Account *acc, const gnc_numeric start_baln)
This function will set the starting commodity balance for this account.
Definition: Account.cpp:3410
void xaccAccountSetNonStdSCU(Account *account, gboolean flag)
Set the flag indicating that this account uses a non-standard SCU.
Definition: Account.cpp:2739
LotList * xaccAccountFindOpenLots(const Account *acc, gboolean(*match_func)(GNCLot *lot, gpointer user_data), gpointer user_data, GCompareFunc sort_func)
Find a list of open lots that match the match_func.
Definition: Account.cpp:3955
Account * gnc_account_get_root(Account *account)
This routine returns the root account of the account tree that the specified account belongs to...
Definition: Account.cpp:2923
Account * gnc_account_lookup_by_opening_balance(Account *account, gnc_commodity *commodity)
Find the opening balance account for the currency.
Definition: Account.cpp:3102
void xaccAccountClearHigherBalanceLimit(Account *account)
Clear the higher balance limit for the account.
Definition: Account.cpp:4718
void gnc_account_set_defer_bal_computation(Account *acc, gboolean defer)
Set the defer balance flag.
Definition: Account.cpp:1909
const char * xaccAccountGetName(const Account *account)
Get the account's name.
Definition: Account.cpp:3270
Equity account is used to balance the balance sheet.
Definition: Account.h:146
const char * xaccAccountGetTypeStr(GNCAccountType type)
The xaccAccountGetTypeStr() routine returns a string suitable for use in the GUI/Interface.
Definition: Account.cpp:4330
const char * xaccAccountGetSortOrder(const Account *account)
Get the account's Sort Order.
Definition: Account.cpp:3343
Not a type.
Definition: Account.h:105
The type used to store guids in C.
Definition: guid.h:75
int xaccAccountStagedTransactionTraversal(const Account *a, unsigned int stage, TransactionCallback thunk, void *data)
xaccAccountStagedTransactionTraversal() calls thunk on each transaction in account a whose current ma...
Definition: Account.cpp:5035
void xaccAccountCommitEdit(Account *account)
ThexaccAccountCommitEdit() subroutine is the second phase of a two-phase-commit wrapper for account u...
Definition: Account.cpp:1514
void xaccClearMark(Account *account, short val)
Get the mark set by xaccAccountSetMark short xaccAccountGetMark (const Account *account);.
Definition: Account.cpp:2071
void xaccAccountSetName(Account *account, const char *name)
Set the account's name.
Definition: Account.cpp:2439
The hidden root account of an account tree.
Definition: Account.h:153
GncGUID * gnc_account_get_map_guid_entry(Account *acc, const char *head, const char *category)
Returns the guid pointed to by head and category for the Account, free the returned guid...
Definition: Account.cpp:5713
GNCPolicy * gnc_account_get_policy(Account *account)
Get the account's lot order policy.
Definition: Account.cpp:2098
void gnc_account_merge_children(Account *parent)
The gnc_account_merge_children() subroutine will go through an account, merging all child accounts th...
Definition: Account.cpp:4926
gboolean xaccAccountIsEquityType(GNCAccountType t)
Convenience function to check if the account is a valid Equity type.
Definition: Account.cpp:4512
void xaccAccountSetReconcileChildrenStatus(Account *account, gboolean status)
DOCUMENT ME!
Definition: Account.cpp:4855
The Credit card account is used to denote credit (e.g.
Definition: Account.h:113
const gchar * gnc_get_account_separator_string(void)
Returns the account separation character chosen by the user.
Definition: Account.cpp:205
void xaccAccountSetCommodity(Account *account, gnc_commodity *comm)
Set the account's commodity.
Definition: Account.cpp:2659
GList * gnc_account_lookup_by_type_and_commodity(Account *root, const char *name, GNCAccountType acctype, gnc_commodity *commodity)
Find a direct child account matching name, GNCAccountType, and/or commodity.
Definition: Account.cpp:3169
const char * xaccAccountGetNotes(const Account *account)
Get the account's notes.
Definition: Account.cpp:3355
gboolean xaccAccountGetReconcilePostponeBalance(const Account *account, gnc_numeric *balance)
DOCUMENT ME!
Definition: Account.cpp:4621
gint gnc_account_get_tree_depth(const Account *account)
Return the number of levels of descendants accounts below the specified account.
Definition: Account.cpp:3010
Account * gnc_account_imap_find_account_bayes(Account *acc, GList *tokens)
Look up an Account in the map using Baysian.
Definition: Account.cpp:5498
Account * xaccAccountLookup(const GncGUID *guid, QofBook *book)
The xaccAccountLookup() subroutine will return the account associated with the given id...
Definition: Account.cpp:2048
void xaccAccountSetTaxUSCopyNumber(Account *account, gint64 copy_number)
Saves copy_number in KVP if it is greater than 1; if copy_number is zero, deletes KVP...
Definition: Account.cpp:4051