hi,
guck Dir einen ganz normalen Kontoauszug an: Grundgerüst für eine Tabelle.
Felder für ein Konto: soll, haben, saldo, datum, freitext
Das System dahinter: Jeder Transfer von meinem Geld an wen anderen oder jede Einnahme von außerhalb ist _eine_ Transaktion. Jede Transaktion besteht aus einer oder mehrere Buchungen. Das Datum der Zahlung sowie die Information, an wen gezahlt wurde bzw. woher Geld egkommen ist, steht deshalb in der Tabelle "Transaktionen". In der Tabelle "Buchungen", in der ja jeder einzelne Rechnungspunkt ein neuer Datensatz ist, stehen dann nur die Kategorie und der Teilbetrag, also kein Datum und kein Empfänger/Sender.
Das Transaktionskonzept ist dann wichtig, wenn außer Dir selbst noch andere Prozesse in der Tabelle buchen.
Als praktisches Beispiel: Angenommen, ich komme vom 'ALDI' nach Hause und habe einen Kassenbon, auf dem 3 Rechnungspunkte stehen. Also zB. 2 Bananan, 1 Pck. Milch und 1 Korb Weintrauben. Dann würde das in der Tabelle "Transaktionen" zu 1 neuen Eintrag führen und in der Tabelle "Buchungen" zu 3 Einträgen. Bei einer Transaktion, die aus einem einzigen Posten besteht, kommt es zu 1 neuen Eintrag bei den Transaktionen sowie 1 neuen Eintrag bei den Buchungen.
Deinem Verständnis zum Begriff 'Transaktion' entsprechend würde ich einfach nur triggern.
Nur die Cashflowart, also ob es sich um eine Einnahme oder Ausgabe handelt, existiert in _beiden_ Tabellen.
Das geht in einer Tab: Soll oder Haben.
Horst Zahlmeister