Yep, thanks for digging the gnc-transaction-gda.c code up. This is
sort of what I was looking for:

107     static col_cvt_t split_col_table[] =
108     {
109         { "guid",            CT_GUID,     0, COL_NNUL|COL_PKEY,    NULL,
110                 get_guid, set_guid },
111         { "tx_guid",        CT_GUID,     0, COL_NNUL,    NULL,
112                 get_split_tx_guid, set_split_tx_guid },
113         { "memo",            CT_STRING,     SPLIT_MAX_MEMO_LEN,
COL_NNUL,    SPLIT_MEMO },
114         { "action",            CT_STRING,     SPLIT_MAX_ACTION_LEN,
COL_NNUL,    SPLIT_ACTION },
115         { "reconcile_state", CT_STRING,     1, COL_NNUL,    NULL,
116                 get_split_reconcile_state, set_split_reconcile_state },
117         { "reconcile_date",    CT_TIMESPEC, 0, COL_NNUL,    NULL,
118                 get_split_reconcile_date, set_split_reconcile_date },
119         { "value",            CT_NUMERIC,     0, COL_NNUL,    NULL,
120                 get_split_value, set_split_value },
121         { "quantity",        CT_NUMERIC,     0, COL_NNUL,    NULL,
122                 get_split_quantity, set_split_quantity },
123         { "account_guid",    CT_GUID,     0, COL_NNUL,    NULL,
124                 get_split_account_guid, set_split_account_guid },
125         { NULL }
126     };
127     
128     static col_cvt_t guid_col_table[] =
129     {
130         { "tx_guid", CT_GUID, 0, 0, NULL, get_guid, set_guid },
131         { NULL }
132     };

Am I correct in my assumption that this code isn't actually used with
the current, non-SQL,  backend? I did a little reading on the GnuCash
backend (QOF) and it seemed to me that there was a fair amount of
abstraction going on.

My feelings about the "bookkeeping model" are that given its maturity
(several hundred years old now) and simplicity, there isn't really
much use to "variations on a theme", so it should be feasible to have
a agnostic backend. That sounds kind of funny. :-)

Anyway, along these lines, I've been reading the xbrl specs (very good
stuff) for inspiration in the pbooks data model. They've done a great
job of modeling the bookkeeping and accounting concepts and although
I've merged some of their XML schema into the pbooks SQL model, it
would be nice to have some more convergence on these well defined data
structures.

Thoughts? I'm doing a bunch of work on pbooks right now and if any of
it can benefit gnucash, I'll try to make it to happen.

Albert
_______________________________________________
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel

Reply via email to