Unterformular Einbinden
Moderator: Moderatoren
Unterformular Einbinden
Hallo liebe Office Helfer,
ich habe mir eine Rezeptdatenbank erstellt die bisher auch gut funktionierte.
Nun will ich aber aus der ursprünglich einen Kategorien-spalte gleich vier machen.
Dazu habe ich nun ein neues Unterformular erstellt mit den vier Spalten. Aber die Abfrageverknüpfung bekomme ich einfach nicht in den Griff.
Ich hätte gern Folgende Reihenfolge:
„Rezept“ --- Notizen“ --- „Buch-Heftname“ --- „Kat“ --- „Datum“--- „SeitenNr“.
Aber wie kann ich nach Auswahl der Kategorie prüfen ob in einem der 4 Felder der Kategorienschlüssel stimmt?
Ich bitte um Hilfe
Detlev
ich habe mir eine Rezeptdatenbank erstellt die bisher auch gut funktionierte.
Nun will ich aber aus der ursprünglich einen Kategorien-spalte gleich vier machen.
Dazu habe ich nun ein neues Unterformular erstellt mit den vier Spalten. Aber die Abfrageverknüpfung bekomme ich einfach nicht in den Griff.
Ich hätte gern Folgende Reihenfolge:
„Rezept“ --- Notizen“ --- „Buch-Heftname“ --- „Kat“ --- „Datum“--- „SeitenNr“.
Aber wie kann ich nach Auswahl der Kategorie prüfen ob in einem der 4 Felder der Kategorienschlüssel stimmt?
Ich bitte um Hilfe
Detlev
- Dateianhänge
-
- Kategorien.png (28.24 KiB) 3384 mal betrachtet
Re: Unterformular Einbinden
Hallo Dtlev,
ich versuchs einmal, auch wenn ich mir nicht klar bin, ob ich überhaupt kapiert habe, worauf Du hinaus willst:
In "Rezepte..." stehen (als "Kategorien") Fremdschlüssel der Tabelle "Kat". Du willst wissen, ob der gleiche Schlüsselwert für den gleichen "Rezepte..."-Datensatz in einer der "Block-Kategorien" schon existiert?
SELECT "Rezepte..."."ID" FROM "Rezepte...", "Block..." WHERE "Rezepte..."."ID" = "Block..."."ID" AND ("Rezepte..."."Kategorien" = "Block..."."Kat-Block1" OR "Rezepte..."."Kategorien" = "Block..."."Kat-Block2" OR ...)
Haben die Kategorien bisher tatsächlich nichts miteinander zu tun, dass Du aus einer Kategorie 4 Kategorien machen willst? Oder soll das eher in die Richtung "Hauptkategorie" → "Unterkategorie" gehen? Dann wäre so ein Aufbau, wie in der Abfrage zu sehen, für die Block-Kategorien falsch.
Gruß
Robert
ich versuchs einmal, auch wenn ich mir nicht klar bin, ob ich überhaupt kapiert habe, worauf Du hinaus willst:
In "Rezepte..." stehen (als "Kategorien") Fremdschlüssel der Tabelle "Kat". Du willst wissen, ob der gleiche Schlüsselwert für den gleichen "Rezepte..."-Datensatz in einer der "Block-Kategorien" schon existiert?
SELECT "Rezepte..."."ID" FROM "Rezepte...", "Block..." WHERE "Rezepte..."."ID" = "Block..."."ID" AND ("Rezepte..."."Kategorien" = "Block..."."Kat-Block1" OR "Rezepte..."."Kategorien" = "Block..."."Kat-Block2" OR ...)
Haben die Kategorien bisher tatsächlich nichts miteinander zu tun, dass Du aus einer Kategorie 4 Kategorien machen willst? Oder soll das eher in die Richtung "Hauptkategorie" → "Unterkategorie" gehen? Dann wäre so ein Aufbau, wie in der Abfrage zu sehen, für die Block-Kategorien falsch.
Gruß
Robert
Re: Unterformular Einbinden
Hallo Robert,
vielen vielen Dank dass Du mir helfen tust. Ich versuche mal mich besser und verständlicher aus zu drücken.
Ich glaube ich bin das ganze von einer wohl falschen Empfehlung angegangen.
In der neuen Tabelle kommt glaube ich mehr Licht ins Dunkel.
Erst mal eins der bis jetzt 6 Bücher bzw. Hefte der Reihe nach anwählen.
In diesem eine der bisher 20 Kategorien der Reihe nach auswählen.
Schauen ob in einen der vier Blöcke eine Übereinstimmung ist.
Wenn ja, dann nach Datum sortieren und schließlich noch nach Seitennummer sortieren.
Aber die Funktionen und Kriterien in die richtige Reihenfolge zu setzen fällt mir unheimlich schwer.
Ohne die Blöcke abzufragen hatte ich ja schon und war so auch zufriedenstellend
Könntest Du mir Bitte weiter helfen?
Tschüß
Detlev
vielen vielen Dank dass Du mir helfen tust. Ich versuche mal mich besser und verständlicher aus zu drücken.
Ich glaube ich bin das ganze von einer wohl falschen Empfehlung angegangen.
In der neuen Tabelle kommt glaube ich mehr Licht ins Dunkel.
Erst mal eins der bis jetzt 6 Bücher bzw. Hefte der Reihe nach anwählen.
In diesem eine der bisher 20 Kategorien der Reihe nach auswählen.
Schauen ob in einen der vier Blöcke eine Übereinstimmung ist.
Wenn ja, dann nach Datum sortieren und schließlich noch nach Seitennummer sortieren.
Aber die Funktionen und Kriterien in die richtige Reihenfolge zu setzen fällt mir unheimlich schwer.
Ohne die Blöcke abzufragen hatte ich ja schon und war so auch zufriedenstellend
Könntest Du mir Bitte weiter helfen?
Tschüß
Detlev
- Dateianhänge
-
- Kategorien2.png (31.14 KiB) 3352 mal betrachtet
Re: Unterformular Einbinden
Hallo Detlev,
ohne vorliegende Datenbank ist das etwas schwieriger. Ich versuche es einmal - aber wieder im SQL-Code.
Die Auswahl trifft nur die Datensätze, bei denen "Kategorien" und eins der 4 Felder gleich ist (oder auch mehrere ...).
Die Auswahl ist der Reihenfolge nach sortiert: zuerst das heft, dann die Kategorie, dann das Datum, dann die Seite.
Das müsste eigentlich Deinem Vorhaben entsprechen. Wie das letztlich in der grafischen Benutzeroberfläche aussieht habe ich jetzt nicht getestet. Du musst also bei einer (neuen) Abfrage auf die direkte Eingabe des SQL-Befehls umschalten (Symbol mit dem Dreieck -grafischer Modus aus).
Gruß
Robert
ohne vorliegende Datenbank ist das etwas schwieriger. Ich versuche es einmal - aber wieder im SQL-Code.
Code: Alles auswählen
SELECT "Buch-Heftname".*, "RezepteDatenImport".*, "Kat".* FROM "Buch-Heftname", "RezepteDatenImport", "Kat"
WHERE "Buch-Heftname"."ID" = "RezepteDatenImport"."ID-Buch-Heft" AND "Kat"."ID" = "RezepteDatenImport"."Kategorien"
AND ("RezepteDatenImport"."Kat-Block1" = "RezepteDatenImport"."Kategorien" OR "RezepteDatenImport"."Kat-Block2" = "RezepteDatenImport"."Kategorien"
OR "RezepteDatenImport"."Kat-Block3" = "RezepteDatenImport"."Kategorien" OR "RezepteDatenImport"."Kat-Block4" = "RezepteDatenImport"."Kategorien")
ORDER BY "Buch-Heftname"."Buch-Heft", "Kat"."Kategorien", "RezepteDatenImport"."Datum", "RezepteDatenImport"."SeitenNr"
Die Auswahl ist der Reihenfolge nach sortiert: zuerst das heft, dann die Kategorie, dann das Datum, dann die Seite.
Das müsste eigentlich Deinem Vorhaben entsprechen. Wie das letztlich in der grafischen Benutzeroberfläche aussieht habe ich jetzt nicht getestet. Du musst also bei einer (neuen) Abfrage auf die direkte Eingabe des SQL-Befehls umschalten (Symbol mit dem Dreieck -grafischer Modus aus).
Gruß
Robert
Re: Unterformular Einbinden
Hallo Robert,
leider kam so keine Anzeige zu stande.
Ich habe mal meine alte Datenbank in gekürzter nur 20 Datensätzen fassenden Version angehängt.
Nur Kat-Block1 war zuvor mit Kategorie beschriftet.
Danke für Deine Mühe.
Tschüß
Detlev
leider kam so keine Anzeige zu stande.
Ich habe mal meine alte Datenbank in gekürzter nur 20 Datensätzen fassenden Version angehängt.
Nur Kat-Block1 war zuvor mit Kategorie beschriftet.
Danke für Deine Mühe.
Tschüß
Detlev
- Dateianhänge
-
- RezeptverwRobertHilfe.odb
- (7.17 KiB) 60-mal heruntergeladen
Re: Unterformular Einbinden
Hallo Detlev,
die Datenbank, die Du beigefügt hattest, entspricht vom Tabellenaufbau nicht der, die Du in den Screenshots gezeigt hast. Da ist ja gar keine Verbindung mehr zu "Kategorien" drin. Jetzt hat eine Spalte lauter Fremdschlüsselwerte, die vom Prinzip her auf Kategorien zutreffen. Ich vermute einfach, dass ich Dein Anliegen längst noch nicht verstanden habe. Ich habe jetzt einfach einmal eine Abfrage erstellt, die für die beiden ersten Felder "Kat-Block" überprüft, ob in den Feldern eine entsprechende Kategorie vorhanden ist.
Gruß
Robert
die Datenbank, die Du beigefügt hattest, entspricht vom Tabellenaufbau nicht der, die Du in den Screenshots gezeigt hast. Da ist ja gar keine Verbindung mehr zu "Kategorien" drin. Jetzt hat eine Spalte lauter Fremdschlüsselwerte, die vom Prinzip her auf Kategorien zutreffen. Ich vermute einfach, dass ich Dein Anliegen längst noch nicht verstanden habe. Ich habe jetzt einfach einmal eine Abfrage erstellt, die für die beiden ersten Felder "Kat-Block" überprüft, ob in den Feldern eine entsprechende Kategorie vorhanden ist.
Gruß
Robert
- Dateianhänge
-
- RezeptverwRobertHilfe.odb
- (7.27 KiB) 54-mal heruntergeladen
Re: Unterformular Einbinden
Hallo Robert,
noch mal ein Bild zum besseren Verständnis.
Wird z.B. Die Kategorie 2=Vorspeisen abgefragt, und in einem der vier Blöcke kommt eine 2 vor, so soll der Datensatz ausgegeben werden.
Kommt aber in einem der vier Blöcke auch noch eine 11 vor, So sollte der gleiche Datensatz auch noch einmal bei der Kategorie 11=Eier augegeben werden.
noch mal ein Bild zum besseren Verständnis.
Wird z.B. Die Kategorie 2=Vorspeisen abgefragt, und in einem der vier Blöcke kommt eine 2 vor, so soll der Datensatz ausgegeben werden.
Kommt aber in einem der vier Blöcke auch noch eine 11 vor, So sollte der gleiche Datensatz auch noch einmal bei der Kategorie 11=Eier augegeben werden.
- Dateianhänge
-
- RezeptverwRobertHilfe.odb
- Geänderte Datenbank
- (8.6 KiB) 50-mal heruntergeladen
-
- Neue Erklärung
- RobertsHilfe.png (71.05 KiB) 3306 mal betrachtet
Re: Unterformular Einbinden
Hallo Detlev,
schau einmal in Abfrage2 nach, ob das jetzt in die richtige Richtung geht.
Problem der ganze Sache ist, dass Du einen Datensatz mehrmals wiedergeben willst.
Wenn das passt: Die Filterung nach der jeweiligen Kategorie erfolgt über die Tabelle "Filter". Dort kannst Du unterschiedliche Werte eingeben. Das Ganze wäre über ein Formular mit einem Listenfeld zu den Kategorien zu bewerkstelligen.
Gruß
Robert
schau einmal in Abfrage2 nach, ob das jetzt in die richtige Richtung geht.
Problem der ganze Sache ist, dass Du einen Datensatz mehrmals wiedergeben willst.
Wenn das passt: Die Filterung nach der jeweiligen Kategorie erfolgt über die Tabelle "Filter". Dort kannst Du unterschiedliche Werte eingeben. Das Ganze wäre über ein Formular mit einem Listenfeld zu den Kategorien zu bewerkstelligen.
Gruß
Robert
- Dateianhänge
-
- RezeptverwRobertHilfe(1).odb
- (8.26 KiB) 59-mal heruntergeladen
Re: Unterformular Einbinden
Hallo zusammen,
eine Frage: Möchte lokgeist schlicht einem Rezept mehrere Kategorien zuordnen?
Wenn dem so ist, wäre dann nicht ein m:n Ansatz, mit Verbindungstabelle, ID_Rezept<->ID_Kategorie, der richtigere Ansatz?
Gruß R
eine Frage: Möchte lokgeist schlicht einem Rezept mehrere Kategorien zuordnen?
Wenn dem so ist, wäre dann nicht ein m:n Ansatz, mit Verbindungstabelle, ID_Rezept<->ID_Kategorie, der richtigere Ansatz?
Gruß R
- miniKasse MMove 1.0.6 Base Videotutorial
- Windows 11: AOO, LO Linux Mint: AOO, LO
Re: Unterformular Einbinden
Hallo R,
ich rätsele auch noch daran herum. Scheint mir aber auch so. Eigentlich soll ein Rezept mit Zutaten und Seiten, wo es zu finden ist, da sein. Mit der Verbindungstabelle zu n:m hast Du völlig recht.
Gruß
Robert
ich rätsele auch noch daran herum. Scheint mir aber auch so. Eigentlich soll ein Rezept mit Zutaten und Seiten, wo es zu finden ist, da sein. Mit der Verbindungstabelle zu n:m hast Du völlig recht.
Gruß
Robert
Re: Unterformular Einbinden
Hallo zusammen,
ich habe mal jetzt noch das funktionierende Formular mit eingefügt. Halt ohne die KatBlöcke 2-4.
die sind ja mein Problem.
Eventuell hilft das Formular mehr zum besseren Verständnis.
Tschüß
Detlev der Lokgeist
ich habe mal jetzt noch das funktionierende Formular mit eingefügt. Halt ohne die KatBlöcke 2-4.
die sind ja mein Problem.
Eventuell hilft das Formular mehr zum besseren Verständnis.
Tschüß
Detlev der Lokgeist
- Dateianhänge
-
- RezeptverwRobertHilfe.odb
- (77.42 KiB) 63-mal heruntergeladen
Re: Unterformular Einbinden
Hallo,
habe mal die Kategorienzuordnung in eine Verbindungstabelle getan. Jetzt kannst Du jedem Gericht im Kategorie-Tabellenkontrollfeld beliebig viele Kategorien zuordnen.
Ausserdem habe ich ein Kategorie-Suchfeld eingebaut.
Erst eine Katagorie auswählen dann "Kategorie suchen" drücken.
Nimmst Du den obersten Eintrag (leer), und drückst "Kategorie suchen", siehst Du wieder alle Rezepte.
Viel Spaß damit
Gruß R
habe mal die Kategorienzuordnung in eine Verbindungstabelle getan. Jetzt kannst Du jedem Gericht im Kategorie-Tabellenkontrollfeld beliebig viele Kategorien zuordnen.
Ausserdem habe ich ein Kategorie-Suchfeld eingebaut.
Erst eine Katagorie auswählen dann "Kategorie suchen" drücken.
Nimmst Du den obersten Eintrag (leer), und drückst "Kategorie suchen", siehst Du wieder alle Rezepte.
Viel Spaß damit
Gruß R
- Dateianhänge
-
- RezeptverwRobertHilfe_F3K.odb
- (79.92 KiB) 76-mal heruntergeladen
- miniKasse MMove 1.0.6 Base Videotutorial
- Windows 11: AOO, LO Linux Mint: AOO, LO
Re: Unterformular Einbinden
Hallo F3K Total,
vielen vielen Dank.
Es funktioniert, toll.
Aber wo bleiben die Einträge bei Kategorien versteckt? Ich finde sie in keiner Tabelle und doch sind sie da.
Wo liegt das Geheimnis?
Danke an Euch alle die sich meinem Problem angenommen hatten
Tschüß
Detlev
vielen vielen Dank.
Es funktioniert, toll.
Aber wo bleiben die Einträge bei Kategorien versteckt? Ich finde sie in keiner Tabelle und doch sind sie da.
Wo liegt das Geheimnis?
Danke an Euch alle die sich meinem Problem angenommen hatten



