[gnucash-de] Gnucash auf Windows

Christian Stimming stimming at tuhh.de
Mit Nov 24 05:48:13 EST 2004


Hallo Andreas,

Andreas Fromm schrieb:
> Besteht eigentlich die möglichkeit dann auch von dem guile-zueg
> wegzukommen? Das ist halt so ewig langsam und frisst enomre resourcen.

Hier werden zwei Fragen miteinander vermischt, die eigentlich gar nichts 
miteinander zu tun haben. Tatsache ist, daß ein Teil von Gnucash in 
Scheme/Guile geschrieben ist, und zwar ca. 10% vom Code. Tatsache ist 
weiterhin, daß die Sprache Scheme (Lisp) nur relativ wenigen 
Programmierern geläufig ist, und daß häufig das Wunsch auftaucht, ob man 
nicht eine andere Scripting-Sprache benutzen könnte. Antwort dazu auf 
http://gnomesupport.org/wiki/index.php/GnuCashCode

Aber Scheme/Guile als solches ist weder langsam noch 
ressourcen-fressend. Das eine hat mit dem anderen nichts zu tun.

> Ich kenne mich mit den interna von GnuCash zwar überhaupt nicht aus,
> aber ich kann mir nicht vorstellen dass es so wahnsinnig rechenaufwendig
> ist, z.B. die Umstazdaten die per HBCI abgeholt werden in die Konten
> einzupflegen. Das dauert auf meinem Rechner (P3,600MHz) zum Teil über
> eine Minute für ca 30-40 Überweisungen.

Wenn Deine Anfrage sich auf das spezifische Problem "Import von 
Umsatzdaten" bezieht und das Problem lautet, daß dieser Import sehr 
langsam geschieht, dann stimme ich zu, daß dies der Fall ist. Aber der 
Grund für dieses langsame Importieren hat einzig und allein mit einer 
"relativ langsamen Implementierung" [1] der Import-Funktion zu tun, und 
diese wiederum ist in den C-Dateien 
src/import-export/import-main-matcher.c (gnc_gen_trans_list_add_trans() 
übergibt die "halb-fertigen" Transactions vom HBCI-Plugin an den 
endgültigen Importer) , src/import-export/import-match-map.c und 
src/import-export/import-backend.c zu finden. Die Performance-Probleme 
beim Import werden behoben sein, *sobald* sich jemand mit diesen drei 
Dateien hinsetzt und herausfindet, wo dort die viele Zeit verschwendet 
wird. (Hinweis: Wenn jemand weitere Code-Dokumentation sucht, sollte man 
*immer* den HEAD-branch vom CVS verwenden, da dort inzwischen viel mehr 
doxygen-Kommentare eingefügt worden sind.)

Ich wiederhole nochmal: Das hat mit Scheme/Guile überhaupt nichts zu tun.

Christian

[1] Jeder Programmierer möge sich die tiefere Bedeutung dieser 
Charakterisierung selber ausdenken.