GnuCash for Symbian

Christian Stimming christian at cstimming.de
Fri Apr 6 16:08:20 EDT 2012


Dear Łukasz,

I'm one of the authors of the online banking importer in gnucash (using HBCI 
online protocol and/or files containing MT940 or OFX data).

I think your idea is great, but difficult.

As for the data format for importing transactions: I'd agree with the 
reservations about QIF as a data format. It has some severe limitations, which 
are somewhat worked around by the existing gnucash importer, but if you're 
implementing a new importing scheme anyway, you should better choose an 
exchange data format that doesn't give your obstacles from start on. Instead, 
I'd rather suggest OFX as a data format. Hendrik mentioned a "unique 
transaction identifier" that should be included in the exchange data format 
for sure, and he is right. OFX has such a unique ID. It is being evaluated in 
gnucash's OFX importer under the name "online-id". In fact, if the imported 
file contains this field, duplicate transactions (whose online-id has been 
observed in earlier imports) will be ignored from the import altogether right 
now already. Hence, please try to use OFX' data format as your exchange data 
format for transactions, if possible.

Am Freitag, 6. April 2012, 16:54:07 schrieb Łukasz Spas:
> Hmm... So maybe it would be better to develop some kind of
> synchronization protocol (that meets all specific gnucash requirements)
> based on TCP/Bluetooth connection?

You don't need a "protocol" for the gnucash part. You need a data format for 
transaction data (and I suggest OFX). You do need a protocol for moving this 
data from your Symbian device into a PC desktop application such as gnucash. I 
don't know at all how to hook up the PC application "gnucash" as the listener 
for specific bluetooth requests. I did some research on vaguely similar areas 
when I tried to find out how to register gnucash as a handler for particular 
URI schemes, see http://wiki.gnucash.org/wiki/Custom_URI_Scheme at the bottom. 
There is surely no one-size-fits-all solution there, but instead each OS and 
also each desktop system needs its own implementation of those hooks. Good 
luck!

> It would be a lots of work but there is also no deadlines... :P Maybe
> some student form GSoK could also helps in this topic?

No, the GSoC students will be completely busy with their own projects. You can 
surely expect no support from that side.

> This could be also useful when you have few desktop computers and you
> want to use GnuCash on all of them and easily keep your data
> synchronized...
> It would be some kind of GIT for GnuCash. :D

No, I wouldn't advise broadening your scope from "synchronization from a 
single mobile device to a single PC instance of gnucash" into some distributed 
something. Instead, I'd suggest keeping your scope limited to exactly your 
initial scenario: One mobile device with the data recording, and one PC with a 
running gnucash. Now you need to solve:

- Data recording on the mobile (probably easy)
- Exporting data from the mobile into some bluetooth export (exporting is easy 
if you choose your internal mobile data identical with the export data format; 
hooking this into bluetooth requires some internal protocol digging in the 
mobile OS)
- Registering gnucash as a bluetooth listener application, probably first 
limited to one specific OS and one specific desktop environment of your choice
- Getting some import process running in gnucash as soon as it receives the 
data via bluetooth (which is probably easy as the "Import xy file..." already 
exists in gnucash)

Regards,

Christian



More information about the gnucash-devel mailing list