Tschüß
Detlev
Re: Unterformular Einbinden
Moin,
die Kategorie_ID ist der Rezept_ID in der Verbindungstabelle REZEPTE_KATEGORIEN zugeordnet.
Beispiel, Zeilen 1-3
Heißt nichts weiter als dass
die Kategorie_ID ist der Rezept_ID in der Verbindungstabelle REZEPTE_KATEGORIEN zugeordnet.
Beispiel, Zeilen 1-3
Code: Alles auswählen
FK_ID_REZEPT FK_ID_KATEGORIE
1 16
2 9
2 16
- die Kategorie 16 (Hackfleisch-Gerichte) dem Rezept 1 (Hackrolle Cordonbleu)
- die Kategorie 9 (Gemüse) dem Rezept 2 (Herzhafte Räuberpastete)
- die Kategorie 16 (Hackfleisch-Gerichte) dem Rezept 2 (Herzhafte Räuberpastete) zugeordnet sind.
- usw.
- miniKasse MMove 1.0.6 Base Videotutorial
- Windows 11: AOO, LO Linux Mint: AOO, LO
Re: Unterformular Einbinden
Hallo,
noch mals vielen Dank.
Jetzt hab ichs auch gefressen.
Ich hatte es nicht gesehen das sich ja in der Spalte FK_ID_REZEPT die Einträge wiederholen.
Tschüß
Detlev der Lokgeist
noch mals vielen Dank.
Jetzt hab ichs auch gefressen.
Ich hatte es nicht gesehen das sich ja in der Spalte FK_ID_REZEPT die Einträge wiederholen.
Tschüß
Detlev der Lokgeist