De/Referenz
Contents
- 1 Glossar
- 2 Support
- 3 Konten-Typen
- 3.1 für den Schnelleinsteiger
- 3.2 Herleitung
- 4 Kontenrahmen
- 5 Einige kritische Betrachtungen
- 6 Daten importieren und exportieren
- 7 Online-Banking
- 8 Online-Kursabfrage mit FinanceQuote
- 9 Welche Einstellungen GnuCash verwendet und wo sie gespeichert werden
- 10 Wie man einen Fehler meldet oder einen Verbesserungsvorschlag einreicht
Glossar
- Hier gehts zum Glossar.
Support
Zunächst gibt es eine umfangreiche Liste von Verweisen auf zusätzliche Dokumentationen und Werkzeuge.
Falls man dort nicht fündig wird, könnte die Mailingliste [FIXME: irgendwo stand das noch ausführlicher] oder der Chat helfen. In beiden Fällen wird aber empfohlen zuvor Wie man einen Fehler meldet ... zu lesen.
Konten-Typen
für den Schnelleinsteiger
In GnuCash gibt es wie auch in der Buchhaltung 5 Haupt-Konto-Typen unter denen alle anderen Konto-Typen angelegt werden. Was man in anderen Finanzprogrammen als Kategorie versteht, heisst in GnuCash "Konto".
Die 5 wichtigsten Konten-Typen sind:
- Aktiva: Aktivkonten dienen zur Erfassung von Gegenständen oder anderem Vermögen, das einen Wert hat.
- Fremdkapital, früher Passiva: Fremdkapitalkonten bezeichnen Schulden oder Verbindlichkeiten.
- Aufwand: Aufwendungen jeder Art, zum Beispiel Lebensmittel, Kleidung, Steuern usw. Wird in Quicken als Kategorie bezeichnet.
- Ertrag: Erträge jeder Art, die Sie z.B. durch Gehaltseinkünfte, Zinsen, Dividenden usw. haben. Wird in Quicken als Kategorie bezeichnet.
- Eigenkapital: Eigenkapitalkonten werden verwendet, um die Eröffnungsbestände beim ersten Start von GnuCash oder zu Beginn einer neuen Buchungsperiode zu erfassen.
Für den Privatanwender ist das erst einmal verwirrend, deshalb gibt es hier eine Tabelle wie man die Kontoarten den Konten (Kategorien) zuordnet. Man sollte darauf achten, dass die Konten der ersten Ebene den fünf o.g. entsprechen.
Typen 1. Ebene | Typen 2. Ebene |
Aktiva | |
Bargeld | |
Aktienkonto | |
Bank | |
Investmentfonds | |
Forderung | |
Passiva | |
Verbindlichkeit | |
Kreditkarte | |
Aufwand | |
Ertrag | |
Eigenkapital |
Herleitung
In diesem Abschnitt sollen einige grundlegende Begriffe des Rechnungswesens und die Zusammenhänge dazwischen kurz dargelegt werden. Er soll nur ein grober Abriss sein und kann keine vollständige Einführung ersetzen. In der wikipedia finden sich wesentlich genauere Definitionen und auch jede Menge Literaturhinweise. Weiterhin wird jegliche Haftung für die Anwendung hier erwähnter Konzepte ausgeschlossen.
Das T-Konto
- To really obtain an isolated negative quantity, it would be necessary to cut off an effective quantity from zero, to remove something of nothing: impossible operation. How thus to conceive an isolated negative quantity? --Lazare Carnot, French mathematician and member of the Academy of Science, 1803.
Wenn man einen solchen Satz liest, aus einer Zeit, in der Napoleon mit dem Code Civil die Grundlagen des Bürgerlichen Gesetzbuchs in den deutschen Landen einführte, ist es schon erstaunlich, dass die europäischen Kaufleute seit Jahrhunderten einen Trick hatten, mit dem sich diese Unvorstellbarkeit trotzdem bewerkstelligen ließ: das T-Konto - kein Warenzeichen eines gewissen Telekommunikationskonzerns.
T-Konto | |
---|---|
Soll | Haben |
Vor Einführung der "EDV" wurden derartige Konten üblicherweise auf T-förmig unterteilten Karteikarten geführt. In der obersten Zeile steht die Kontobezeichnung, welcher üblicherweise eine Kontonummer vorangestellt wird, wodurch eine andere Systematik als die alphabetisch Reihenfolge möglich wird. Darunter werden die Zugänge auf der einen, die Abgänge auf der anderen Seite aufgezeichnet. Welches wofür die richtige Seite ist, hängt davon ab, um welche Art Konto es sich handelt [s.u.].
Doppelte Buchführung
Um Schreib- und Rechenfehler leichter finden zu können, wird im einfachsten Fall - später gibt es dann auch noch mehrteilige Buchungen - jeder Betrag in zwei verschiedenen Konten notiert. Man kann das auch so sehen, daß Geld nicht einfach entsteht oder verschwindet, sondern von A nach B fließt.
Da auch in einem mehrteiligen Buchungssatz immer auf beiden Seiten die gleiche Summe eingetragen wird, ergibt sich, dass der Saldo aller Konten immer 0 ist. Falls das bei manuell geführten Büchern einmal nicht der Fall ist, heißt es: Suchen!
Wer sich für die historische Details interessiert, kann ja mal einen Blick in Luca Pacioli's Summa de Arithmetica, Geometria, Proportioni et Proportionalità (Venedig 1494; Repro unter ISBN 88-317-6008-4) werfen, welches wohl die erste geschlossene Darstellung der Venetianischen Methode enthält.
Andere gebräuchliche Darstellungsformen im Rechnungswesen
Alternativ zum T-Konto ist etwa bei der GUV und der Bilanz die Staffelform (lat. scala: Treppe, Stufe) gebräuchlich.
Aktiva (Anlagevermögen + Umlaufvermögen) + Passiva - Fremdkapital = Eigenkapital
Was wo häufiger anzutreffen ist, ist auch von regionalen Gepflogenheiten abhängig. Während man in Kontinentaleuropa eher zum T-Konto tendiert, scheint man im angelsächsischen Sprachraum die Staffelform zu bevorzugen.
Bestandskonten
Am Anfang und am Ende einer Buchführungsperiode, in der Regel das Geschäftsjahr, steht eine Bilanz - ital. 2 Lanzen = 1 Balkenwaage. Damit die Waage ausgewogen ist, müssen die Konten ausgeglichen sein. Die Zahlen hierfür kommen aus der Inventur, der Erfassung des Inventars, der Bestandsaufnahme.
Um hier nun auch Äpfel mit Birnen vergleichen zu können, werden beide in inländischer Währung bewertet. Darauf, welche Bewertungsprinzipien auf welche Kontengruppen anzuwenden sind, soll an anderer Stelle eingegangen werden.
Bilanz.de | |
---|---|
Aktiva | Passiva |
(Kapitalverwendung) | (Kapitalherkunft) |
Anlagevermögen | Eigenkapital |
+Umlaufvermögen | +Fremdkapital |
Vertikal gliedert sich die Bilanz nach der Fristigkeit. Dies ermöglicht eine Beurteilung der Liquidität:
Wenn ich alles langfristig angelege, aber kurzfristig fällige Verbindlichkeiten habe, bekomme ich ein Problem - zumindest bei gängigen Größenordnungen, denn McNamara sagte als Weltbankpräsident einmal:
- Wenn Sie 1 Mio. Schulden haben, haben Sie ein Problem.
Wenn Sie 100 Mio. Schulden haben, hat ihre Bank ein Problem.
Bei der vertikalen Gliederung gibt es regionale Unterschiede zu beachten:
- in Deutschland langfristig vor kurzfristig,
- in der Schweiz und den USA beispielsweise umgekehrt.
Bilanz.ch | |
---|---|
Aktiva | Passiva |
(Kapitalverwendung) | (Kapitalherkunft) |
Umlaufvermögen | Fremdkapital |
+Anlagevermögen | +Eigenkapital |
Eröffnung und Abschluß
Da man nun aber nicht das ganze Jahr ständig in der Bilanz rumschmieren will, werden die einzelnen Positionen mit den Eröffnungsbuchungen in die Kontenklassen 0-1 beim SKR03, respektive 0-3 beim SKR04 - die Bestandskonten - aufgelöst. Am Ende der Buchführungsperiode, dem Finanzjahr, werden die Konten analog durch Übertragung der Salden, aber dann unter Einbeziehung der #Erfolgskonten über die Gewinn- und Verlustrechnung (G&V), in die Schlußbilanz abgeschloßen.
Erfolgsneutrale Buchungen
Auf diesen Bestandskonten lassen sich alle erfolgsneutralen Buchungen tätigen. Das sind alle Buchungen, die keine Wertänderung bewirken, sondern den Wert nur zwischen 2 Bestandskonten verschieben. Die Klassiker hier wären die
- Barabhebung vom und die
- Bareinzahlung aufs eigene Konto.
In beiden Fällen wird Geld zwischen zwei Aktivkonten bewegt, es handelt sich um einen Aktiv-Tausch. Analog wäre ein Passiv-Tausch, wenn man sich etwa Geld von der Oma leiht, um einem Freund das zuvor von ihm geliehene Geld zurückzuzahlen.
Erfolgt die Verschiebung zwischen einem Aktiv- und einem Passivkonto, so spricht man auch von einer Bilanzverlängerung - die Bilanzsumme, also die Zahl, die auf beiden Seiten unter dem Strich steht, erhöht sich - oder um eine Bilanzverkürzung, wenn die Bilanzsumme dadurch kleiner wird.
Einige typische erfolgsneutrale Gründungsbuchungen:
- Inhaberin bringt mit EUR X bewertetes Fahrzeug ein.
- Teilhaber legt EUR Y in Kasse ein.
- KFW stellt zinsgünstigen Gründerkredit auf Geschäftskonto zur Verfügung.
Typische Aktiv-Konten
Hier sind zunächst die meisten Konten, von denen Zahlungen getätigt werden. Also alle Barbestände wie Kasse und Urlaubskassen für Fremdwährungen, sowie die Girokonten, sofern sie im Haben sind.
Dazu kommen Finanzanlagen wie Sparbücher, Edelmetalle, Pfand- und Schatzbriefe, Aktien, Fonds, Derivate und kapitalbildende Versicherungen.
Weiterhin gehören hier auch die Sachanlagen wie Auto, Häuschen rein, sofern man sie berücksichtigen möchte oder muss, weil sie etwa mit einem Kredit in Zusammenhang stehen.
Typische Passiv-Konten
Hier gehören alle Kredite hin. Von der Hypothek aufs Häuschen über das von Oma geborgte Geld und den bei Tante Emma angeschriebenen Einkauf, sowie alles was man noch bei seinem Wirt auf dem Deckel oder Kerbholz hat, bis zum Girokonto, sofern es im Dispo (oder noch schlimmer überzogen) ist.
Obwohl man mit ihr bezahlen kann, fällt auch die Kreditkarte hierunter.
Erfolgskonten
Üblicherweise betreibt man zunächst einigen Aufwand um später zu einem Ertrag zu kommen. Ist am Ende der Buchführungsperiode der Ertrag größer als der Aufwand, spricht man vom Gewinn, andernfalls vom Verlust - oder allgemein vom Erfolg. Zur Ermittlung dieses Ergebnisses dient die Gewinn- und Verlustrechnung, kurz GuV, engl. Profit & Loss oder P&L.
Betrachtungsebenen im Rechnungswesen
Damit später keine Missverständnisse aufkommen, sollen kurz hier nun die verschiedenen Ebenen des Rechnungswesen und ihrer Begriffspaare betrachtet werden. Beginnen wir mit den juristischen Spitzfindigkeiten:
In dem Moment, in dem man als Käufer einen Kaufvertrag abschließt, tätigt man eine Ausgabe. Analog erzielt man als Verkäufer bei Abschluss eines Verkaufs[vertrages] eine Einnahme. Durch den Vertragsabschluss entsteht erst einmal ein beiderseitiges Schuldverhältnis, der Anbietende schuldet die Leistung und der Nachfragende die Zahlung. Also erst dann, wenn eine Zahlung erfolgt, entstehen daraus Auszahlung und Einzahlung. Wir befinden uns auf der Ebene der Finanz- oder Liquiditätsrechnung. Diese dient auch als Grundlage für die EÜR .
Aber erst in dem Moment, in dem man ein Wirtschaftsgut, also eine Ware oder Dienstleistung verbraucht, handelt es sich um Aufwand. In engem zeitlichem Zusammenhang entsteht zumeist ein Zwischen- oder Endprodukt, welches dann als Ertrag verbucht wird. Der Arbeitnehmer produziert etwa aus 8 Stunden Schlaf und einem guten Frühstück die Arbeitskraft, die er anschließend seinem Arbeitgeber zur Verfügung stellt. Wir befinden uns auf der Ebene der Gewinn- und Verlustrechnung, kurz GuV, die immer noch zum externen Rechnungswesen gehört, da unter Umständen Rechenschaft nach außen, etwa gegenüber dem Finanzamt, abgelegt werden muss.
Das folgende Beispiel ist zugleich ein Ausnahmetatbestand, da auch bei EÜR für höherwertige, langlebige Wirtschaftsgüter nur die Abschreibungen anzusetzen sind. Weiterhin sei ein steuerlicher Kleinunternehmer angenommen, der mit der MWSt. nichts am Hut hat.
Vorgang | Ebene | Zeitpunkt | Betrag |
Wir kaufen am 2. Januar eine PC für EUR 900,-- | Ausgabe | Januar | 900,-- |
Der Händler räumt uns freundlicherweise ein Zahlungsziel von einem Monat ein, welches wir auch ausnutzen und einhalten. | Auszahlung | Februar | 900,-- |
Der Gesetzgeber sieht eine Nutzungsdauer von 3 Jahren vor. | Aufwand | lfd. und die beiden folgenden Jahre jeweils | 300,-- |
Wem das noch nicht reicht, der kann sich dann noch mit dem internen Rechnungswesen befassen. Dort wäre die nächste Stufe dann die Kosten- und Leistungsrechnung.
Da bleibt dann der neutrale Aufwand, wie etwa die Spende ans Rote Kreuz, außen vor, während die kalkulatorischen Kosten, wie etwa Unternehmerlohn oder kalkulatorische Abschreibungen, also Kosten, denen kein Aufwand in gleicher Höhe gegenübersteht, hinzukommen.
Dort werden dann zunächst Kostenarten wie etwa Wasser und Strom erfasst und nach verschiedenen Schlüsseln auf Kostenstellen wie etwa den verschiedenen Produktionsstätten umgelegt, um schließlich Kostenträgern, also den erzeugten Produkten zugeordnet zu werden.
Gewinnermittlungsmethoden Ist- und Soll-Besteuerung
Ob aber ein Einkauf als Aufwand oder erfolgsneutral gilt, ist davon abhängig, welche Art der Gewinnermittlung man anwendet:
- Ist-Besteuerung: In der Einnahmenüberschussrechnung, kurz EÜR, die für Freiberufler und kleine Gewerbetreibende in Frage kommt, wird vereinfacht die Ebene des Zahlungsflusses betrachtet. Der Name deutet an, dass die Steuern erst fällig sind, wenn der Kunde bezahlt hat. Diese Methode dürfte im übrigen auch für den Privatanwender hinreichend sein.
- Das bedeutet anders ausgedrückt, dass die Offenen Posten (noch) nicht erfolgswirksam sind.
/!\ Doch Vorsicht, zur Zeit - GnuCash 2.4.x - ist dies in GnuCash noch nicht implementiert. Also entweder die Rechnungen nicht verwenden oder den Berichten mißtrauen! Details und Aktualisierungen dazu finden sich auf der englischen Seite Cash Based Accounting.
- Soll-Besteuerung: In der Bilanzierung, die u. a. für Kapitalgesellschaften vorgeschrieben ist, entsteht der Aufwand u. U. erst beim Werteverzehr, also wenn etwa ein Rohstoff, durch Materialentnahmeschein belegt, in der Produktion verbraucht wird. Zuvor handelt es sich entweder um einen Aktiv-Tausch (liquide Mittel, etwa Bargeld, gegen Ware) oder um eine Bilanzverlängerung (Erhöhung von Warenbestand und Verbindlichkeiten), was in beiden Fällen erfolgsneutral ist. Der Name deutet an, dass die Steuern hier bereits fällig sind, wenn die Rechnung geschrieben wird, also der Kunde bezahlen soll.
Die Details dazu, welche Methode anzuwenden ist, findet man hier.
Typische Aufwands-Konten
Beim Privathaushalt wären das in erster Linie die Kosten für die Unterkunft und die Verpflegung, die je nach ausgeübten Tätigkeiten durch eine nahezu unbegrenzte Zahl weiterer Kosten ergänzt werden können.
Typische Ertrags-Konten
- Bei abhängig Beschäftigten wäre das Ertragskonto per excellence das Gehalt, während es
- beim Kapitalisten hingegen die Kapitalerträge Zinsen, Dividenden und realisierte Kursgewinne wären.
- Der Großgrundbesitzer verbucht Mieten und Pachten,
- das Unternehmen Umsatzerlöse,
- der Freiberufler Honorare usw. usf.
Spezielle Kontentypen in GnuCash
Neben den oben hergeleiteten grundlegenden Kontentypen für Bestandskonten Aktiva [engl. Asset], Eigenkapital [engl. Equity], und bis 2.2.8 Passiva, danach Fremdkapital [engl. Liability],
sowie Erfolgskonten Aufwendungen [engl. Expense] und Erträge [engl. Income] gibt es in GnuCash noch einige spezielle Kontentypen.
"Online"-Konten
Die Mehrzahl der Spezialkonten dient dazu das Leben zu erleichtern, indem sie mit der Außenwelt kommunizieren, so dass nicht alles manuell eingegeben werden muss.
Kursabfragen
Bei den Kontentypen Investmentfonds [engl. Mutual Fund] und Aktienkonto [engl. Stock] werden Zusatzinformationen hinterlegt, die es ermöglichen, mittels Finance::Quote online die Kurse abzufragen.
Werden Konten anderen Typs in Devisen geführt, so ist auch deren Bewertung von Kursaktualisierungen mittels Finance::Quote betroffen, falls man das Merkmal bei der entsprechenden Fremdwährung aktiviert.
Online-Banking
Beim aktiven Kontotyp Bank [engl. bank account], ist es möglich, mittels verschiedener Module wie OFX für angelsächsische Länder oder HBCI für Deutschland diverse Online-Transaktionen wie Umsatzabfrage oder auch Online-Banking durchzuführen.
Ähnliches gilt für den passiven Typ Kreditkarte [engl. Credit Card].
Offene-Posten-Verwaltung
Die Kontentypen Forderungen [engl. A/Receivable, account receivable, A/R] und Verbindlichkeiten [engl. A/Payable, account payable, A/P] dienen dazu, im Geschäftsmodul die offenen Posten, also unbezahlten Rechnungen, zu verwalten. Die selbst geschriebenen werden als Forderungen erfasst, die erhaltenen als Verbindlichkeiten. Den Überblick behält man über die zugehörigen Berichte.
Einordnung der in GnuCash definierten Kontentypen
Nach der theoretischen Einführung soll hier nun eine Einordnung der in GnuCash definierten Kontentypen nebst englischer Originalbezeichnung in die Hierarchie erfolgen.
(Bestandskonten:) Aktiva [engl. Asset, kann auch Anlagevermögen bedeuten] Bargeld [engl. Cash] Bank [engl. bank account] Forderungen [auch Debitoren, engl. A/Receivable, account receivable, A/R] Investmentfonds [engl. Mutual Fund] Aktienkonto [engl. Stock] (Passiva, als eigenständiger Typ nicht vorhanden) Fremdkapital (bis 2.2.8: Passiva) [engl. Liability] Verbindlichkeit[en] (offene, eingeforderte, auch Kreditoren) [engl. A/Payable, account payable, A/P] Kreditkarte [engl. Credit Card] Eigenkapital [engl. Equity] (Erfolgskonten:) Aufwendungen [engl. Expense] Erträge [engl. Income] Handelskonten [engl. Trading accounts] (ab 2.3.x, Konten für den Devisenhandel, deren Ergebnis noch nicht realisiert ist, also schwebt)
Von GnuCash automatisch angelegte Konten
Sicherlich wundert sich der eine oder die andere darüber, wenn in der Kontenübersicht Konten auftauchen, die sie nie im Leben angelegt haben. Das mag zunächst unheimlich erscheinen, lässt sich aber erklären.
Anfangsbestand
Dies Konto ist vom Typ Eigenkapital und wird angelegt, wenn man im Neue-Kontenhierarchie-Assistenten Anfangsbestände eingegeben hat. Dann dient es als Gegenkonto für die daraus generierten Eröffnungsbuchungen. Im Gegensatz zu den unten genannten Konten weist seine Existenz nicht auf einen Fehler hin, sondern auf gängige Praxis.
Ausgleichskonto
Das Ausgleichskonto wird angelegt, wenn man zu mindestens einem Teilbetrag einer Buchung kein Konto angegeben hat. Es existiert also mindestens eine Buchung, die noch ausgeglichen werden muss. Man hat also irgendwo die Doppelte Buchführung nicht konsequent umgesetzt und sollte die in dem Konto aufgeführten Buchungen noch berichtigen.
Ausbuchungskonto-<Währung>
Auch hier hat man einen Fehler gemacht, allerdings im Zusammenhang mit einer Fremdwährung.
Kontenrahmen
Spätestens infolge der Weltwirtschaftskrise wurde offenbar, dass eine gewisse Vergleichbarkeit zwischen verschiedenen Betrieben wünschenswert sei. Daher wurden erstmals durch den Reichskontenrahmen (RKR) von 1937 gewisse Vorgaben verbindlich gemacht.
Aufbau: Kontenklasse, -gruppe, -art
Gewöhnlich ist ein Kontenrahmen im Zehnersystem gegliedert. Dabei gibt die erste Stelle der Kontonummer die Kontenklasse, die zweite die Kontengruppe und ggf. die dritte die Kontenart an, während die vierte ein konkretes Konto bestimmt.
Kriterien
Zunächst sollen einige Kriterien erläutert werden, nach denen sich die verschiedenen Kontenrahmen klassifizieren lassen.
Verbandskontenrahmen und Standardkontenrahmen
Nach Gründung der BRD haben verschiedene Branchenverbände (Industrie, Groß- & Außenhandel ...) Kontenrahmen entsprechend ihren Erfordernissen entwickelt und ihren Mitgliedsbetrieben anempfohlen. So bietet ein Kontenrahmen
- für den Handel viel Platz für verschiedene Warengruppen, jeweils mit den diversen Erlösschmälerungen (Rabatte, Boni, Skonti), während
- verarbeitende Gewerbe selbigen für die Kostenrechnung (Kostenarten, -stellen, -träger) verwenden. Beispiele: GKR, IKR
Für kleinere Organisationen hat die DATEV als Genossenschaft selbstständiger Steuerberater verschiedene Standardkontenrahmen, kurz SKR, entwickelt.
Prozessgliederungsprinzip vs. Abschlussgliederungsprinzip
Die Grundstruktur der Bilanzierung wurde im § 266 HGB festgeschrieben. Kontenrahmen, die entsprechend aufgebaut sind, folgen dem Abschlussgliederungsprinzip. Beispiel: SKR04
Ein anderer, eher pädagogischer Ansatz ist die Gliederung der Konten anhand eines fiktiven Geschäftsjahres. Den bezeichnet man als Prozessgliederungsprinzip. Beispiel: SKR03
Im Prinzip enthalten beide aber dieselben Konten, lediglich deren "Hausnummern" sind verschieden.
Zugriff über Kontonummer oder Gliederung
Da es zur Zeit (noch) nicht möglich ist, per Knopfdruck zwischen Kontobezeichnung und Kontonummer als Auswahlkriterium umzuschalten, gibt es einige Kontenrahmen, bei denen die Auswahl über die Kontobezeichnung und damit über die HGB-Gliederung erfolgt und andere, bei denen die Kontobezeichnung die Kontonummer enthält. Letztere eignen sich vor allem für Vollzeit-Buchhalter, die ihre Hausnummern aus dem ff kennen. Dagegen werden sich Nebenher-Buchhalter wohl schneller anhand der HGB-Gliederung zum gewünschten Konto durchhangeln.
In GnuCash enthaltene Kontenrahmen
Einige davon sind, wenn auch teilweise in abgespeckter Version, für GnuCash verfügbar. Da diese von Freiwilligen gepflegt werden, sind sie nicht unbedingt vollständig, aktuell oder gar fehlerfrei. Verbesserungen, Ergänzungen etc. sind daher jederzeit auf der deutschen GnuCash-Mailingliste willkommen.
Da die Kontenrahmen länderspezifisch sind, werden sie nur angezeigt, wenn das Programm mit den richtigen Ländereinstellungen gestartet wird.
AT - Austria/Österreich
Leider hat noch niemand den österreichischen Einheitskontenrahmen zur Publizierung bereitgestellt.
Übersicht: http://www.bmf.gv.at/Steuern/FAQHufiggestellteFragen/FragenzurSteuererklrung/EKR_Uebersicht.pdf
Literatur: http://www.bmf.gv.at/Steuern/FAQHufiggestellteFragen/FragenzurSteuererklrung/Kontenplan.pdf
Erläuterungen: http://www.bmf.gv.at/Steuern/FAQHufiggestellteFragen/FragenzurSteuererklrung/Kontenplan_Erl.pdf
CH - Schweiz
Ein chkmu ist in Gnucash enthalten.
DE - Deutschland
SKR03
Ein abgespeckter SKR03, auch für publizitätspflichtige Firmen, nach dem Prozessgliederungsprinzip, bei dem der Zugriff über die Kontonummer erfolgt, ist in GnuCash enthalten.
SKR04
Ein fast vollständiger SKR04, auch für publizitätspflichtige Firmen, nach dem Abschlussgliederungsprinzip, bei dem der Zugriff über die Gliederung nach HGB erfolgt, ist in GnuCash enthalten.
Alternativ gibt es einen nummernorientierten bei Erwin Rieger mit sehr interessanten Erweiterungen.
Literatur:
SKR49 Vereine, Stiftungen und Gemeinnützige GmbHs
- Fassung 2008: Ab 2.2.9 integriert.
- Ist für DATEV-Kontenrahmen zur Branchenlösung für Vereine, Stiftungen, Gemeinnützige GmbHs (SKR 49)
- http://www.stb-loewen.de/download/KtorahSKR49.pdf
Auflistung von Kontenrahmen
Hier sind einige Kontenrahmen aufgelistet.
Kontenrahmen | Abkürzung | verfügbar | Land | Beschreibung |
SKR01 | Standard Konten Rahmen | nein | DE | ist für kleine Personengesellschaften geignet |
SKR02 | Standard Konten Rahmen | nein | DE | ist für kleine Kapitalgesellschaften |
SKR03 | Standard Konten Rahmen | 10% | DE | ist wie SKR01, aber stärker untergliedert nach dem Prozessgliederungsprinzip |
SKR04 | Standard Konten Rahmen | 90% | DE | ist wie SKR02, aber stärker untergliedert nach dem Abschlussprinzip |
SKR49 | Standard Konten Rahmen | 100% ab 2.2.9 | DE | für Vereine |
SKR81 | Standard Konten Rahmen | nein | DE | für Ärzte |
EKR | Einzelhandel Konten Rahmen | nein | DE | für den Einzelhandel |
GKR | Gemeinschafts Konten Rahmen der Industrie | nein | DE | für den Großhandel |
IKR | Industrie Konten Rahmen | nein | DE | für die Industrie |
Wer noch mehr über Kontenrahmen wissen möchte, sollte sich die Seite von http://de.wikipedia.org/wiki/Kontenrahmen ansehen. Die vollständige Auflistung der DATEV findet sich hier.
der nächste Kontenrahmen
Es geht das Gerücht um, dass man die verschiedenen Anlagen der Einkommensteuererklärung als Module implementieren könnte. Leider hat sich bisher noch niemand daran gewagt. Falls sich mal jemand an dem einen oder anderen Modul, vielleicht Lohnsteuer, versuchen möchte, kann er/sie/es sich ja mal zwecks Unterstützung vertrauensvoll an gnucash-de@gnucash.org wenden.
Einige kritische Betrachtungen
Dieser Abschnitt gehört sehr wahrscheinlich ganz woanders hin, die Problemstellungen, die hier beschrieben werden sollen, wurden aber beim Erstellen obigen Konzepts offenbar.
Lokalisierung ist mehr als Übersetzung
Gerade wenn es darum geht, Dinge zu bewerten, kann das nicht wertfrei geschehen. Werte sind aber wiederum abhängig von dem Kulturkreis, in dem man sich befindet. So ist beispielsweise in Europa das Rechtswesen der verschiedenen Staaten unterschiedlich stark durchdrungen von römischen Prinzipien im Süden und germanischen im Norden, Präzedenzrecht versus deduktivem Recht etc. pp. Diese Recht wirkt dann auch auf das Rechnungswesen ein. Die Mehrzahl der Entwickler lebt in einem Kulturkreis, für den die Prinzipien in den US_GAAP - United States Generally Accepted Accounting Principles festgelegt sind, die zum Teil im krassen Gegensatz zu den etwa in Deutschland geltenden Bestimmungen des HGB - Handelsgesetzbuchs stehen. Beispiel: Fair Value versus Niederstwertprinzip. Der Versuch eines Kompromisses findet sich in den IFRS - International Financial Reporting Standards. Daher sollte eines der Ziele in der Weiterentwicklung von GnuCash sein, eine Internationalisierung und teilweise auch eine Europäisierung zu erreichen. Letzteres soll bedeuten, dass EU-Richtlinien etwa zum Umsatzsteuerrecht ja für alle Mitgliedsstaaten gleichermaßen gelten und entsprechende eurokratische Floskeln wie
- der Zeitpunkt der Lieferung oder sonstigen Leistung oder der Vereinnahmung des Entgelts oder eines Teils des Entgelts (wenn die Lieferung oder Leistung noch nicht ausgeführt ist), sofern dieser Zeitpunkt feststeht und nicht mit dem Ausstellungsdatum der Rechnung identisch ist
oder die gegenteilige Formulierung "Soweit nicht anders angegeben..." gleich in allen EU-Amtssprachen in die Templates Eingang finden, wobei Inter Active Terminology for Europe hilfreich sein könnte - diese Definition des Lieferdatums nur als Beispiel aus dem Richtlinientext, welche hoffentlich nie in der Form auf der Rechnung erscheinen muss.
Daten importieren und exportieren
In diesem Abschnitt werden alle Beiträge zum Import und Export der Buchhaltungsdaten gesammelt.
GnuCash kann andere Buchhaltungsdaten aus anderen Programmen nur importieren, wenn die Daten in den Formaten QIF oder OFX vorliegen. Ein Import aus einem anderen Buchhaltungsprogramm geht also nur, wenn diese andere Software eine Möglichkeit für "Export nach QIF" oder "Export nach OFX" anbietet. Was anderes geht leider nicht.
Seit Version 2.2.0 kommen noch die Möglichkeiten CSV, DTAUS und MT940 als Datenformat hinzu.
Wenn irgendwann in 2.4.x die AqBanking-Schnittstelle angepaßt ist, wird darüber eventuell auch noch ein generisches CSV-Importmodul verfügbar sein.
CSV nach QIF umwandeln
Comma separated values - durch Komata (oder Semikola) getrennte Werte - sind das allgemeinste Datenaustauschformat und werden auf vielen Webseiten zum Herunterladen der Umsatzdaten angeboten. Um sie nun in GnuCash zu importieren, kann man sie mit einer der beiden folgenden Methoden in das für Finanzdaten recht verbreitete QIF-Format umwandeln.
mittels Python-Skript
Die Email von Nils Andresen enthält csv2qif.py, einen csv-nach-qif-Konverter, den man verwenden kann, wenn Python auf dem verwendeten Computer installiert ist.
in der Tabellenkalkulation
Tabellenkalkulationsprogramme wie MS Excel oder Openoffice Calc können von Haus aus CSV-Dateien importieren. Mithilfe des Makros XL2QIF, respective CALC2QIF kann man dann daraus QIF-Dateien erstellen.
QIF Import
Falls beim Importieren von QIF-Dateien (z.B. aus Quicken, Wiso Mein Geld) Probleme auftreten, könnte vielleicht das Programm QIF-Cleaner (nur für Windows) helfen, die QIF-Datei vor dem Import noch ein bisschen an die QIF-Spezifikationen anzupassen. (Hat das jemand mal ausprobiert? ... die Seite ist leider mit einem Passwort geschützt)
Einfacher geht die Erstellung von QIF aus Excel oder Openoffice Calc mit dem Tool Calc2Qif. Es ist als Makro ausgefuehrt, dass nach der Makroinstallation und Programmneustart verfuegbar ist. Aus einer geoeffneten Datei heraus kann dann fuer die markierten Bereiche spaltenweise angegeben werden, welche Daten enthalten sind und dies wird dann in ein QIF ueberfuehrt.
OFX Import
Um Umsätze in GnuCash zu importieren bietet sich das Format OFX für alle die an, die nicht HBCI nutzen. Im Gegensatz zum QIF Import kann GnuCash hier erkennen, welche Umsätze es schon importiert hat und welche nicht. OFX Import wird z.B. von der 1822direkt im HTML-Banking unterstützt. Ein Demo-Login ist unter https://banking.1822direkt.com möglich.
XML Export
Im Moment gibt es in GnuCash keine Export-Funktion der Buchungsdaten. Aber für manche gewünschten Export-Formate könnte es auch genügen, die XML Datei entsprechend weiterzuverarbeiten. Ein XSLT-Stylesheet für den Export nach Gnumeric gibt es hier: http://xslfactory.free.fr/
Wer dafür eine Java-Bibliothek zum Lesen und Schreiben von GnuCash-Dateien (mit swing-widgets, taglib,... für eigene komplette Programme) braucht, kann mal auf http://apps.sourceforge.net/mediawiki/jgnucashlib/index.php?title=Main_Page schauen (benutzt z.B. für den Rechnungs-Export nach einer Openoffice-Vorlage, automatische Rechnungs-Erzeugung in die gnucash-datei aus der eigenen Stunden-Erfassung, Buchungsimport aus CSV-Dateien der nicht-HBCI-Bank,... )
Gnucash-Datei in CSV umwandeln
Mit einer XSLT-Transformation kann man aus den XML-Dateien von GnuCash auch CSV erzeugen. Wie das geht, beschreibt Jason unter: GnuCash export to gnumeric and CSV
Siehe auch: De/export_to_excel_xls_transform
GnuCash-Datei in QIF umwandeln
Unter http://gnucashtoqif.sourceforge.net/ findet sich ein Java Programm, mit dem GnuCash XML-Dateien in QIF umgewandelt können.
Wertpapierkurse / Maschinelle Kursabfrage mit GnuCash
Das ausführliche Kapitel zur automatischen Wertpapier-Kursabfrage in GnuCash befindet sich auf der Unterseite Aktienhandel.
Online-Banking
Debuglevel für Aqbanking einschalten
für linux
GnuCash-2.2.9: Dazu muss man die Umgebungsvariable AQBANKING_LOGLEVEL auf den Wert "debug" setzen.
- ein terminal-fenster öffnen
- export AQBANKING_LOGLEVEL=debug
- gnucash
Die debug-info wird nun in das terminal-fenster geschrieben.
GnuCash-2.3.x: Die genannte Umgebungsvariable wird innerhalb von gnucash nochmal verändert. Entscheidend ist jetzt nur noch, ob man das Häkchen unter Einstellungen -> Online Banking -> Ausführliche Debug-Meldungen aktiviert hat oder nicht.
Aqbanking errors und was sie bedeuten
Dazu gibt es auch sehr umfangreiche Dokumente (768 Seiten), herausgegeben vom Zentralen Kredit-Ausschuss der deutschen Banken.
- http://www.hbci-zka.de/english/documents/specification_english/HBCI22ea.pdf (in Englisch)
- http://www.hbci-zka.de/dokumente/spezifikation_deutsch/Gesamtdok_HBCI22.pdf (in Deutsch)
Code | Text | Erklärung |
0010 | Nachricht/Auftrag angenommen | auch "Nachricht entgegengenommen" |
0020 | Ausgeführt | auch "Information fehlerfrei entgegengenommen" |
0100 | Dialog korrekt beendet | Nachricht/ Auftrag angenommen |
3010 | Ansonsten bedeutet der HBCI-Code 3010 keinen Fehler, sondern lediglich eine Benachrichtigung über die Aktualisierung mancher interner Daten | |
3050 | Die BPD wird aktualisiert | |
3060 | Teilweise liegen Warnungen oder Hinweise vor | |
3900 | Kein Umsatz gem. Suchbegriff vorh. | |
3920 | Nur Zwei-Schritt-TAN-Verfahren zulaessig | |
9010 | Geschäftvorfall nicht bearbeitet | |
9050 | Teilweise fehlerhaft | |
9230 | Auftrag nicht ausgeführt, da Limit überschritten. | |
9380 | Signaturberechtigung für diesen Kunden unzulässig | auch "Benutzer hat keine Auftragsberechtigung" |
9800 | Abgebrochen | |
9955 | Ein-Schritt-TAN-Verfahren nicht zugelassen |
Banken mit Online-Banking
- VR Bank Rhein-Neckar (BLZ 67090000).
- Adresse des HBCI-Servers: https://hbci11.fiducia.de/cgi-bin/hbciservlet
- Anmeldung funktioniert mit dem VR-Netkey und einer 5stelligen PIN, die nur aus Zahlen besteht. Unter Linux problemlos, unter Windows leider mit einem Fehler beim Abruf der Systemkennung (siehe Mailingliste)
- Postbank-HBCI-Daten:
- Benutzerkennung = Kontonummer
- Die Kontonummer ohne führende Null(en) eingeben.
- Kunden-ID = ebenfalls die Kontonummer eingeben.
- PIN ist die gleiche, die im BTX verwendet wird. (Die PIN muss 5-stellig sein, es wird nicht die PIN von Posbank direkt benutzt.
- Bei der Postbank gibt es eine Besonderheit: über die Internetseite ist eine sechsstellige PIN zulässig - über FinTS (HBCI) PIN/TAN nur eine fünfstellige PIN.)
- HBCI-Version 2.2
- Kommunikationsadresse: https://hbci.postbank.de/banking/hbci.do
- Um beim "Get System Id" nicht einen Timeout Fehler zu bekommen muss man moeglicherweise unter "Special Settings" umstellen auf "HTTP 1.1" und sowohl "Force SSLv3" als auch "No BASE64 Encoding" einschalten.
- Besonderheiten bei der Version gnucash 2.4.9 (für die Postbank):
- unter LINUX kann man die aktuellen Einstellungen für das moblileTAN-Verfahren über die Oberfläche (aqbanking-Modul)treffen,
- unter Windows muss man momentan eine Configdatei, z.B. "uid%3a%3a00000001.conf" editieren (unter XP z. B. "c:\Dokumente und Einstellungen\username\aqbanking\settings\users\uid%3a%3a00000001.conf". Darin gibt es zwei Abschnitte die auf das verwendete TAN-Verfahren verweisen. Das bisherige 900-iTAN-Verfahren muss nun auf 901-mobileTAN*-Verfahren umgestellt werden:
- Im aqbanking-Modul steht dann unter "iTAN Mode" => 901 - mobileTAN* - mobileTAN*
- Ausschnitt der Configdatei:
...
tanMethod { int function="901" int process="2" char methodId="mobileTAN*" char methodName="mobileTAN*"
...
int selectedTanMethod="901"
Online-Kursabfrage mit FinanceQuote
Liste der Kursquellen
Name | Dienst | Website für Symbolsuche |
aex,
aex_futures, aex_options, dutch |
Euronext Amsterdam, NL | http://www.aex.nl |
australia | Australian Stock Exchange, AU | |
deka | Deka Investmentfonds (Sparkassen), DE | https://www.deka.de/decontent/index.jsp |
dwsfunds | Deutsche Bank Gruppe Fonds, DE | http://dws.de/DE/products/FundFinder.aspx |
fidelity | Fidelity Investments, US | http://www.fidelity.de/funds/kurse.html |
tiaacref | TIAA-CREF (Lehrer-Pensionsfonds), US | http://www.tiaa-cref.org |
troweprice | T. Rowe Price, US | http://corporate.troweprice.com |
europe | European Markets, EU | asegr, bourso, hex, ... |
canada | Canadian Markets, CA | |
nasdaq,
nyse, usa |
NASDAQ, New York Stock Exchange, AMEX: USA Markets
vom kunterbunten Narren Motley Fool, US |
http://quote.fool.com, http://www.fool.com |
uk_unit_trusts | UK Unit Trusts, UK | |
unionfunds | Union Investment Fonds (Volks- & Raiffeisenbanken), DE | [1], Name und Symbol unter [2] |
vanguard | Vanguard Investments, US | http://www.vanguard.com/ |
vwd | Vereinigte Wirtschaftsdienste GmbH, DE | Achtung, aus juristischen Gründen original, deutsch wird das Modul nicht mehr gepflegt! http://www.vwd.com/vwd/markt.htm |
weitere Module: | ||
aiahk | American International Assurance, HK | http://www.aia.com.hk |
amfiindia,
indiamutual |
Association of Mutual Funds India, IN | http://amfiindia.com/navreport.asp |
asegr | Athens Stock Exchange (ASE), GR | http://www.ase.gr/content/en/MarketData/Stocks/Prices/Share_SearchResults.asp? |
bmonesbittburns | BMO NesbittBurns Quitre Qote, CA: Most Canadiam and US stocks as well as Canadian Mutual Funds | http://bmonesbittburns.com/QuickQuote/QuickQuote.asp |
bourso,
france |
Paris Stock Exchange über boursorama, FR | http://www.boursorama.com/recherche/recherche.phtml |
lerevenu,
france |
Paris Stock Exchange über lerevenu, FR | http://bourse.lerevenu.com |
financecanada,
canada |
finance.canada.com, CA: Canadian Stock and Mutual Funds | http://finance.canada.com |
ftportfolios | First Trust Portfolios, US | http://www.ftportfolios.com |
fundlibrary,
canadamutual |
www.fundlibrary.com, CA: Canadian Mutual Fund | http://www.fundlibrary.com/ |
hex,
finland |
Helsinki Stock Exchange (HEX), FI | http://omxgroup.is-teledata.com/html/securitypricelistequities.html, |
maninv | Man Investments Australia, AU | http://www.maninvestments.com.au/ |
nz, nzx | New Zealand stock exchange, NZ | http://www.nzx.com/ |
platinum | Platinum Asset Management, AU | http://www.platinum.com.au/docs/pricing.htm |
seb_funds | Skandinaviska Enskilda Banken Fonds, SE | http://www.seb.se/pow/borsfinans/fondkurslista/kurslista.asp |
yahoo[_europe ?] | Yahoo | http://de.finance.yahoo.com/ |
Herkunft:
- perldoc Finance::Quote
- gnc-fq-dump listet noch mehr Dienste. Wer also genaueres zu den nicht aufgeführten herausfindet, möge diese Tabelle bitte ergänzen. In den einzelnen Perl-Modulen stehen am Schluss meist Erläuterungen.
- Frage: wäre alphabetische oder regionale oder sachliche (Aktien, Fonds, Drittanbieter, ...) Sortierung sinnvoller als die historische?
Tips:
- Ein Symbol der Form aaabbb=X liefert, zumindest bei Yahoo, den Wechselkurs zwischen den Währungssymbolen aaa und bbb.
- Auf unixartigen Systemen gibt es seit FQ 1.15 man pages in Abschnitt 3p, welche man beispielsweise mit
man Finance::Quote::AEX
aufrufen kann.
- Wenn man auf der Suche nach dem richtigen Symbol ist, wird man oft auch durch googlen fündig.
Welche Einstellungen GnuCash verwendet und wo sie gespeichert werden
Dieser Abschnitt dient verschiedenen Zwecken:
- Welche Annahmen macht GnuCash beim Start, und wie lassen die sich beeinflussen?
- Welche Verzeichnisse und Dateien sollten kopiert werden, wenn man auf einen anderen Rechner umzieht, bzw. in einem Backup berücksichtigt werden?
- Wo befinden sich die Vorlagen, falls man Anpassungen vornehmen möchte?
Die eigentlichen Daten
Falls man vergessen hat, wohin man seine Datei gespeichert hat, startet man GnuCash und sieht nach, was im Dialog Datei->Speichern unter... steht. Im Datei-Menü stehen auch noch bis zu 4 zuletzt verwendete Dateien, falls man mehrere hat.
Abhängig vom ab Version 2.3 wählbaren Dateiformat, variiert eine Datensicherung aber etwas:
- XML: Dies ist eine normale, eventuell gzip-komprimierte Textdatei, die in älteren Versionen der Standard war. Bis 2.3.irgendwas gab es keine Vorgabe für die Dateinamenerweiterung für die aktuelle Datei, wohl aber die vom Programm angelegten Sicherungskopien .xac nach dem Vorgänger XAccountant. Seitdem wird sowohl für die Datei als auch die Sicherungskopien .gnucash. Die Sicherungskopien enthalten zwischen eigentlichem Namen und Erweiterung aber noch einen Zeitstempel.
- sqlite3: Auch die ist eine einzelne Datei, allerdings im sqlite-Format.
- Diese beiden Dateitypen lassen sich einfach mit den Bordmitteln des jeweiligen Betriebssystems also einem Backup-Programm oder dem Datei-Browser auf nahezu jedes beliebige Medium - Diskette, USB-Stick, CD/DVD/BD, externe Festplatte, Netzwerklaufwerk - sichern.
- mysql, postgres: hier muß man zunächst mit den Mitteln des jeweiligen DatenBank-Management-Systems (DBMS) einen Dump der Datenbank - Vorgabe für deren Namen ist gnucash - erstellen, den man dann sichern und notfalls wieder einspielen kann. Details dazu entnimmt man dem Handbuch des jeweiligen DBMS.
Konfigurationsvariablen
Was und wohin wird installiert? Auf diese Variablen hat der normale Anwender keinen Einfluß, diese hat der Maintainer des Paketes bzw. Distributor im ./configure
-Befehl festgelegt. Es kann aber ganz nützlich sein, schon einmal davon gehört zu haben, da es die Suche nach Dateien, etwa um Berichte anzupassen, erleichtert.
Beispiel:
$PREFIX
legt gewissermaßen die Wurzel des Teilbaumes fest, in den Dateien installiert werden. Der Standardwert hierfür ist
- beim Selbstkompilieren
/usr/local/<Paketname>
, - bei Distributionen ursprünglich
/usr/share/[<Desktop>/]<Paketname>
. - bei *SuSE < 11.x war es aber für GnuCash
/opt/gnome/gnucash
.
Hierzu gehört auch die Festlegung, ob
- Aqbanking (deutsches Onlinebanking)
- OFX (Datenimport für den Rest der Welt ;-))
- DBI (SQL-Datenbankunterstützung ab 2.3.x)
verfügbar ist oder nicht.
Umgebungsvariablen
Beim Start wertet Gnucash zunächst verschiedene Umgebungsvariablen aus. Für den "normalen Benutzer" die wichtigste ist LANG, durch welche die länderspezifischen Einstellungen Sprache, Währung, Datum- und Zeitformat, sowie Vorlagen für Berichte und Kontenrahmen bestimmt werden. Wie diese Variable zu setzen ist, ist vom verwendeten Betriebssystem abhängig.
Das Verzeichnis $HOME/.gnucash (GNC_DOT_DIR)
Traditionell speichern Linux-Programme vom Benutzer individuell anpassbare Einstellungen in einem verborgenen Verzeichnis - daher der Punkt vor dem Namen - mit dem Namen des Programms im Heimatverzeichnis des Benutzers.
Unter Windows bis XP entspräche das wohl C:\Dokumente und Einstellungen\MeinName\Lokale Einstellungen\..., ab Vista C:\Users\myname\AppData\Local\.... Und unter MacOS?
Anpassungen an Vorlagen, die über die Optionen des Programm erfolgen, speichert Gnucash dort. So befinden sich die benutzerdefinierten Berichte in der Datei $HOME/.gnucash/saved-reports-<version>.
Dieser Pfad läßt sich durch das Setzen der Umgebungsvariablen GNC_DOT_DIR verändern , etwa: <code'>GNC_DOT_DIR=~/test/.gnucash gnucash <weitere Parameter></code>
Dadurch ist es beispielsweise möglich, für geschäftliches, privates und Programmierung verschiedene Konfigurationen zu verwenden. Allerdings sollte man beachten, daß für einige Einstellungen gconf zuständig ist.
gconf (GNOME configuration database)
Einstellungen, welche insbesondere die äußere Erscheinungsform von GnuCash betreffen wie
- Fenstergröße
- Spaltenanordnung
- Voreinstellungen von Dialogen
- Einstellungen für Warnungen
werden, wie bei anderen Programmen des Gnome-Desktops, mithilfe des GConf-Daemons, gewissermaßen einem Gegenstück zur Windows-Registry, im Schlüssel </apps/gnucash/> und seinen Unterverzeichnissen wie
- <./history/> Zuletzt geöffnete Dateien
- <./file0> aktuelle Datei
gespeichert.
Physikalisch liegen diese in $HOME/.gconf/apps/gnucash/ und eigentlich sollte man die Änderung GnuCash überlassen. Falls man aber - aus welchen Gründen auch immer - doch mal Änderungen daran vornehmen wollte, sollte man die besser mithilfe von dem CLI
gconftool-2
oder dem GUI
gconf-editor
durchführen, welches sogar übersetzte Hinweise zur Bedeutung der Einstellungen hat.
Wer meint, trotzdem diese Dateien anderweitig bearbeiten zu müssen, sollte hinterher der GConf-Daemon neu starten, um ihm die Änderungen bekannt zu machen.
Allgemeine Gnome-Einstellungen
Bestimmte Einstellungen wie etwa den Standard-Zeichensatz übernimmt GnuCash vom Gnome-Desktop. Um diese anzupassen verwendet man am besten das
gnome-control-center
und hat eine schöne grafische Oberfläche, sofern das Programm installiert ist.
AqBanking-Einstellungen
Das Online-Banking-Modul speichert seine Einstellungen in $HOME/.aqbanking. In älteren Versionen war es das Verzeichnis $HOME/.banking. Falls also die Einstellungen nach einem Update verschwunden sind, ist das Verzeichnis ~/.banking nach ~/.aqbanking zu kopieren.
Gegebenfalls hat man in den Einstellungen angegeben, wo weiteres Zubehör wie die RDH-Schlüsseldiskette zu finden ist.
Zusammenfassung
Somit sollte man nach getaner Arbeit folgende Verzeichnisse sichern:
~/.[aq]banking ~/.gconf/apps/gnucash/ ~/.gnucash die Schlüsseldiskette das Verzeichnis der Gnucash-Datei
Vorlagen: Berichte, Kontenrahmen etc.
Falls man das Bedürfnis hat, weitergehende Änderungen an den Vorlagen vorzunehmen, so findet man sie in der Regel in den Unterordnern des GnuCash-Verzeichnisses.
Wo der GnuCash-Ordner liegt ist von Distribution zu Distribution verschieden. Mögliche Anlaufstellen sind etwa
- /opt/gnome/share/gnucash (ältere Suse-Distribution) oder
- /usr[/local]/share/gnucash.
Falls man das Programm sebst baut, kann man den Pfad über den Konfigurationsparameter --prefix=PREFIX festlegen, siehe oben.
Falls man Änderungen an den Dateien vornimmt, sollte man "Das geänderte Formular vor dem Update schützen" beachten.
Wie man einen Fehler meldet oder einen Verbesserungsvorschlag einreicht
Ein paar allgemeine Empfehlungen
Da die Problematik der Fehlermeldung ja viele Projekte gleichermaßen betrifft, wird den Anwendern zunächst die Lektüre der beiden folgenden, teils recht unterhaltsamen Dokumente wärmstens empfohlen:
Obacht, jene Seiten bieten KEINEN SUPPORT für GnuCash, daher bitte weiterlesen.
Die verschiedenen Meldungsebenen des Programms
GnuCash versucht auf verschiedenen Ebenen mit dem Benutzer zu kommunizieren. Während für das Tagesgeschäft die Ausgaben der Programmoberfläche reichen, sind bei Fehlermeldungen häufig die Ausgaben der Anderen erforderlich.
Die Programmoberfläche
Normalerweise kommuniziert GnuCash über seine Benutzeroberfläche mit dem Benutzer durch Hinweise in der Statuszeile, Dialog- oder Meldungsfenstern. Falls dort eine unbefriedigende Fehlermeldung erscheint wie "Beim Lesen der Datei »/Pfad/Name« ist ein Fehler aufgetreten.", sollte der nächste Punkt versucht werden.
Die Ausgaben auf der Konsole
Wenn man das Programm nicht über das Start-Menü aufruft, sondern in einem Befehlsfenster, erscheinen dort zusätzliche Informationen. Meist sollte man zumindest diese Informationen bereithalten, wenn man einen Fehler melden möchte. In unserem Beispiel könnte hier etwa als Grund "Datei nicht gefunden", "Zugriff abgelehnt" oder ... stehen.
Wie öffnet man nun so ein Befehlsfenster?
- Gnome: Rechner->Anwendungen->Weitere Anwendungen->System->Terminal,
- KDE: K-Menü->System->Terminals->Konsole,
- MacOSX: Finder->Programme->Dienstprogramme->Terminal und
- Windows: Start->Alle Programme->Zubehör->Eingabeaufforderung.
Ein Aufruf darin von
gnucash --help
listet einem dann eine ganze Reihe möglicher Parameter auf. Für die Fehlersuche bedeutsam sind die im nächsten Beispiel augeführten. Weitere Möglichkeiten zum Feintuning der Ausgaben werden auf der englischsprachigen Seite Logging erläutert.
Falls man des Englischen einigermaßen mächtig ist, empfiehlt es sich insbesondere dann, wenn man vorhat, einen Bugzilla-Eintrag zu erstellen oder ergänzen, das Programm gleich auf Englisch mit
LANG=C gnucash [--log ...] [--logto ...] [--debug|--extra]
zu starten, um Fehler bei der Rückübersetzung der Meldungen zu vermeiden.
- "Der Wodka war gut, aber das Steak war gammlig." soll ja seinerzeit das Ergebnis der ersten maschinellen Rückübersetzung von
- "Der Geist war willig, aber das Fleisch war schwach." gewesen sein.
Manchmal reicht aber auch das nicht, dann geht's zum nächsten Punkt.
Die normale GnuCash Protokoll-Datei .trace
GnuCash schreibt während jedem Programmdurchlauf eine Protokolldatei "gnucash.trace", genannt "Trace-Datei". In vielen Fehlersituationen wird die ausführliche Information zu dem vorliegenden Fehler in diese Prokolldatei geschrieben. Deshalb brauchen die Entwickler in einem Fehlerbericht häufig als erstes den Inhalt dieser Protokolldatei. (Siehe auch die englische Seite "Tracefile".)
Zum Auffinden der Protokolldatei: Sofern die Standardeinstellung nicht durch --logto <PfadName>
geändert wird, wird diese an folgendem Ort angelegt:
- Linux/BSD/*nix: /tmp/gnucash.trace
- Windows
- bis XP: C:\Documente und Einstellungen\MeinName\Lokale Einstellungen\Temp\gnucash.trace.XXXXXX
- ab Vista: C:\Users\myname\AppData\Local\Temp\gnucash.trace.XXXXXX
- Die Zeichenkette "XXXXXX" sind sechs zufällig wechselnde Buchstaben. Anhand des Änderungsdatum muss man jene Datei heraussuchen, die beim Auftreten des Fehlers erstellt wurde.
- MacOS: in einem temporären Ordner unter /var/folders, welcher weder im Finder angezeigt wird, noch von Searchlight gefunden wird. :-(
find /var/folders -name gnucash.trace -exec less \{\} \;
- sollte das Anzeigen ermöglichen.
Die Datei variiert stark in der Größe - wenige Zeilen oder viele Megabyte können beide vorkommen. Die Datei besteht aus einfachem Text und kann in jedem Texteditor betrachtet werden.
Falls gewünscht, kann man die Auswahl der dort protokollierten Informationen genauer einstellen. Ein Beispiel und weitere Details wie Loglevel und Module finden sich auf der englischen Seite "Logging" oder auch in der technische Dokumentation. Falls man nun das Programm immer wieder mit denselben Einstellungen starten möchte, ohne sie jedesmal auf der Befehlzeile neu eingeben zu müssen, kann man die entsprechenden Optionen auch in einer Datei ~/.gnucash/log.conf
ablegen.
Die unkomprimierte Gnucash-Datei
Bisweilen kann es auch hilfreich sein, einen Blick in die unkomprimiert gespeicherte Gnucash-Datei zu werfen. Dafür ist vor dem Speichern unter Bearbeiten->Einstellungen->Allgemein das Häkchen bei "Datei komprimieren" zu entfernen.
Falls man vergessen hat, wo die Datei gespeichert wird, kann man das durch Öffnen des Dialogs "Datei->Speichern unter" in Erfahrung bringen.
In Fehlerberichten ist es zuweilen sinnvoll, eine möglichst kleine Beispieldatei anzuhängen, mit deren Hilfe das Problem nachvollzogen werden kann. In einigen ganz seltenen Fällen tritt aber das Problem auf, daß ein Fehler in der eigenen Datei vermutet wird, sich jedoch nicht ohne Weiteres reproduzieren läßt. Bevor man nun seine ganzen persönlichen Finanzdaten an eine relativ fremde Person weitergibt, sollte man die Daten verschleiern, ohne die Struktur der Datei zu verändern. Dazu gibt es auf der englischen Seite ObfuscateScript ein Perl-Skript, welches man auf die zu verschickende Kopie anwenden kann, um das zu bewerkstelligen. Da Perl bei Linux-Distributionen zum Lieferumfang gehört, wird für Windows-Benutzer auf die möglicherweise noch erforderliche Installation verwiesen.
Der Stacktrace
Wenn es einen Programmabsturz gegeben hat, ist die wichtigste Information für die Entwickler ein Stacktrace (auch genannt Call Stack), die Abfolge der Funktionsaufrufe im Programm. Wenn irgend möglich, sollte man bei einem Programmabsturz versuchen, diesen Stacktrace zu bekommen und mit einzuschicken. Dafür muss man GnuCash im Debugger gdb ausführen. Die Anleitung dazu steht auf der englischen Seite "Stack Trace".
Die Recherche: Ist das Problem bereits bekannt?
Da man ja nicht der einzige GnuCash-Benutzer ist, gibt es eine recht hohe Wahrscheinlichkeit, dass vor einem selbst schon jemand anderes auf das gleiche Problem gestoßen ist und unter Umständen ein – wie auch immer gearteter – Lösungsweg gefunden wurde.
Der schnelle Weg: Rückfrage im Chat
Falls man sein Problem knapp und fließend auf Englisch - manchmal sind auch Deutschsprachige anwesend, da muß man halt mal fragen - beschreiben kann, findet man im Chat auch meistens jemanden, der einem helfen kann, zu entscheiden, ob es sich wirklich um einen Programmierfehler oder ein Verständnisproblem handelt.
Wer nicht weiß, was Internet Relay Chat ist und was man dafür braucht, sollte einen Blick auf die englische Seite werfen.
Mittels Copy&Paste kann man sich ja ganz schnell auch größere Textbrocken zuwerfen. Im Chat ist das aber verpönt, da es einfach zu unübersichtlich ist. Falls man also aufgefordert wird die Konsolenausgabe oder eine Protokolldatei zu zeigen, sollte man einen Pastebin wie z.B. http://pastebin.ca oder http://pastebin.com verwenden. Text dort hineinkopieren, Submit anklicken und den zurückgegebenen Link in den Chat kopieren, damit die anderen darauf zugreifen können.
Suche in Mailinglisten
Auch die Suche in den GnuCash-Mailinglisten oder mit Google oder einer anderen Suchmaschine kann hilfreich sein - wahrscheinlich ist schon jemand anderes zuvor über das Problem gestolpert. Und in der Zeit, in der Entwickler Fragen beantworten, können sie nun mal nicht entwickeln.
Da es zur Zeit - Herbst 2010 - Probleme mit dem Such-Index auf der GnuCash-Seite gibt, empfiehlt es sich die Google-Suche mit dem Parameter site:lists.gnucash.org
oder in der erweiterten Google-Suche Domains Ausschließlich Antwortseiten von der Site oder Domain lists.gnucash.org zu verwenden.
Anmerkungen:
- SSL-Zertifikat: Neuere Browser wie Firefox 3 beschweren sich darüber, daß das Zertifikat selbstsigniert ist. Es wird empfohlen, es nach Überprüfung zu den Ausnahmen hinzuzufügen, um eine "abhörsichere" Verbindung über https zu ermöglichen.
Suche im BugZilla
Bugzilla ist das Verzeichnis für Fehlermeldungen und Verbesserungsvorschläge des Gnome Projekts. GnuCash wird dort als eigenes Produkt geführt.
Für eigenständige Projekte wie
- die Online-Kursabfrage Finance::Quote: Request Tracker des Comprehensive Perl Archive Network
bitte deren jeweiliges System verwenden.
- Suche nach offenen GnuCash Bugs und Verbesserungsvorschlägen, eingeschränkt auf unspezifizerte oder Versionen >=2.0. Ältere Versionen werden nicht mehr gepflegt.
Besonders, wenn man nicht die aktuellste Version verwendet, ist es sinnvoll, in einem 2. Durchgang die Einschränkungen des bug_status rauszunehmen, da der Fehler inzwischen behoben sein könnte.
Endlich: Fehler oder Verbesserungsvorschlag melden oder kommentieren
Häufig ist die Untersuchung von Fehlerberichten recht mühsam, weil der Berichterstatter für ihn selbstverständliche Informationen nicht mitliefert - Wieso, ich arbeite doch immer unter Betriebssystem XYZ, gibt's da etwa auch noch andere?. Trifft er damit auf einen gutgelaunten Freiwilligen, dann fragt der nach. Ist der selber gerade im Stress, wird die Meldung unter Umständen sogar ignoriert.
Ab Version 2.3 ist es auch hilfreich anzugeben, welches Backend verwendet wird - also was unter Datei speichern unter steht:
- file: (XML-Datei, komprimiert oder nicht) oder
- SQL: (MySQL/PGSQL/SQLite-Datenbank)
Daher sollte der Bericht möglichst alle der folgenden Angaben enthalten:
- Ich benutze Gnucash Version <x.y.z> unter <Distribution> <a.b/Codename> <Betriebssystem> [<Version>] [mit Servicepack <j>] [mit den <relevante Zusatz>-Paketen aus dem Repositorium <wunderbar>] und speichere meine Daten in {[un]komprimierter XML-Datei|MySQL|PGSQL|SQLite}.
- Wenn ich, nachdem ich <dies und das> gemacht habe, <Menü><Untermenü><Menüpunkt> öffne, <erscheinen kleine grüne Männchen>.
- Ich hätte aber erwartet, dass <Engelchen Halleluja singen>.
Der Inhalt der <spitzen> Klammern ist dabei natürlich durch zutreffende Angaben zu ersetzen.
Zum Herausfinden der verwendeten Versionen gibt es, wie in den meisten modernen Programmen,
- den Menüpunkt Hilfe->Über, sowie
- die Befehlszeilenoptionen
- -v als Abkürzung für
- --version.
Falls man das Programm selbst gebaut hat, ist auch die genaue SVN-Version wichtig, da sich der Inhalt des Subversion-Repositorium ja sehr schnell ändern kann.
Oft ist es auch hilfreich, das Programm statt über das Startmenü oder eine andere Verknüpfung, direkt in einem Terminalfenster zu starten und das, was es dorthin schreibt, zu analysieren oder als Anhang mitzusenden.
In BugZilla
Bugzilla dient der Verwaltung von Fehlern und Verbesserungsvorschlägen.
Zunächst sollte man die dortige Suche verwenden, um herauszufinden, ob der Fehler schon bekannt ist.
Falls der Fehler schon bekannt ist, kann man durch weitere Kommentare die Informationen ergänzen, etwa "Der Fehler tritt nur bei abnehmendem Mond auf, nie bei zunehmendem". Damit hilft man den Entwicklern, den Fehler einzugrenzen. Am Besten ist es natürlich, gleich einen Patch einschicken. ;-)
Falls er noch nicht bekannt ist, meldet man ihn, am allerbesten auf Englisch, und zwar unter:
- Erstelle einen neuen GnuCash Fehlerbericht oder Verbesserungsvorschlag; falls man einen Absturz berichtet, bitte hier - leider noch auf english - nachsehen, wie man einen stack trace für den Bug Report erstellt und anfügt.
- Falls für die Fehlersuche eine Gnucash-Datei eingeschickt werden soll, kann man den wirklichen Inhalt der Kopie einer unkomprimierten XML-Datei mit dem ObfuscateScript vernebeln.
Auf UserVoice
Zur Zeit (Februar 2011) wird getestet, inwieweit sich UserVoice für die Verwaltung von Verbesserungsvorschlägen eignet - einfach mal ausprobieren!
Tip: Ganz unten auf der Seite kann man die Oberfläche auf Deutsch umstellen.
Auf der Mailingliste
Wer mit dem Englischen Probleme hat, kann auch auf der deutschen Mailing-Liste anfragen, ob jemand mit dem Übersetzen helfen kann. Dafür ist wegen der Spammer allerdings eine Anmeldung sinnvoll. Andernfalls landet die Mail in einer Warteschlange und muß erst von einem Moderator freigegeben werden.
Hier sollten auch Verbesserungen an spezifisch deutschsprachigen Komponenten wie Kontenrahmen und Übersetzung von Programm-Meldungen oder Dokumentationen eingereicht und diskutiert werden.
Im Betreff der Email sollte das Problem schon möglichst prägnant umrissen werden. Wer eine Email mit dem Betreff GnuCash oder Hilfe schickt, braucht sich nicht zu wundern, wenn er keine Antwort bekommt, da ein solcher Betreff niemanden vom Hocker reißt. Auch würde eine derartige Mail von Leidensgenossen desselben Problems bei der Mailinglistensuche nicht gefunden.
Antworten sollte man immer auch an die Liste - jedes Mailprogramm hat auch irgendwo im Menü verborgen Befehle wie "Allen antworten" und "An die Liste antworten". Wirklich nur ganz persönliche Nachrichten wie Einladung zum Kaffeetrinken sollten nicht an die Liste geschickt werden. Der vorherige Autor könnte nämlich nach Diktat verreist sein - dann liegt die Antwort wochenlang in seinem Posteingang rum und kein Schwein kümmert sich drum - oder andere Leute könnten noch bessere Ideen zu dem Problem haben.
Falls man sich die Gnucash-Mails täglich gebündelt zusenden läßt, ist es auch sinnvoll beim Antworten den Betreff auf die tatsächlich beantwortete Original-Mail anzupassen, also statt "Re: [gnucash-de] gnucash-de Nachrichtensammlung, Band 94, Eintrag 6" aus der betreffenden Nachricht die Subject-Zeile "Re: [gnucash-de] DTAUS" übernehmen.