[NEWSboard IBMi Forum]

Hybrid View

  1. #1
    Registriert seit
    Mar 2002
    Beiträge
    5.365
    ... hast Du mal das komplette listing nach dem zu füllenden Feld durchgescanned? Manche Felder werden nämlich nur bedingt gefüllt und stehen dann hinter den anderen. Und Du solltest mal die nullbyte indicators nach dem fetch prüfen.

    D*B

    Zitat Zitat von JotSo Beitrag anzeigen
    Hallo,

    ich habe mir eine neue Datei per Create Table mit div. Date- und Time-Feldern erzeugt.

    Wenn ich jetzt im SQLRPGLE einen Cursor darauf definiere und per Fetch einen Datensatz einlese, stehen mir die Date- und Time-Felder bzw. deren Inhalte nicht zur Verfügung. Alle anderen schon.

    Wenn ich mir die Umwandlungsliste anschaue, finde ich die Deklaration der entsprechenden SQL-Variablen, die durch den Precompliner erstellt werden:
    D SQL_00019 234 238S 0 WKBORDEROS.P2LFDNR
    D SQL_00020 239 248D DATFMT(*ISO) WKBORDEROS.P2EINGDAT
    D SQL_00021 249 256T TIMFMT(*ISO) WKBORDEROS.P2EINGZEI
    D SQL_00022 257 264T TIMFMT(*ISO) WKBORDEROS.P2EINGZEI
    D SQL_00023 265 272T TIMFMT(*ISO) WKBORDEROS.P2SOLLZEI
    D SQL_00024 273 274A WKBORDEROS.P2SOLLBST

    Beim Füllen werden jetzt aber 20-23 nicht aufgeführt:
    C EVAL WKBORDEROS.P2LFDNR = SQL_00019
    C EVAL WKBORDEROS.P2SOLLBSTAT = SQL_00024


    Hat jemand 'ne Idee, womit dies zusammen hängt?
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

  2. #2
    Registriert seit
    Dec 2015
    Beiträge
    18
    Hallo zusammen,

    das sind sehr gute Fragen von Euch.

    Also: für AnzVar habe ich eine globale Feldgruppe definiert:
    d gAnzVar S 5I 0 dim(100)


    Auf die verweise ich aus meiner internen Funktion raus:
    d fAnzVar S like(gAnzVar)
    d dim(%elem(gAnzVar))

    Dann fehlen definitiv in der Umwandlungsliste die evals für die Datums- und Zeitfelder.

    Jetzt kommt's:
    wenn ich in meiner internen Funktion die fAnzVar lokal definiere, funktioniert es:
    d fAnzVar S 5I 0 dim(100)

    Dann habe ich im Listing folgende zusätzliche Anweisung:
    C SQL_00054 IFGE 0
    C EVAL WKBORDEROS.P2EINGDAT = SQL_00020
    C END

    Hier scheint der Precompiler wohl mit der Referenzierung auf die globale Variable ein Problem zu haben. Warum sich das aber nur bei Date- und Time-Felder auswirkt, ist mir schleierhaft.

Similar Threads

  1. select into wie fetch next
    By Robi in forum NEWSboard Programmierung
    Antworten: 10
    Letzter Beitrag: 22-05-15, 07:31
  2. fetch for 1000 Rws only
    By Robi in forum NEWSboard Programmierung
    Antworten: 3
    Letzter Beitrag: 09-03-15, 15:56
  3. SQL TIME
    By tarkusch in forum NEWSboard Programmierung
    Antworten: 7
    Letzter Beitrag: 17-03-14, 08:37
  4. IBMDA400 liefert keine Daten
    By JMH in forum IBM i Hauptforum
    Antworten: 7
    Letzter Beitrag: 15-01-14, 14:53
  5. %time() ??
    By Gimli in forum IBM i Hauptforum
    Antworten: 3
    Letzter Beitrag: 11-04-03, 12:44

Berechtigungen

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