BITTE helfen Sie uns HEUTE mit einer SPENDE
Helfen Sie das LibreOffice Forum zu erhalten!
> 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. 🤗
Filter bei Formularen und Abfragen
Filter bei Formularen und Abfragen
Hallo,
ich habe hier einige Probleme mit der Filterfunktion von Base.
Nehmen wir an ich habe Kunde "A" mit dem Schlüssel "1" in einer separaten Tabelle, und möchte in einer anderen Tabelle "Projekte" arbeiten, die auf diesen Kunden verweist.
Möchte ich jetzt die Projekte von Kunde "A" im Formular suchen, muss ich in die Suchmaske "Kunde 1" eingeben. Anders in Abfragen, die ich in Formulare umwandle, da kann ich einfach nach "A" filtern, aber die Daten nicht bearbeiten.
Wie kann man das lösen?
ich habe hier einige Probleme mit der Filterfunktion von Base.
Nehmen wir an ich habe Kunde "A" mit dem Schlüssel "1" in einer separaten Tabelle, und möchte in einer anderen Tabelle "Projekte" arbeiten, die auf diesen Kunden verweist.
Möchte ich jetzt die Projekte von Kunde "A" im Formular suchen, muss ich in die Suchmaske "Kunde 1" eingeben. Anders in Abfragen, die ich in Formulare umwandle, da kann ich einfach nach "A" filtern, aber die Daten nicht bearbeiten.
Wie kann man das lösen?
Re: Filter bei Formularen und Abfragen
Arbeite besser mit einer separaten Filter-Tabelle. Werte in dieser Tabelle liest dann eine Abfrage aus, die Du auch bearbeiten kannst. Wie so etwas geht - auch ohne Makros – steht im Handbuch.
Wenn Du das Ganze direkt mit den Funktionen des Formulars lösen willst, dann geht das natürlich auch über eine editierbare Abfrage. Damit die Abfrage editierbar bleibt muss sie die Primärschlüsselfelder der betreffenden Tabellen enthalten.
Wenn Du das Ganze direkt mit den Funktionen des Formulars lösen willst, dann geht das natürlich auch über eine editierbare Abfrage. Damit die Abfrage editierbar bleibt muss sie die Primärschlüsselfelder der betreffenden Tabellen enthalten.
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
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=base_handbuch
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=xml_formulare
Re: Filter bei Formularen und Abfragen
Danke, aber jetzt muss ich einige Begrifflichkeiten klären:
Ist eine "Filter-Tabelle" ein Formular, das auf Grundlage einer Abfrage erstellt wurde?
Wie enthält die Abfrage die Primärschlüsselfelder der betreffenden Tabellen? Tut sie das nicht, wenn man in der Bearbeitungsansicht die entsprechenden Beziehungen setzt?
Ist eine "Filter-Tabelle" ein Formular, das auf Grundlage einer Abfrage erstellt wurde?
Wie enthält die Abfrage die Primärschlüsselfelder der betreffenden Tabellen? Tut sie das nicht, wenn man in der Bearbeitungsansicht die entsprechenden Beziehungen setzt?
Re: Filter bei Formularen und Abfragen
Lade Dir das Handbuch herunter. Da habe ich alles mögliche zu den Filter-Tabellen beschrieben.
1. Es wird eine Tabelle erstellt, die nur einen Datensatz speichern soll. Diese Tabelle ist die Filtertabelle. Primärschlüssel kann ein Ja/Nein-Feld sein. Mal angenommen der Name der Tabelle ist "tbl_Filter" und der Name des Primärschlüsselfeldes ist "ID".
Die Tabelle wird mit ID='ja' (einmal klicken) mit dem entscheidenden Datensatz versorgt.
2. Diese Filtertabelle wird durch ein "Nebenformular" mit Daten versorgt. Das heißt: Alle Werete, die in der Filtertabelle geändert werden sollen, sind auch als Felder in diesem Formular vorhanden. Das Formular ändert also nur den Datensatz mit ID='ja'.
3. Dein eigentliches Formular beruht bisher auf einer Tabelle? Dann wird das jetzt eine Abfrage:
Auf so einer Abfrage beruht also jetzt Dein eigentliches Formular. Ist in der Tabelle "tbl_Filter" ein Wert für das Feld "Fremdschlüssel_ID" vorhanden, dann werden nur die Daten zu diesem Schlüssel angezeigt. Sonst werden alle Daten angezeigt, die in "Tabelle"."Fremdschlüssel_ID" einen Inhalt haben.
1. Es wird eine Tabelle erstellt, die nur einen Datensatz speichern soll. Diese Tabelle ist die Filtertabelle. Primärschlüssel kann ein Ja/Nein-Feld sein. Mal angenommen der Name der Tabelle ist "tbl_Filter" und der Name des Primärschlüsselfeldes ist "ID".
Die Tabelle wird mit ID='ja' (einmal klicken) mit dem entscheidenden Datensatz versorgt.
2. Diese Filtertabelle wird durch ein "Nebenformular" mit Daten versorgt. Das heißt: Alle Werete, die in der Filtertabelle geändert werden sollen, sind auch als Felder in diesem Formular vorhanden. Das Formular ändert also nur den Datensatz mit ID='ja'.
3. Dein eigentliches Formular beruht bisher auf einer Tabelle? Dann wird das jetzt eine Abfrage:
Code: Alles auswählen
SELECT *
FROM "Tabelle"
WHERE "Fremdschlüssel_ID" = COALESCE(
(SELECT "Fremdschlüssel_ID" FROM "tbl_Filter" WHERE "ID" = TRUE),
"Fremdschlüssel_ID")
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
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=base_handbuch
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=xml_formulare
Re: Filter bei Formularen und Abfragen
Das mit den Filter-Formularen fand ich in diesem Video damals sehr verständlich vorgeführt:
https://youtu.be/Jy9CV1yD7ew
DU wählst sie mit aus.Wie enthält die Abfrage die Primärschlüsselfelder der betreffenden Tabellen?
Nimm 3 Felder ID, NAME, VORNAME in Tabelle TAB an, dann kann das Ergebnis von
Code: Alles auswählen
SELECT ID, NAME, VORNAME
Code: Alles auswählen
SELECT NAME, VORNAME
Relationen regeln die Verbindung zu weiteren Tabellen.
LO 6.0.7 (32Bit) Win8.1 Pro 32 Bit/ LO 6.3.2 Win10 64Bit / LO 6.0.7 Win7 Pro 64 Bit
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 ❤️