Seite 1 von 1

Dastellen von Base-Daten in Calc

Verfasst: Mo 24. Apr 2023, 15:21
von Susi93
Hallo,
ich habe da noch eine Frage zur Darstellung der Daten von Base in Calc, da mir das aus der Anleitung nicht ganz klar ist.

Über "Ansicht->Datenquellen" kann ich Tabellen und Abfragen aussuchen und sie in eine Calc-Tabelle einfügen.
Wie läuft das aber mit dem Filtern? Natürlich möchte ich nicht alle Daten der Datenbank wahllos in der Calc-Tabelle haben, sondern getrennt berechnen und über mehrere Tabellen verteilen.
Wie kann ich es einrichten, dass nur gefilterte Daten in Calc angezeigt und aktualisiert werden, wenn sie in Base geändert werden?

Re: Dastellen von Base-Daten in Calc

Verfasst: Mo 24. Apr 2023, 17:16
von Pit Zyclade
Ich verstehe nur "Bahnhof". Du arbeitest in Base, wo diese Menüs vorkommen. Was hat das mit calc zu tun? Hast du calc-Tabellen in Base eingebunden und bearbeitest diese in Base?
Oder was ist Sache?
Und was ist dein wirkliches Ziel? Einen Serienbrief mit einer Base-Datenbank? Da wird ohnehin dir noch einmal die Adresstabelle angezeigt und zum Filtern angeboten...

Re: Dastellen von Base-Daten in Calc

Verfasst: Mo 24. Apr 2023, 17:34
von F3K Total
Hallo Susi93,
du kannst die Daten in Base mit Abfragen oder Ansichten so filtern wie du es brauchst.
Auch Abfragen und Ansichten, letztere sind unter den Tabellen zu finden, kannst du über "Ansicht->Datenquellen" in eine Calc-Tabelle einfügen.
Es ist sogar möglich Calc als Formular eben der Datenbank zu nutzen.
Da kannst du ein auf einer Tabelle der Datenbank basierendes Filterfeld einrichten und hast dann alles auf einem Blatt.
BSP.:
F1.png
F1.png (66.58 KiB) 2618 mal betrachtet
Gruß R

Re: Dastellen von Base-Daten in Calc

Verfasst: Di 25. Apr 2023, 13:42
von Susi93
Ich habe z.B. eine Base-Datenbank für ein Haushaltsbuch erstellt, in der ich alle meine Ausgaben aufgezeichnet habe. Ich möchte diese in Calc darstellen, da es dort einfacher zu berechnen ist, oder überhaupt zu berechnen ist.
In der Base-Tabelle habe ich alle Ausgaben eingegeben. In Calc möchte ich sie sortiert so angeben, dass z.B. jede Tabelle einem Monat entspricht, oder die Ausgaben nach Art sortiert und getrennt zusammengerechnet werden.
Außerdem sollten sich diese Darstellungen immer mit der Base-Datenbank aktualisieren.
Wie kann ich so etwas hinbekommen?
Erstelle ich dafür verschiedene Abfragen?

Re: Dastellen von Base-Daten in Calc

Verfasst: Di 25. Apr 2023, 17:20
von F3K Total
Hallo Susi,
es führen natürlich viele Wege nach Rom, aber wenn du schon alle Ausgaben in Base eingegeben hast, dann solltest du die Auswertung auch in Base machen.
Und ja, in Abfragen oder auch in Ansichten kann man rechnen, dazu braucht man kein Calc.

Gruß R

Re: Dastellen von Base-Daten in Calc

Verfasst: Di 25. Apr 2023, 18:32
von Susi93
Schön, das zu lesen! Und wie kann ich das machen? Im Handbuch habe ich nichts gefunden...
Hoffentlich nicht über Makros. Ich habe mich da ein bisschen eingelesen, aber ohne Programmierkenntnisse kommt man da nicht weiter, und die kann ich mir auf die Schnelle nicht aneignen.

Re: Dastellen von Base-Daten in Calc

Verfasst: Mi 26. Apr 2023, 07:50
von Wanderer
Falls Du das Base-Handbuch von LibreOffice.org meinst, geht es da eher um die Beschaffung von Daten. An den Stellen, wo es um Rechnungserstellung geht, wird auch etwas gerechnet.

Wichtig: Rechnen tut die Datenbank, nicht "Base", das nur die Verbindung zwischen LibreOffice und der/den gewählten Datenbank(en) herstellt.

Einfaches Beispiel für eine Tabelle TAB mit den Spalten PRODUKT und PREIS:

Code: Alles auswählen

SELECT PRODUKT, PREIS, PREIS*1.19 AS BRUTTO FROM TAB
Programmierhinweis: Sind nur ganze Zahlen angegeben runden Datenbanken normalerweise auch das Ergebnis. Bei Divisionen also ggfs lieber den Dezimalpunkt mitschreiben:

Code: Alles auswählen

SELECT JAHRESBETRAG, JAHRESBETRAG/12.0 AS ABSCHLAG FROM TAB
Sortieren kansst Du in der Abfrage von der Datenbank erledigen lassen

Code: Alles auswählen

SELECT VORNAME, NAME FROM TAB ORDER BY NAME, VORNAME 
Wie immer kann die Welt beliebig kompliziert werden, wenn aus den Daten wieder hübsch lesbare Texte werden sollen:

Code: Alles auswählen

SELECT IFNULL(VORNAME || ' ', '') || NAME AS ADRESSZEILE1
FROM TAB ORDER BY NAME, VORNAME 
und nicht alle Datenbanken unterstützen || (dafür gibt es dann CONCAT() ) oder IFNULL (weshalb COALESCE() verwendet wird)

Dann gibt es noch Aggregatfunktionen wie SUM, COUNT, AVG mit denen man summieren, zählen oder Mittelwerte bestimmen kann, was in Kombination mit GROUP BY schon recht komplexe Abfragen ergeben kann.
Wenn ich mir mal wieder bei etwas nicht sicher bin füttere ich Google mit Datenbankname und Thema und lese nach, also z.B für die voreingestellte Datenbank bei Base
hsqldb aggregate functions
(Meist nutze ich aber Sqlite, MariaDB und dBase.)

Re: Dastellen von Base-Daten in Calc

Verfasst: Do 27. Apr 2023, 13:51
von Susi93
Es hat geklappt! Ich konnte erste einfache Rechnungen in der Abfrage durchführen, genau das, was ich brauche.
Mir fehlt es allerdings an Grundkenntnisse über SQL. Gibt es vielleicht ein Anfänger-Tutorial oder sonstige Quellen? Das Handbuch ist nicht so geeignet.

Re: Dastellen von Base-Daten in Calc

Verfasst: Fr 28. Apr 2023, 13:59
von Susi93
Ich habe mir jetzt einige Tutorials auf Youtube angesehen und einen groben Überblick bekommen.
Bloß habe ich immer noch keine Ahnung, wo ich derartige Befehle nachsehen kann.
Ist es auch möglich, eine Spalte in der Abfrage zu summieren?

Re: Dastellen von Base-Daten in Calc

Verfasst: Fr 28. Apr 2023, 14:34
von F3K Total
Aber sicher,

Code: Alles auswählen

Select SUM("Preis") AS "Summe" from "Tabelle"
... und nicht nur summieren, sondern dabei auch noch Gruppieren ist möglich, Beispiel:

Code: Alles auswählen

Select "Produktgruppe", SUM("Preis") AS "Summe" from "Tabelle" GROUP BY "Produktgruppe"
Hier bekommst du die Summe der Preise je Produktgruppe aufgelistet.

Gruß R