----- Original Message ----- From: "Benoit Gr�goire" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Monday, August 02, 2004 8:45 AM Subject: Re: Importing and exporting revisited
> -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > On Sunday 01 August 2004 10:35 pm, blfs wrote: > > So the question becomes why is it so hard to import > > and export a check register? Are there similar problems > > with importing and exporting Customer lists, vendor > > lists, bills and invoices, etc, etc? > > No offense, but this has been explained to you over and over from many > different angles. Let me try to summarise so we can finally stop this thread > or get something constructive out of it. > > Exporting data in tabular format is inherently trivial, and is usually done > for reporting purposes. Few have been implemented in GnuCash (TXF export is > an exception) because most people feel the current reports are adequate for > most purposes. Those who don't and want to export something really custom > have usually done it by running an XSLT transform on the XML file. It isn't > durable, but it certainly is simple. > > On the other hand, importing tabular data is inherently hard and involves > solving several problems. > > 1-You need a generic, robust and flexible CSV parser. We couldn't find a > ready made one in C, but someone has contributed one. You also need a small > interface to tell it the separator, quoting caracter and if the first row > must be treated as column names. > > 2-You need a column matcher to map column name (or number) to their gnucash > semantic type (amount, value, commodity, currency, reconciled state, customer > name, account id, split memo, tax rate, etc, etc, etc.). Since there are > several dozens of those (way too much for the casual user to find it easy to > select from a list), you probably need to do it in two steps. First you pick > an import profile that represents the type of data you wisht to import (Bank > statement, customer list, check register, stock value report, etc). After > that your are presented with a list of relevent data type to match against > the columns. > > 3-Unfortunately, you'd have to run this process every single time you import a > file. So you also need a file profile manager. This will store the data > types/column name or number match above in a file as well as some metadata so > the format can be usefull to others (general file format category, finincial > institution or software, packager, application notes, etc.). You will off > course need a GUI to look at all such file in some directory and present the > metadata to the user so he can pick it instead of running the previous step. > > 4-Now you have the data nto gnucash, but that is still not enough. Now you > need several GUIs to fill in missing data. Some of them exist in Gnucash > (the generic transaction matcher, the account matcher, the commodity > matcher), more would have to be written (customer matching, invoice matching, > etc.). > > 5-You also need helper support for such things as date formats, number > formats. > > None of this is rocket science, but most of it is very long as it involves > many, many pieces of user interface. Lots of people want to see it happen, > but so far we had few contributors for the import/export process. It's a pet > project of mine, but I have no time to spend on it right now. > > Now if you can't see why this is a LOT of code to write, you either: > - -Don't understand the implementation challenges of real commodity and currency > support and double entry accounting like gnucash does. > or > - -Underestimate the time required for the GUI part of all this. > or > - -Like many people assume that since you know and understand the meaning of > your file, a computer can as easely infer the meaning of the differents > columns, date formats, currency labels, etc. > > The gnucash developers are not interested in solving a problem for a single > individual (barring financial contribution...), however the ARE interested in > solving problems for a group of users (or solving problem for themselves), > when time permits. > Thank you for your reply. First of all, I have imported data into more than one financial program without great difficulty. In each case these were financial programs built on top of SQL databases. I have also imported data into Peachtree which is a canned program, and I am sure the developers at Peachtree had to do all the work you mention to allow imports. So the issue is not the importing and exporting of data in general into a financial database program but the issue is importing and exporting into GNUcash or canned financial programs in general. I dont think GNUcash can make it is a canned program like Quicken, Peachtree and Quickbooks. They rely on selling product and they can pay people to make certain all these features are there. Of course no one has time for working on a free program that they dont depend on. The design of this program needs to be rethunk to get some serious people working on it or it aint going nowhere. And there are plenty of serious people out there that know programming and accounting and accounting programs. It seems to me that the best approach would be to aim for some database type program, and then build the financial program on top of it. This would work towards solving Linux's lack of a desktop database program. A financial program would be the natural vehicle for developing a desktop database program. I also want to add that I have been using Woody's version of gnucash, which does install quite nicely. Is this version missing functionality? _______________________________________________ gnucash-devel mailing list [EMAIL PROTECTED] https://lists.gnucash.org/mailman/listinfo/gnucash-devel
