CashUtil progress
Neil Williams
linux at codehelp.co.uk
Mon Aug 29 07:03:08 EDT 2005
CashUtil can now load the GnuCash XML backend, select an object (if you know
one of the values), edit (certain parameters of) that object and save the
amended book back to GnuCash XML.
i.e. it is now a semi-usable GnuCash CLI. It's not intuitive yet, but it's
still early days.
Searching for an entity is simply a case of specifying the command - edit,
print or delete - the object type, the parameter to compare and the value to
find in that parameter:
edit Account name Assets
I'll see about enhancing the command parser so that a more verbose command is
also supported :
edit Account where name = Assets
(I prefer the shorthand version myself - there'll be full SQL query support
for the more complex queries.) Parameter names or values that contain spaces
need to be quoted.
edit Account name "Current Assets"
One-line edits will also be supported:
edit Account code 0054 10055
or in verbose:
edit Account where code = 0054 set 10055
equivalent to the SQL:
update Account set code = 10055 where code = 0054;
(which will also be supported within the shell, later.)
Undo is also working, use 'commit' to place the data into the book, quit to
undo the edit and leave the entity unchanged. Users are prompted about dirty
books and 'pre-selection' is also enabled: if only one entity of the
requested type exists there is no need to specify search terms.
I've tested the file written out by CashUtil and GnuCash can load it and
correctly shows the amended data. (For the test, I simply edited the code
parameter of the Assets account.)
$ ./cashutil --shell
cashutil> load books/gnucash.xml
cashutil> print Account name Assets
Name Type Value
smallest-commodity-unit gint32 100
desc string Assets
reconciled numeric 0/1
present numeric 0/1
parent-account Account (null)
account-type string ASSET
code string
tax-related-p boolean false
balance numeric 0/1
notes string
name string Assets
future-minimum numeric 0/1
non-standard-scu boolean false
book Book (null)
guid guid df8f3225765a28afe2eb14e014c20201
kvp kvp (null)
cleared numeric 0/1
Not all parameters are editable, use 'explain' to see the list of editable
parameters for 'Account'.
cashutil> edit Account name Assets
cash/Account> edit code 0054
cash/Account> commit
cashutil> write
cashutil> q
Thank you for using cashutil.
Next is to fix the file type identification (between GnuCash and QSF), make
the selection shell more intuitive and helpful (by offering a list of
available objects etc.) and fix some problems with the SQL export where the
objects are copied as empty.
:-(
The website tarball will be updated later today.
--
Neil Williams
=============
http://www.data-freedom.org/
http://www.nosoftwarepatents.com/
http://www.linux.codehelp.co.uk/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : http://lists.gnucash.org/pipermail/gnucash-devel/attachments/20050829/1313b194/attachment.bin
More information about the gnucash-devel
mailing list