Base: Aufaddieren von Summen
Moderator: Moderatoren
-
- Beiträge: 5
- Registriert: Fr, 04.11.2011 20:38
Base: Aufaddieren von Summen
Guten Tag!
Ich benutze OpenOffice.org 3.3.0 auf einem Mac/OSX. Falls das wichtig ist.
So, nun zum Problem.
Ich habe eine Tabelle mit ID, Datum, Kontoart, Verwendungszweck, Einnahme, Ausgaben.
Eine Abfrage (mit Eingabe über die Parameterbox) für einen jeweiligem Zeitraum und Kontoart. Hier wird eine Summe gebildet durch Einnahme - Ausgaben. So weit, so gut.
Jetzt finde ich aber nirgendwo eine Erklärung, wie ich diese Summe bei jeder Buchung aufaddiere also einen Saldovortrag erzeuge. Vielleicht geht es ja nicht. Ich bin der Meinung, wenn, dann nur über den Bericht, den ich mit dem Oracle Report Builder erstelle.
Weiß da Eine/r Rat?
Im Voraus vielen Dank
Grüße
je ne regrette rien
Ich benutze OpenOffice.org 3.3.0 auf einem Mac/OSX. Falls das wichtig ist.
So, nun zum Problem.
Ich habe eine Tabelle mit ID, Datum, Kontoart, Verwendungszweck, Einnahme, Ausgaben.
Eine Abfrage (mit Eingabe über die Parameterbox) für einen jeweiligem Zeitraum und Kontoart. Hier wird eine Summe gebildet durch Einnahme - Ausgaben. So weit, so gut.
Jetzt finde ich aber nirgendwo eine Erklärung, wie ich diese Summe bei jeder Buchung aufaddiere also einen Saldovortrag erzeuge. Vielleicht geht es ja nicht. Ich bin der Meinung, wenn, dann nur über den Bericht, den ich mit dem Oracle Report Builder erstelle.
Weiß da Eine/r Rat?
Im Voraus vielen Dank
Grüße
je ne regrette rien
-
- Beiträge: 5
- Registriert: Fr, 04.11.2011 20:38
Re: Base: Aufaddieren von Summen
Guten Abend Robert,
vielen Dank für die schnelle Hilfe. Wenn ich alles Richtig gemacht habe, sehe ich jetzt aber den Gesamtsaldo. Ich benötige aber den Saldo nach jeder Buchung. Vielleicht verstehe ich aber auch etwas nicht richtig.
So sieht mein Bericht / Abfrage / Formular jetzt aus. Mit Breit und Kursiv sieht man was mir fehlt, außer meinem Verstand.
Nr - Datum - Konto - Verwendung - Einnahme - Ausgaben - Saldo
1 - 01.01.11 - Ohne - Kassenanfang - 300 - 0 - 300
2 - 15.01.11 - Einkauf - test - 0 - 200 - 100
3 - 30.01.2011 - Verkauf - test - 500 - 0 - 600
Ich hoffe, ich habe mich so ausgedrückt, das man es versteht.
Gibt es da auch eine Möglichkeit?
Danke im Voraus
Je ne regrette rien
vielen Dank für die schnelle Hilfe. Wenn ich alles Richtig gemacht habe, sehe ich jetzt aber den Gesamtsaldo. Ich benötige aber den Saldo nach jeder Buchung. Vielleicht verstehe ich aber auch etwas nicht richtig.
So sieht mein Bericht / Abfrage / Formular jetzt aus. Mit Breit und Kursiv sieht man was mir fehlt, außer meinem Verstand.
Nr - Datum - Konto - Verwendung - Einnahme - Ausgaben - Saldo
1 - 01.01.11 - Ohne - Kassenanfang - 300 - 0 - 300
2 - 15.01.11 - Einkauf - test - 0 - 200 - 100
3 - 30.01.2011 - Verkauf - test - 500 - 0 - 600
Ich hoffe, ich habe mich so ausgedrückt, das man es versteht.
Gibt es da auch eine Möglichkeit?
Danke im Voraus
Je ne regrette rien
-
- Beiträge: 5
- Registriert: Fr, 04.11.2011 20:38
Re: Base: Aufaddieren von Summen
Hallo Robert,
nochmals vielen Dank für Deine Mühe. Es funktioniert aber nicht. Also keine Fehlermeldung oder ähnliches. Es ergibt sich nur nicht die Summe. Wobei ich kurz nachfragen möchte woher die ID aus "Kasse" kommt.
Letztlich möchte ich deine Zeit gar nicht stehlen. Das ist ja eine Heidenarbeit. Beim googeln bin ich auf für mich unverständliche Sachen wie "Selfjoin" gestoßen. Wie dem auch sei, wenn Du oder jeder geneigte Forenbesucher eine Erklärung oder vielleicht Mitleid hat. Bin für Alles offen.
Grüße
je ne regrette rien
nochmals vielen Dank für Deine Mühe. Es funktioniert aber nicht. Also keine Fehlermeldung oder ähnliches. Es ergibt sich nur nicht die Summe. Wobei ich kurz nachfragen möchte woher die ID aus "Kasse" kommt.
Letztlich möchte ich deine Zeit gar nicht stehlen. Das ist ja eine Heidenarbeit. Beim googeln bin ich auf für mich unverständliche Sachen wie "Selfjoin" gestoßen. Wie dem auch sei, wenn Du oder jeder geneigte Forenbesucher eine Erklärung oder vielleicht Mitleid hat. Bin für Alles offen.
Grüße
je ne regrette rien
Re: Base: Aufaddieren von Summen
Aloha
Das kannst Du mit einer einfachen korrelierten Unterabfrage lösen - wenn Du mehrere Buchungen an einem Tag hast bzw. haben kannst, brauchst Du allerdings eine Timestamp-Spalte statt des Datums, um die Buchungen auch tatsächlich unterscheiden und anordnen zu können.
Zusätzliche Bedingungen, wie z.B. Kontoart musst Du dann entsprechend einbauen, sowohl in die korrelierte Unterabfrage, als auch in die äußere Abfrage.
Das kannst Du mit einer einfachen korrelierten Unterabfrage lösen - wenn Du mehrere Buchungen an einem Tag hast bzw. haben kannst, brauchst Du allerdings eine Timestamp-Spalte statt des Datums, um die Buchungen auch tatsächlich unterscheiden und anordnen zu können.
Code: Alles auswählen
SELECT
"a"."Nr", "a"."Datum", "a"."Konto", "a"."Verwendung", "a"."Einnahme", "a"."Ausgaben",
(SELECT SUM("Einnahme")-SUM("Ausgaben") FROM "meineTabelle" WHERE "Datum" <= "a"."Datum") AS "Saldo"
FROM
"meineTabelle" "a"
ORDER BY
"Datum" ASC
-
- Beiträge: 5
- Registriert: Fr, 04.11.2011 20:38
Re: Base: Aufaddieren von Summen
Guten Abend,
vielen Dank für die Unterstützung. Das mit dem Saldo klappt super. Natürlich bekomme ich es noch nicht hin, über die Parameterbox, Filter ein zu geben, aber das liegt wohl daran, dass ich das mit der Unterabfrage noch nicht verstanden habe. Gebe ich nämlich einfach den Code in die Abfrage ein, ändere das auf meine Tabelle, klappt es schon mit der Abfrage für das ganze Jahr. Nur den Zeitraum und die Art bekomme ich nicht gefiltert.
Dankende Grüße
je ne regrette rien
vielen Dank für die Unterstützung. Das mit dem Saldo klappt super. Natürlich bekomme ich es noch nicht hin, über die Parameterbox, Filter ein zu geben, aber das liegt wohl daran, dass ich das mit der Unterabfrage noch nicht verstanden habe. Gebe ich nämlich einfach den Code in die Abfrage ein, ändere das auf meine Tabelle, klappt es schon mit der Abfrage für das ganze Jahr. Nur den Zeitraum und die Art bekomme ich nicht gefiltert.
Dankende Grüße
je ne regrette rien
Re: Base: Aufaddieren von Summen
Aloha
Du musst die Parameter nur komplett gleich in die äußere Abfrage wie auch in die korrelierte Unterabfrage einbauen.
Du musst die Parameter nur komplett gleich in die äußere Abfrage wie auch in die korrelierte Unterabfrage einbauen.
Code: Alles auswählen
SELECT
"a"."Nr", "a"."Datum", "a"."Konto", "a"."Verwendung", "a"."Einnahme", "a"."Ausgaben",
(SELECT SUM("Einnahme")-SUM("Ausgaben") FROM "meineTabelle" WHERE "Datum" <= "a"."Datum" AND "Konto" = :Konto) AS "Saldo"
FROM
"meineTabelle" "a"
WHERE
"a"."Konto" = :Konto
ORDER BY
"Datum" ASC
-
- Beiträge: 5
- Registriert: Fr, 04.11.2011 20:38
Re: Base: Aufaddieren von Summen
Viele Dank an Alle.
Es funktioniert jetzt so wie ich es wollte. Ich denke auch, dass ich es sogar kapiert habe. Toll, dass Ihr euch so viel Mühe gemacht habt.
Grüße
je ne regrette rien
P.S. Sollte ich noch Fragen haben, werde ich Euch wieder belästigen!
Es funktioniert jetzt so wie ich es wollte. Ich denke auch, dass ich es sogar kapiert habe. Toll, dass Ihr euch so viel Mühe gemacht habt.
Grüße
je ne regrette rien
P.S. Sollte ich noch Fragen haben, werde ich Euch wieder belästigen!