❤️ Helfen Sie noch heute, unser LibreOffice Forum zu erhalten! ❤️
Unterstützen Sie das LibreOffice-Forum und helfen Sie uns, unser Ziel für 2025 zu erreichen!

🍀 Jeder Beitrag zählt – vielen Dank für Ihre Unterstützung!🍀
Mit Ihrer Spende sichern Sie den Fortbestand, den Ausbau und die laufenden Kosten dieses Forums. 🌱


❤️ DANKE >> << DANKE ❤️

>> Dank Ihrer Unterstützung -> Keine Werbung für alle registrierten LibreOffice-Forum User! <<
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗

Klientendatenbank intern LO 5.2.7.2 Debian

Base ermöglicht es Ihnen, Ihre Daten in einer Datenbank direkt mit LibreOffice zu bearbeiten.
Antworten
Benutzeravatar
lasser
Beiträge: 5
Registriert: Mo 29. Okt 2018, 17:09

Klientendatenbank intern LO 5.2.7.2 Debian

Beitrag von lasser » Mo 29. Okt 2018, 18:01

Moin!
Ich bin dabei für das KT-Atelier meiner Frau eine kleine Klientendatenbank zu basteln. Wohlgemerkt basteln, weil ich von Datenbanken nicht wirklich viel Ahnung habe. Sind alles keine Fremdworte für mich, aber kompliziertere Dinge gehen schnell über meinen Horizont.
Das, was ich bisher zustande gestoppelt habe - im Prinzip die abgewandelte Beispiel-DB aus dem Handbuch - hänge ich mal an. Im letzten Datensatz findet sich dann auch die ausstehende Wunschliste mit vorerst 3 Punkten ;-)

Ich hoffe, es ist in Ordnung, wenn hier im thread alle 3 Punkte abgehandelt werden, auch wenn das u.U. ein wenig durcheinander gerät hier.
1. Alter der Klienten anzeigen
Reichen würde hier YEAR( NOW()) - YEAR( "Geburtsdatum")
Es soll im Hauptformular "Klienten" im Feld Alter angezeigt werden.
Grundsätzlich funktioniert das, siehe Formular "Abfrage_Klienten", dort kann ich durch die Klienten klicken und das jeweilige Alter wird korrekt angezeigt.
Wenn ich dieses Formular in das Hauptformular "Klienten" kopiere, wird dort zwar das Alter des 1. Klienten angezeigt, aber beim durchklicken durch die Klienten ändert sich in dem Feld nichts…

2. Eine Suche nach Nachnamen mittels Eingabefeld und "Such!"-Button.

3. Im Unterformular sollen die mit dem jeweiligen Klienten aus dem Hauptformular bereits abgehaltenen Termine angezeigt werden, und zwar auf 2 verschiedene Weisen: Einmal die Gesamtanzahl der Termine, und in einem 2. Feld die Anzahl passend zum gerade ausgewählten "genutzem Angebot". Also ein Klient war schon 12 mal da (1. Feld zeigt "12") und hatte dabei 3x Ausdrucksmalen und 9x Kunsttherapie. Bei Auswahl eines Termins mit "Angebot" Ausdrucksmalen soll im 2. Feld "3" erscheinen… naja, ihr wisst schon…
SQL kann ja selber die Anzahl der passenden Einträge zählen. Sowas wie SELECT COUNT(*) FROM tabelle WHERE ID-Klient = X, es braucht also nicht extra irgendwo was mitgezählt werden.

Ich bin mir nichtmal sicher, ob ich das, was gewünscht ist, hier richtig formuliert habe, geschweige denn, dass ich in der Lage wäre, das umzusetzen.
Ich habe aber den Eindruck, dass zumindest Punkt 1 und 3 ohne großes Hexenwerk auskommen, also ohne Makros…
Bei Punkt 2 bin ich völlig ratlos.

Ich hoffe auf eure Hilfe.

LG
Frank
Dateianhänge
Klienten-DB.zip
(19.69 KiB) 139-mal heruntergeladen

F3K Total
* LO-Experte *
Beiträge: 2501
Registriert: So 10. Apr 2011, 10:10

Re: Klientendatenbank intern LO 5.2.7.2 Debian

Beitrag von F3K Total » Mo 29. Okt 2018, 18:40

Hi,
habe jetzt keine Zeit mehr, aber zum ersten Problem:
Wenn du alle anderen Felder der Tabelle Klienten, neben der Berechnung des Alters in deine Abfrage Abfrage_Klienten einbaust, etwa so:

Code: Alles auswählen

SELECT "Klienten".*, YEAR( NOW( ) ) - YEAR( "Geburtsdatum" ) AS "Alter" FROM "Klienten"
, und dann diese Abfrage zur Datengrundlage deines Formulares MainForm machst, dann noch das Textfeld Alter in ein Formatiertes Feld umwandelst, kannst du das Alter diesem Feld zuordnen, und alles ist schick, siehe Anhang.
Lerne dringend den Formularnavigator kennen, da siehst du dann den Unterschied zwischen deiner und meiner Version.

Gruß R
Dateianhänge
Buntum-Test-3.zip
(20.73 KiB) 146-mal heruntergeladen
Windows 11: AOO, LO Linux Mint: AOO, LO

Benutzeravatar
lasser
Beiträge: 5
Registriert: Mo 29. Okt 2018, 17:09

Re: Klientendatenbank intern LO 5.2.7.2 Debian

