BITTE helfen Sie uns HEUTE mit einer SPENDE
Helfen Sie das LibreOffice Forum zu erhalten!

❤️ DANKE >><< DANKE ❤️

> KEINE WERBUNG FÜR REGISTRIERTE BENUTZER!<
Ihre Spende wird für die Deckung der laufenden Kosten sowie den Erhalt und Ausbau 🌱 des LibreOffice Forums verwendet.
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗

Bericht aus zwei Datenquellen?

Base ermöglicht es Ihnen, Ihre Daten in einer Datenbank direkt mit LibreOffice zu bearbeiten.
Antworten
lufticus
Beiträge: 7
Registriert: So 28. Feb 2021, 00:46

Bericht aus zwei Datenquellen?

Beitrag von lufticus » So 28. Feb 2021, 01:39

Hallo in die Runde,

ein Veranstalter für Abenteueraktivitäten möchte eine tageweise Übersicht (ein Blatt pro Tag), welche seiner Kunden welche Aktivitäten genutzt haben. Dazu hat er zwei Tabellen: erstens eine Liste der Namen seiner Kunden und Tag(e), an denen sie bei ihm zu Besuch waren und zweitens eine Liste der (ca. 20) Aktivitäten mit Tagen, an denen sie genutzt wurden. Das Feld mit der gemeinsamen Eigenschaft ist also das Datum, das in einer "Merge-Tabelle" jeweils n:1 mit den beiden o.g. Tabellen in Beziehung steht.

An manchen Tagen hat der Veranstalter nur einen Kunden, der nahezu alle Aktivitäten nutzt. Am nächsten Tag bringt genau dieser Kunde einen Freund mit und sie nutzen andere Aktivitäten. Am darauf folgenden Tag kommt eine Rentergruppe, die nur zwei Aktivitäten nutzt usw. Aber: pro Tag hat der Veranstalter immer nur EINE Gruppe (1 bis 10 Personen), die er bei den Aktivitäten betreuen kann.

Wenn ich in LO Base eine Abfrage erstelle, in der ich alles (drei Tabellen: Kunden, Aktivitäten, Datum) zusammenführe, entstehen aus z.B. drei verschiedenen Aktivitäten und zwei Kunden an einem Tag sechs Zeilen. Wenn ich dann im Bericht für diese Abfrage nach Datum gruppiere, werden drei mal (je Aktivität) immer beide Personen aufgelistet. Ich möchte jedoch für z.B. diesen Tag im Bericht nur einmal beide Personen und - weiter unten an anderer Stelle - die drei Aktivitäten aufgelistet bekommen.

Hat jemand einen Lösungsansatz?

RobertG
Beiträge: 2732
Registriert: Sa 19. Mai 2012, 17:37
Kontaktdaten:

Re: Bericht aus zwei Datenquellen?

Beitrag von RobertG » So 28. Feb 2021, 08:06

So etwas kannst Du nur durch eine richtig konstruierte Abfrage lösen. Entweder Du gruppierst erst nach den Tagen und dann nach den Personen - dann hast Du die Termine alle der Person zugeordnet. Oder Du gruppierst nach den Terminen - dann taucht die Person gegebenenfalls öfter auf.

Noch einen Rat: Wenn Du die Abfrage halbwegs fertig hast, dann mache daraus eine Ansicht. Die verarbeitet der ReportBuilder grundsätzlich besser, weil er den SQL-Code nicht interpretieren muss.
https://de.libreoffice.org/get-help/documentation/
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=base_handbuch
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=xml_formulare

lufticus
Beiträge: 7
Registriert: So 28. Feb 2021, 00:46

Re: Bericht aus zwei Datenquellen?

Beitrag von lufticus » So 28. Feb 2021, 12:29

Ich weiß nicht, wie ich diese Abrage "richtiger konstruiert" als bisher erstellen soll...

Meinst Du die Gruppierung in der Abfrage oder dann im Bericht?

Doofe Frage: wie mache ich aus einer Abfrage eine Ansicht?

Wanderer
Beiträge: 895
Registriert: Di 11. Feb 2014, 20:03
Wohnort: Berlin

Re: Bericht aus zwei Datenquellen?

Beitrag von Wanderer » So 28. Feb 2021, 13:15

Vgl https://stackoverflow.com/questions/242 ... le-columns

