[NEWSboard IBMi Forum]

Hybrid View

  1. #1
    Registriert seit
    Feb 2001
    Beiträge
    20.696
    ... between current date - 7 days and current date ...

    now() = current date
    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

  2. #2
    Registriert seit
    Jan 2008
    Beiträge
    58
    Danke, Fuerchau für die prompte Antwort.
    Habe ich gerade ausprobiert, leider mit dem gleichen Ergebnis.
    Ich denke es liegt an dem CAST:
    date( concat(concat(substr(digits(ADATUM), 1, 2), '.'),
    concat(concat(substr(digits(ADATUM), 3, 2), '.'),
    substr(digits(ADATUM), 5, 2)) ))
    Aber wieso geht das interaktiv ?

  3. #3
    Registriert seit
    Feb 2001
    Beiträge
    20.696
    Ah ja, du musst ein gültiges Datumsformat angeben, dass dem SQL-Datumsformat entspricht (set option datfmt=...).
    Die H-Bestimmung hat damit nichts zu tun.

    Die date-Funktion erkennt zwar viel, aber manchmal hapert es da doch.
    Funktionieren tut immer das ISO-Format JJJJ-MM-TT unabhängig von jedweder Job-Einstellung.
    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
    Nov 2003
    Beiträge
    2.403
    Kleiner Tipp zum CONCAT: Anstelle der Funktion CONCAT(a, b) kann auch der CONCAT-Operator "a CONCAT b" benützt werden. Dadurch werden mehrere verschachtelte CONCATs übersichtlicher.

  5. #5
    Registriert seit
    Aug 2001
    Beiträge
    2.928
    Hallo,

    das Problem ist, dass das Jahr in deinem Datums-Feld nur 2-stellig ist. Damit SQL einen alphanumerischen String in ein Datum verwandeln kann, ist ein 4-stelliges Jahr erforderlich!
    Das ISO-Format ist 'JJJJ-MM-TT'. Dein Format ist TT.MM.JJ.

    Versuch's mal wie folgt:

    PHP-Code:
    Date(Substr(Digits(ADatum), 12concat '.' concat  
         Substr
    (Digits(ADatum), 32concat '.' concat  
         
    Case When Substr(Digits(ADatum), 52) > '40'   
              
    Then '19' Else '20' End             
         Concat Substr
    (Digits(ADatum), 52
    Interaktiv funktioniert es deshalb, weil Dein Job-Format vermutlich DMY ist. Auch das kann SQL erkennen. Wenn Du das Datums-Format über F13, Auswahl 1 auf ISO setzt, wirst Du die Abfrage ebenfalls nicht mehr ausführen können.
    In Deinem SQL-Programm geht es schief, weil nicht das Job-Format, sonder *ISO als Datums-Format für die SQL-Abfragen verwendet wird.

    Birgitta
    Birgitta Hauser

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

  6. #6
    Registriert seit
    Jan 2008
    Beiträge
    58
    Danke, Birgitta !
    Das war's !!!

    Problem geschlossen.

    Viele Grüße an *ALL

  7. #7
    Registriert seit
    Jan 2008
    Beiträge
    58
    Daran habe ich schon gedacht, im Pgm habe ich :
    Set Option
    Naming = *Sys,
    Commit = *None,
    UsrPrf = *User,
    DynUsrPrf = *User,
    Datfmt = *iso,
    CloSqlCsr = *EndMod
    Die Probleme habe ich mit dem Datumsfeld ADATUM (TTMMJJHHSS) muß ich vorhen in *ISO konvertieren.

Similar Threads

  1. SQL Substring (Fehler 42703)
    By olbe in forum NEWSboard Programmierung
    Antworten: 2
    Letzter Beitrag: 28-12-06, 13:53
  2. Finde Fehler bei SQL nich...
    By deni87991 in forum IBM i Hauptforum
    Antworten: 11
    Letzter Beitrag: 08-08-06, 13:50
  3. SQL UDF Function ausführung mit Fehler
    By jakarto in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 24-07-06, 13:41
  4. Fehler im SQL bzw. Joblog
    By GraueEminenz in forum NEWSboard Programmierung
    Antworten: 1
    Letzter Beitrag: 10-07-06, 11:58
  5. SQL - Fehler
    By Kaufmann in forum IBM i Hauptforum
    Antworten: 11
    Letzter Beitrag: 28-06-06, 14:11

Berechtigungen

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