Beitrag von lasser » Mo 29. Okt 2018, 19:18

Danke!
Auf den Trick mit der Abfrage wär ich nie gekommen.
Um ein bisschen Lerneffekt zu haben, habe ich versucht, das Ganze ohne Ansehen Deiner Version hinzukriegen. Und voilà :-)

Den Navigator benutze ich natürlich. Auch die Kontrollfelder…

Aber das nützt ja nix, wenn mir der grundsätzliche Überblick abgeht.

Also, Punkt 1 ist geklärt! :-)

LG
Frank

F3K Total
* LO-Experte *
Beiträge: 2501
Registriert: So 10. Apr 2011, 10:10

Re: Klientendatenbank intern LO 5.2.7.2 Debian

Beitrag von F3K Total » Mo 29. Okt 2018, 19:19

Hi,
Zum 2. Punkt empfehle ich dir meine Videotutorials, siehe meine Signatur, da gibt es dann auch was zum Filtern.
Gruß R
Windows 11: AOO, LO Linux Mint: AOO, LO

Benutzeravatar
lasser
Beiträge: 5
Registriert: Mo 29. Okt 2018, 17:09

Re: Klientendatenbank intern LO 5.2.7.2 Debian

Beitrag von lasser » Di 30. Okt 2018, 02:13

Ok, dank deiner HowTos über Parameter-Abfrage und Erstellen einer Suche mit Filter-Tabelle ist Punkt 2 auch erledigt. Kind of…

Es funktioniert richtig gut. Aber irgendwie ist das Wiederumschalten auf die Gesamtheit der Datensätze ein etwas umständlicher workflow: Klicken ins Suchfeld, Suchwort löschen, auf Schaltfläche "aktualisieren" klicken. Geht das nicht auch schneller mit 1 Aktion? Aber wenn nicht, auch nicht schlimm…

Und ich habe das Gefühl, dass Punkt 3 auch mit einer Parameter-Abfrage zu lösen wäre…Richtig?

LG
Frank
Dateianhänge
Klienten-DB.zip
aktualisierte DB mit Alters-Feld und Suche. Punkt 3 fehlt noch ;-)
(18.11 KiB) 141-mal heruntergeladen

F3K Total
* LO-Experte *
Beiträge: 2501
Registriert: So 10. Apr 2011, 10:10

Re: Klientendatenbank intern LO 5.2.7.2 Debian

Beitrag von F3K Total » Di 30. Okt 2018, 07:08

Moin,
nö, mit Parameterabfrage ist da nix nötig. Einfach zwei Abfragen mit COUNT() und GROUP BY, und dann an der richtigen Stelle als Grundlage von Unterformularen einbauen.

Gruß R
Dateianhänge
Buntum-Test-3.zip
(17.85 KiB) 128-mal heruntergeladen
Windows 11: AOO, LO Linux Mint: AOO, LO

F3K Total
* LO-Experte *
Beiträge: 2501
Registriert: So 10. Apr 2011, 10:10

Re: Klientendatenbank intern LO 5.2.7.2 Debian

Beitrag von F3K Total » Di 30. Okt 2018, 11:45

lasser hat geschrieben:
Di 30. Okt 2018, 02:13
... ein etwas umständlicher workflow:...
Das kann nur per Makro einfacher werden:
Eine Schaltfläche, auf dem Formular Filter, mit diesem Makro an "Aktion ausführen" gebunden:

Code: Alles auswählen

Sub Filter_Reset(Event)
    oFormFilter = Event.source.model.Parent
    oFormFilter.Columns.F_Nachname.updateNull
    oFormFilter.updateRow
    oFormFilter.reload
End Sub
könnte helfen.
Gruß R
Windows 11: AOO, LO Linux Mint: AOO, LO

Benutzeravatar
lasser
Beiträge: 5
Registriert: Mo 29. Okt 2018, 17:09

Re: Klientendatenbank intern LO 5.2.7.2 Debian

Beitrag von lasser » Di 30. Okt 2018, 15:18

Moin R,

mangels Abgabestelle für Kudos ein fettes DANKE!!!, sowohl für Deine Hilfe als auch die Videos und Deine Zeit.

Ich werde das Formular noch ein bisschen netter gestalten und dann hier zum Download anbieten. Vllt. stolpert ja jemand drüber, der's gebrauchen kann.

LG
Frank

Benutzeravatar
lasser
Beiträge: 5
Registriert: Mo 29. Okt 2018, 17:09

Re: Klientendatenbank intern LO 5.2.7.2 Debian

Beitrag von lasser » Fr 2. Nov 2018, 11:35

So, falls jemand eine kleine Klientendatenbank im Therapiebereich sucht, im Anhang ist eine zu finden. Gerne weiterentwickeln, gibt sicher Potential Richtung Rechnungswesen und Terminkalender ;-)

Vielen Dank für die Hilfe hier in diesem Forum.

LG
Frank
Dateianhänge
Klienten-Therapie-DB.zip
(22.42 KiB) 146-mal heruntergeladen


An alle, die das LibreOffice-Forum gern nutzen und unterstützen wollen:


Bitte helfen Sie uns mit 7 Euro pro Monat.
Durch Ihren Beitrag tragen Sie dazu bei, unsere laufenden Kosten für die kommenden Monate zu decken.
Unkompliziert per Kreditkarte oder PayPal.
Als ein kleines Dankeschön werden Sie im LO-Forum als SUPPORTER gekennzeichnet.



Antworten