Hallo alle zusammen
Ich hoffe ihr könnt mir weiter helfen bei meiner Ferienhaus Datenbank und zwar soll bei Formular Vermietung nur die Samstage auswählbar
Nur Samstage sind auswählbar
Moderator: Moderatoren
Re: Nur Samstage sind auswählbar
Hallo synatic,
Du brauchst ein Listenfeld, das mit allen möglichen Datumsangaben bestückt wird - oder Du gibst einfach die Woche des Jahres an, aus der Du dann ein Datum bestimmst.
Beides wird nur über Makros zu erreichen sein, da Base (mit der internen HSQLDB) weder Schleifen in den Abfragen noch die Vorberechnung eines Datums bietet. Das einzige, was mit Abfragen möglich ist, ist die Kontrolle, ob es sich denn tatsächlich um einen Samstag bei dem Datum handelt:
SELECT DAYOFWEEK("Datum") FROM "Tabelle" → hierbei ist "7" der Samstag.
In meinen Datenbankanfängen habe ich so etwas darüber gelöst, dass ich in Calc eine Tabelle erstellt habe. Schreibe in A1 einer offenen Tabelle den 7.12.13 (ist der vergangene Samstag). Schreibe in A2 =A1+7. Markiere A2 und ziehe das Ganze einfach nach unten - in der 318. Zeile steht bei mir so der erste Samstag aus dem Jahr 2020. Jetzt die Spalte markieren, kopieren und als Tabelle in Base einfügen (Primärschlüssel erstellen lassen). Diese Spalte dient nur als Grundlage für das Listenfeld, aus dem so auch nur ein Samstag eingesetzt werden kann.
Klingt nach Handwerk, ist aber einfacher zu bewerkstelligen statt irgendetwas mit Makros zu versuchen.
Gruß
Robert
Du brauchst ein Listenfeld, das mit allen möglichen Datumsangaben bestückt wird - oder Du gibst einfach die Woche des Jahres an, aus der Du dann ein Datum bestimmst.
Beides wird nur über Makros zu erreichen sein, da Base (mit der internen HSQLDB) weder Schleifen in den Abfragen noch die Vorberechnung eines Datums bietet. Das einzige, was mit Abfragen möglich ist, ist die Kontrolle, ob es sich denn tatsächlich um einen Samstag bei dem Datum handelt:
SELECT DAYOFWEEK("Datum") FROM "Tabelle" → hierbei ist "7" der Samstag.
In meinen Datenbankanfängen habe ich so etwas darüber gelöst, dass ich in Calc eine Tabelle erstellt habe. Schreibe in A1 einer offenen Tabelle den 7.12.13 (ist der vergangene Samstag). Schreibe in A2 =A1+7. Markiere A2 und ziehe das Ganze einfach nach unten - in der 318. Zeile steht bei mir so der erste Samstag aus dem Jahr 2020. Jetzt die Spalte markieren, kopieren und als Tabelle in Base einfügen (Primärschlüssel erstellen lassen). Diese Spalte dient nur als Grundlage für das Listenfeld, aus dem so auch nur ein Samstag eingesetzt werden kann.
Klingt nach Handwerk, ist aber einfacher zu bewerkstelligen statt irgendetwas mit Makros zu versuchen.
Gruß
Robert