[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Apr 2002
    Beiträge
    792

    DDS und Neues Feld??

    Hi *ALL,

    ich habe da mal ein Problem. Ich möchte ein Feld umwandeln bzw. dessen Reihenfolge. In dem Feld steht ein Datum (z.B. 1998-01-02). Dieses möchte ich nun in einem neuem Feld im Format JJJJMMTT ohne die Striche. Ich habe folgenden Code in DDS. Leider sagt der dann in der Zeile BESDATE für die drei Felder immer "Feld nicht gefunden". Was kann ich da tun. Hat vielleicht jemand einen Tip für mich? Vielen Dank im Voraus.

    mfg

    Sascha

    A R BESSATZ PFILE(AUDI/BESUCHE)
    A JJJJ 4A I SST(DATUM 1 4)
    A MM 2A I SST(DATUM 6 2)
    A TT 2A I SST(DATUM 9 2)
    A KDNR
    A AD
    A BESUCHSGR
    A INFO
    A GESPRP
    A BESDATE CONCAT(JJJJ MM TT)

  2. #2
    Registriert seit
    Aug 2001
    Beiträge
    2.893

    Konvertierung von Datums-Feldern

    Hallo Sascha,

    Du versuchst ein Datums-Feld in ein numerisches Feld umzuwandeln.
    Damit ist DDS überfordert, das funktionniert nur mit SQL-(Views).

    Auch wenn Du '1998-12-31' siehst, ist das nur eine Aufbereitungs-Form. Tatsächlich steht in einem Datums-Feld ein Lineares Datum, d.h. die Anzahl Tage ab Zeitpunkt X.

    Hier ein Beispiel einer View, in der ein Datums-Feld in ein numerisches Feld umgesetzt wird:

    PHP-Code:
    create view MyLib/MyView
    as (SELECT Feld1Feld2
                       
    Digits(Dec(Year(Datum1), 40)) concat 
                       Digits
    (Dec(Month(Datum1), 20)) concat               
                       Digits
    (Dec(Day(Datum1), 20)) as DateNum 
                 FROM  MyPhysF

    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

  3. #3
    Registriert seit
    Apr 2002
    Beiträge
    792
    Ne ne, das ist schon so wie ich das geschrieben habe. Es handelt sich um ein 10stelliges Zeichenfeld. Hier steht das Datum als Sting(1999-01-02) drin. Ich will es nun wie oben beschrieben in ein anderes Zeichenfeld im Format JJJJMMTT bringen. Ist das in DDS möglich? Leider besitzen wir kein SQL ;o(

    mfg

    Sascha

  4. #4
    Registriert seit
    Jul 2002
    Beiträge
    218
    hallo Sascha,

    wenn das feld DATUM mit in die beschreibung aufgenommen wird, sollte es funktionieren.

    LG
    Hans-Joachim

  5. #5
    Registriert seit
    Apr 2002
    Beiträge
    792
    Hi,

    danke aber leider hat das auch nichts geändert. Der Fehler tritt auch nicht bei SST sondern bei CONCAT auf.

    mfg

    Sascha

  6. #6
    Registriert seit
    Jul 2002
    Beiträge
    218
    ok, stimmt !

    es funktioniert nicht, da concat nur mit feldern einer pf-datei
    funktioniert.

    Schade !

  7. #7
    Registriert seit
    Apr 2002
    Beiträge
    792
    Das iss ja nicht so schön. Trotzdem vielen Dank. Bleibt wohl nur der Weg über SQL oder??

  8. #8
    Registriert seit
    Jan 2003
    Beiträge
    755
    Hallo Sascha,

    Du könntest auch auf den Concat verzichten und die drei
    "neuen" Felder im Programm verbinden (DS=BESDAT), in diesem
    Falle würde ich die Felder als (Teil-) Schlüssel aufnehmen:

    A R BESSATZ PFILE(AUDI/BESUCHE)
    A JJJJ 4A I SST(DATUM 1 4)
    A MM 2A I SST(DATUM 6 2)
    A TT 2A I SST(DATUM 9 2)
    A KDNR
    A AD
    A BESUCHSGR
    A INFO
    A GESPRP
    A K KEY1
    A K JJJJ
    A K MM
    A K TT
    A K KEYN

    Gruß, Robert

Similar Threads

  1. Timestamp Feld von MS Access abfragen
    By andreas.lundschien in forum IBM i Hauptforum
    Antworten: 3
    Letzter Beitrag: 05-09-06, 14:55
  2. num. Feld in Datumsfeld konvertieren
    By edig in forum NEWSboard Programmierung
    Antworten: 1
    Letzter Beitrag: 27-07-06, 08:20
  3. DDS
    By BenA in forum NEWSboard Programmierung
    Antworten: 4
    Letzter Beitrag: 21-06-06, 13:14
  4. Prüfung, ob Eingabe in Feld
    By M Scheid in forum NEWSboard Programmierung
    Antworten: 7
    Letzter Beitrag: 12-06-06, 13:02
  5. ILE Feld in Feld ansprechen
    By jogisarge in forum NEWSboard Programmierung
    Antworten: 5
    Letzter Beitrag: 10-05-06, 16:26

Berechtigungen

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