Base Berichte

Datenbanklösungen mit AOO/LO

Moderator: Moderatoren

Spyro
Beiträge: 3
Registriert: Sa, 04.06.2016 21:33

Base Berichte

Beitrag von Spyro »

Hallo Sehr geehrte Forengemeinde,

ich arbeite gerade an einer Datenbank, in der man neben Kunden-, Mitarbeiter- und Auftragverwaltung auch über Berichte eine Monatsabrechnung für einen Kunden erstellen soll, die die entsprechenden Aufträge anzeigt, sowie Preis jeden einzelnen Auftrag auflistet. Das funktioniert soweit über einen Bericht der sich auf eine Abfrage (Test) bezieht.

Nun komme ich zu meinem eigentlichen Problem, an dem ich leider nicht weiter weiß und hoffnungsvoll diesen Forenbeitrag verfasse.
Der Bericht soll die jeweiligen Preise Addieren und natürlich als Endsumme ausgeben. Zudem soll von der Endsumme die Umsatzsteuer berechnet und ebenfalls ausgegeben werden. Zu guter Letzt soll noch eine Rechnungsnummer generiert, eingesetzt und gespeichert werden. Leider weiß ich nicht in welcher Tabelle diese Rechnungsnummer am idealsten gespeichert werden soll. :shock:

Angehängt habe ich die .odb Datei. Ich würde mich über Tipps und Verbesserungen freuen. Bitte so simpel wie möglich, dass es auch ein Laie wie ich das ganze durchschaut :o

Danke vielmals
Dateianhänge
Verwaltung2.odb
(95.27 KiB) 151-mal heruntergeladen
RobertG
********
Beiträge: 2033
Registriert: Fr, 13.04.2012 19:28
Kontaktdaten:

Re: Base Berichte

Beitrag von RobertG »

Hallo Spyro,

Du nutzt nicht den Report-Builder. In der Berichtsversion, die Du in Deiner Datenbankdatei erstellt hast, ist eine Summierung z.B. zum Berichtsende nicht möglich. Du kannst lediglich das ausgeben, was Du bereits in der dem Bericht zugrundeliegenden Abfrage berechnest.

Berichte, wie Du sie erstellst, können so in der Regel nur noch über OpenOffice und AOO erstellt werden. Die aktuellen Fassungen von LibreOffice haben den Report-Builder als Standardmodul dabei. Da kann dann so ein alter Tabellenbericht standardmäßig nur ausgeführt, aber nicht neu erstellt werden.

Ich würde Dir raten, den Report-Builder (extension) zu installieren. Dann können Dir hier sicher mehr Personen helfen.

Gruß

Robert
Spyro
Beiträge: 3
Registriert: Sa, 04.06.2016 21:33

Re: Base Berichte

Beitrag von Spyro »

Hallo RobertG,

vielen Dank für diesen Tipp! Dadurch haben sich viele Fragen erledigt. Nun möchte ich aber noch eine Rechnungsnummer generieren, die auf den Bericht geschrieben werden soll und natürlich auch gespeichert werden kann. Später soll man die Rechnungsnummer verwenden können, um zu sehen welche Aufträge mit der Rechnung abgerechnet wurden. Habe es bereits mit einem Insert Befehl in der Abfrage probiert, was wohl nicht funktioniert, weil die Abfrage nur Daten aus den Tabellen zieht.
Wäre über über mögliche Ansätze und Tipps sehr froh!

Grüße Spryro
RobertG
********
Beiträge: 2033
Registriert: Fr, 13.04.2012 19:28
Kontaktdaten:

Re: Base Berichte

Beitrag von RobertG »

Hallo Spyro,

die Rechnungsnummer würde ich aus festen Elementen der zugrundeliegenden Tabellen zusammenstellen. Wenn Du z.B. einen Primärschlüssel als Autowert hast, dann ist dieser dafür prädestiniert: Keine Nummer ist gleich der anderen.

Du kannst auch so einen Autowert zusammen mit anderen Feldern zu einer Rechnungsnummer machen. Angenommen, Du hast ein Feld "ID" und ein Feld "Datum" in Deiner Tabelle. Dann könntest Du mit

Code: Alles auswählen

SELECT YEAR("Datum")||"ID" AS "Rechnungsnummer" FROM "Tabelle"
Rechnungsnummern darstellen. Du kannst auch führende Nullen vor die ID setzen. Ich würde für die Nummer auf keinen Fall einen gesonderten Wert eintragen - macht nur zusätzlich Arbeit.

Gruß

Robert
Spyro
Beiträge: 3
Registriert: Sa, 04.06.2016 21:33

Re: Base Berichte

Beitrag von Spyro »

Danke RobertG,

diese Idee hatte ich auch. Nur weiß ich nicht wo ich da ansetzen soll, wenn das alles passieren soll sobald ich den Bericht erstelle mit der Abfragenbedingung.

Gruß
RobertG
********
Beiträge: 2033
Registriert: Fr, 13.04.2012 19:28
Kontaktdaten:

Re: Base Berichte

Beitrag von RobertG »

Hallo Spyro,

Du erstellst den Bericht auf der Basis einer Abfrage (oder auch einer Ansicht). Diese Abfrage editierst Du in der SQL-Ansicht wie beschrieben.

Du hast in Deiner Datenbank die Tabelle "Auftrag". Diese Tabelle hast Du ja bereits an anderer Stelle auch in Abfragen eingebunden.

Code: Alles auswählen

YEAR("Auftrag"."A_Datum")||"Auftrag"."A_ID" AS "Rechnungsnummer"
Wird dann zu der Rechnungsnummer.
Besser mit Nullen ausfüllen und mit einem Bindestrich trennen:

Code: Alles auswählen

YEAR("Auftrag"."A_Datum")||'-'||RIGHT('00000'||"Auftrag"."A_ID",6) AS "Rechnungsnummer"
Bei Deinen Abfragen hast Du der Tabelle "Auftrag" aber anscheinend immer einen Alias zugewiesen. Da musst Du dann eben auch in den obigen Code den Alias einbauen.

Gruß

Robert
Antworten