[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Apr 2012
    Beiträge
    360

    Datumprüfung(wieder einmal)

    Hallo liebe Kollegen,

    ich habe ein Dec 6, 0 Feld.
    In den ersten 4 Stellen steht das Jahr und in den letzten beiden steht die Kalenderwoche.

    Wie kann ich hier eine Prüfung auf Gültigkeit einbauen?

    Mein Lösungsansatz wäre:
    Ich hätte erst die max. Kalenderwoche, über eine Datei, ermittelt und anschließend die KW geprüft.

    Ist das umständlich oder geht das "sauberer"?

    Dank im Voraus

    Tarki

  2. #2
    Registriert seit
    Aug 2001
    Beiträge
    2.873
    Was willst Du prüfen, ob die Eingabe JJJJ/KW korrekt ist?
    Oder willst Du das Ganze in ein Datum umrechnen?

    Ein Jahr kann 52 oder 53 Kalenderwochen haben. Also alle Eingaben zwischen 0 und 52 sind gültig.
    Muss also nur KW 53 geprüft werden.
    Kalenderwoche nach ISO-Richtlinien ist so definiert, dass die Woche immer mit dem Montag beginnt und die Mehrheit der Tage des neuen Jahres in KW 1 sind. Daraus folgt, dass der 04.Januar ist immer in KW1 ist.
    Du ziehst einfach vom 04.01. des Folge-Jahres 1 Woche (= 7 Tage) ab. Wenn Du die Kalenderwoche dieses Datums ermittelst kennst Du die letzte KW des Jahres.
    Die Kalenderwoche nach ISO-Richtlinien kannst Du über die SQL-Funktion WEEK_ISO ermitteln.

    Wenn Du allerdings eine Kalender-Datei hast, in der die KW "richtig" hinterlegt ist, kannst Du natürlich auch diese verwenden.

    Birgitta
    Birgitta Hauser

    Anwendungsmodernisierung, Beratung, Schulungen, Programmierung im Bereich RPG, SQL und Datenbank
    IBM Champion seit 2020 - 4. Jahr in Folge
    Birgitta Hauser - Modernization - Education - Consulting on IBM i

  3. #3
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Wie so häufig bzgl. Datumsroutinen, es wird immer wieder neu gerechnet.
    Die Beste Lösung ist hier immer noch die Kalenderdatei, die alle gewünschten Informationen und Formate sowie die dazugehörenden Indizes enthält, wenn etwas fehlt lässt es sich leicht ergänzen.
    Zusätzlich kann diese Datei/Tabelle auch in Joins für sinnvolle Abfragen/Eingrenzungen verwendet werden.
    Gültigkeitsprüfungen und Umrechnungen sind dann mittels simplen Chain/Select zu erledigen.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  4. #4
    Registriert seit
    Mar 2002
    Beiträge
    5.287
    - maximale Kalenderwioche des Jahres ist immer die KW vom 31.12.!!!
    - sinnhaftig ist weder dieses Datenbankfeld, noch jedwede nachgelagerte Prüfung!!! Auch wenn da 42 drin steht kann das ein Vertipper sein.

    D*B
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

  5. #5
    Registriert seit
    Nov 2004
    Beiträge
    325
    Moin Dieter,

    stimmt nicht, es ist der 28.12. eines Jahres (31.12.2014 ist KW01/2015!)

    mfg


    DKSPROFI

  6. #6
    Registriert seit
    Mar 2002
    Beiträge
    5.287
    ... ich weiß schon, dass es irgendwelche Bürokraten gibt, die da eigene Regeln aufstellen, der Verband der Geflügelzüchter sieht das wieder anders - auch Eierwoche genannt...
    D*B
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

  7. #7
    Registriert seit
    Nov 2004
    Beiträge
    325
    ... wie gut dass ich kein Geflügelzüchter bin.............


    mfg


    DKSPROFI

  8. #8
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Rein kalendarisch ist das schon korrekt:
    Die 1. gültige KW ist immer der 1.1., die letzte halt vom 31.12.
    Natürlich ist es korrekt, dass die Jahreszahl der KW vom 1.1 das Vorjahr sein kann sowie die des 31.12. halt die des Folgejahres.
    Dies löst eine Kalenderdatei eben auf.
    Wenn man sich schon mal mit den amerikanischen 5-4-4 oder 4-5-4 o.ä. "Fiscal"-Kalendern beschäftigen musste, kommt um eine Kalenderdatei einfach nicht herum.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  9. #9
    Registriert seit
    Aug 2001
    Beiträge
    2.873
    Dieter,

    Nimm mal einfach einen ganz gewöhnlichen Kalender, den Du in jedem Schreibwaren oder sonstigen Kaufhaus bekommst oder der Dir als Werbegeschenk am Jahresende nachgeschmissen wird und in dem die KW angegeben ist, und dann sieh Dir die KW an, in der der 31.12.2014 steht.

    Die Regel, nach der die KW nach ISO-Richtlinien ermittelt wird, lautet:
    1. Die KW beginnt immer mit Montag
    2. In KW 1 muss die Mehrheit der Tage aus dem neuen Jahr sein.

    Ich kann mir nicht vorstellen, dass im kaufmännischen Bereich die KW anders als nach ISO-Richtlinien verwendet wird.

    Außerdem solltest Du vorsichtig sein und den "Verband der Geflügelzüchter" nicht unterschätzen ...

    Birgitta
    Birgitta Hauser

    Anwendungsmodernisierung, Beratung, Schulungen, Programmierung im Bereich RPG, SQL und Datenbank
    IBM Champion seit 2020 - 4. Jahr in Folge
    Birgitta Hauser - Modernization - Education - Consulting on IBM i

  10. #10
    Registriert seit
    Jan 2007
    Beiträge
    905
    Kalender, den Du in jedem Schreibwaren oder sonstigen Kaufhaus bekommst oder der Dir als Werbegeschenk am Jahresende nachgeschmissen wird
    Birgitta,
    es geht noch viel einfacher, Outlook zeigt die KW auch bombensicher an, sofern man die Funktion aktiviert hat.

    Nachtrag @Baldur
    5-4-4 oder 4-5-4 o.ä.
    sieht fast nach einer taktischen Aufstellung der Fussball-Weltmeister aus
    kf

  11. #11
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Zu diesen 4-5-4-Kalendern kann man einiges nachlesen.
    Ins besonders da jede Firma den Start individuell festlegen kann und auch nicht 1 volles Jahr umfassen muss aber nicht mehr als 364 Tage umfassen darf. Für den Ausgleich gibt es dann eine "Schaltwoche".
    Dies ist ein wenig komplizierter als nur ein "verschobenes" Geschäftsjahr, wie es in Deutschland üblich ist.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  12. #12
    cbe is offline [professional_User]
    Registriert seit
    May 2005
    Beiträge
    392
    Dieses Thema wird auch in ferner Zukunft nicht gelöst sein...
    http://de.memory-alpha.org/wiki/Sternzeit
    http://startrek-forum.doena-soft.de/...hp/t-8480.html
    (Sorry, das musste einfach sein)

Similar Threads

  1. Suche eine Datumsfunktion und finde wieder einmal gar nichts
    By nico1964 in forum NEWSboard Programmierung
    Antworten: 12
    Letzter Beitrag: 16-02-15, 10:58
  2. und wieder ein SQL SELECT Problem...
    By a.wojcik in forum NEWSboard Programmierung
    Antworten: 6
    Letzter Beitrag: 27-02-14, 14:53
  3. Wie wird man eine JVM wieder los?
    By dschroeder in forum NEWSboard Programmierung
    Antworten: 7
    Letzter Beitrag: 27-11-13, 13:36
  4. Wieder 18,1" IBM TFT da!!! Drehbar, super!!
    By BSC Computervertrieb in forum NEWSboard Server & Hardware Markt
    Antworten: 0
    Letzter Beitrag: 08-02-03, 17:36
  5. Spools vom PC wieder auf AS
    By Pia in forum IBM i Hauptforum
    Antworten: 1
    Letzter Beitrag: 06-11-02, 09:03

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • You may not post attachments
  • You may not edit your posts
  •