Danach: Nach Person, Datum gruppieren sollte helfen.

Zur Umwandlung in Eine Ansicht: schau mal ins Kontextmenü der Abfrage (in der Liste der Abfragen in Base).

Mfg, Jörn
LO 6.0.7 (32Bit) Win8.1 Pro 32 Bit/ LO 6.3.2 Win10 64Bit / LO 6.0.7 Win7 Pro 64 Bit

lufticus
Beiträge: 7
Registriert: So 28. Feb 2021, 00:46

Re: Bericht aus zwei Datenquellen?

Beitrag von lufticus » So 28. Feb 2021, 13:58

Hm, eine Abfrage mittels GROUP BY x, y scheint mir momentan noch nicht so einleuchtend... Das verstehe ich nicht auf Anhieb... :roll:

RobertG
Beiträge: 2732
Registriert: Sa 19. Mai 2012, 17:37
Kontaktdaten:

Re: Bericht aus zwei Datenquellen?

Beitrag von RobertG » So 28. Feb 2021, 19:22

Die Gruppierung machst Du im Bericht.

Um es etwas klarer zu machen: Ich mache häufig aus allen Tabellen zusammen eine Ansicht, jeweils über Left JOIN, so dass mir keine Daten verloren gehen, falls eine Tabelle keine passenden Daten zum Datensatz einer anderen Tabelle hat.

Dann erstelle ich einen Bericht. Der basiert auf der Ansicht. Und dort gibt es die Grupperungs- und Sortierungsfunktion.

Schau gegebenenfalls im Handbuch das Kapitel zu den Berichten an.

Gruß

Robert
https://de.libreoffice.org/get-help/documentation/
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=base_handbuch
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=xml_formulare

lufticus
Beiträge: 7
Registriert: So 28. Feb 2021, 00:46

Re: Bericht aus zwei Datenquellen?

Beitrag von lufticus » So 28. Feb 2021, 20:25

Nee, ich brauche wohl einen Bericht, der pro Datum zwei verschiedene Abfragen anzeigt:
1) die Personen, die an diesem bestimmten Datum teilgenommen haben
2) die Aktivitäten, die an diesem bestimmten Datum durchgeführt wurden

(siehe Datei Wunsch_rptKundeAktivität
Wunsch_rptKundeAktivität.odt
(12.3 KiB) 96-mal heruntergeladen
)

Wenn ich von nur einer Abfrage (oder Ansicht davon) die Gruppierungen vornehme, wie es standartmäßig von LO Base angeboten wird, habe ich immer noch Redundanzen in dem Bericht (siehe Datei rptKundeAktivität
rptKundeAktivität.odt
(13.49 KiB) 96-mal heruntergeladen
).

RobertG
Beiträge: 2732
Registriert: Sa 19. Mai 2012, 17:37
Kontaktdaten:

Re: Bericht aus zwei Datenquellen?

Beitrag von RobertG » Mo 1. Mär 2021, 19:24

Wenn Dir die Daten zu den Kunden von der Gruppierung her wichtiger sind, dann ist natürlich so etwas wie der Name von der Gruppierung höher zu ziehen. Dann ordnest Du dem Kunden die Aktivitätenliste zu.

Ich sehe nach dem, wie ich das machen würde, keine Redundanz, weil eben die Aktivitäten oben stehen und die Kunden innerhalb der Aktivität sich nicht wiederholen.

Du kannst natürlich Aktivitäten in eine Gruppe zusammenziehen. Dann müssen aber alle, die in dieser Gruppierung stehen, auch alle diese Aktivitäten erledigen. Dann hoffe ich nur, dass Du nicht mit der HSQLDB arbeitest, denn da ist das Verfahren GROUP_CONCAT oder LIST nicht bekannt. Da müsstest Du ganz schöne Klimmzüge anfertigen, um das Gewollte zu erreichen.
https://de.libreoffice.org/get-help/documentation/
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=base_handbuch
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=xml_formulare

An alle, die das LibreOffice-Forum nutzen:


Bitte beteiligen Sie sich mit 7 Euro pro Monat und helfen uns bei unserem Budget für das Jahr 2024.
Einfach per Kreditkarte oder PayPal.
Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet.

❤️ Vielen lieben Dank für Ihre Unterstützung ❤️

Antworten