Ich möchte in einer Datenbank die Anzahl der Tage eines jeweiligen Monats verwenden, indem ich in einem Dropdown (Feldname: Monat) den Monat auswähle und in einem Rechenfeld (Feldname: Tage) den Inhalt des betreffenden Feldes (Wertebereich 1-12) abfrage und als Anzahl der Tage (Wertebereich 28-31) ausgebe. Ein vereinfachter Versuch dazu sieht folgendermaßen aus, funktioniert aber nicht (mystischer Fehlercoder : Unbekanntes Symbol"")
IF (Monat = 1) OR (Monat = 3) OR (Monat = 5) OR (Monat = 7) OR (Monat = 8) OR (Monat = 10) OR (Monat = 12) THEN (31) ELSE
IF (Monat = 2) THEN (28)
ELSE (30)
auch dies geht nicht (anderer Fehlercode, genauso aussagekräftig)
IF ((Monat = 1) OR (Monat = 3) OR (Monat = 5) OR (Monat = 7) OR (Monat = 8) OR (Monat = 10) OR (Monat = 12)) THEN (31) ELSE
IF (Monat = 2) THEN (28)
ELSE (30)
Ich habe dazu leider im Forum und auch in der Hilfe nichts finden können
Das Problem ist mittlerweile behoben, ich weiß jedoch nicht genau, weshalb … denn den unten abgebildeten Code hatte ich mit geringfügigen Abweichungen im Zeilenumbruch bzw. mit mehr oder weniger Leerzeichen bereits in Verwendung. Wenn sich jemand auskennt und Zeit und Lust hat, mir zu erklären, nach welchen Konventionen der Formelinterpreter in PAP-BASE funktioniert, wäre ich ihm oder ihr sehr dankbar.
IF ((Monat = 1) OR (Monat = 3) OR (Monat = 5) OR (Monat = 7) OR (Monat = 8) OR (Monat = 10) OR (Monat = 12)) THEN (31)
ELSE IF ((Monat = 4) OR (Monat = 6) OR (Monat = 9) OR (Monat = 11)) THEN (30)
ELSE IF (Monat = 2) THEN (28)
Zu deiner Frage kann ich nichts sagen, zur dritten Zeile deiner Formel hier eine Ergänzung, da ja der Februar alle 4 Jahre 29 Tage hat und zwar in dem Jahr mit der Jahreszahl, die glatt durch 4 geteilt werden kann. (Dass alle 100 Jahre der 29. Februar ausfällt (z.B. 2100), alle 1000 Jahre aber nicht, siehe Jahr 2000, kann hier aber vernachlässigt werden …)
… IF Monat = 2 THEN (IF FRAC(YEAR/4) > 0 THEN ‘28’ ELSE ‘29’)