Hello Everyone, I want to add an inventory system to gnucash. After looking at the code and considering how i want it to be, i come up with the following design:
inventory-system: * core - Item { name, sell-price, buy-price, quantity, description, item_group, asset-account, expense-account, income-account } - Item_group { name, list_of_item } * ui - input-dialog - select-dialog (A tree-view of "Item_groups", and inside each "Item_group" are the "Items") - invoice (Press "Enter" in the description register will pop-up the select-dialog) * report (profit of each item, qty of each item, etc) * backend (xml??) The "Item" and "Item_group" object will be derived from QofInstance, so they will be queryable. Above are informations which i think is needed most for those objects. The 'asset-account', 'expense-account', and 'income-account' will be useful in filling the invoice. After a user select an "Item" from select-dialog, the "account" columns and "price" columns can be automatically filled. The dialogs can be created using glade. There are a lot of problems which i choose to put aside for now (because it gives me too much headache :) such as - how to make the select-dialog can show items quickly (i imagine if the items are in thousands the tree-view will be very slow) - is it allright to modify the current invoice, or is it better to make another special invoice for inventory? and lots lots of other things which hasn't occured to me just now. Not to mention how to write the code :) Please tell me your opinion (any opinion!!) and thoughts. I've never involved in opensource software development before, lot of stuff to learn. Hope it 's ok. _______________________________________________ gnucash-devel mailing list gnucash-devel@gnucash.org https://lists.gnucash.org/mailman/listinfo/gnucash-devel