[NEWSboard IBMi Forum]

Hybrid View

  1. #1
    Registriert seit
    Feb 2001
    Beiträge
    20.809
    Nach einem READC ist der Status der Änderung eines SFL-Satzes weg.
    Erst nach einem erneuten EXFMT des CTL-Formates kann wieder READC verwendet werden.
    Wenn also READC einmal EOF geliefert hat, meldet der nächste READC den CPF-Fehler.

    "Komfortable" Programme arbeiten hier mit einer "Bestätigungssubfile".
    D.h., per READC werden die Sätze mit der 1. gefunden Auswahl in eine 2. SFL kopiert, diese dann angezeigt und nach Bestätigung dann verarbeitet (siehe z.B. WRKSPLF).

    Die Anzeige kann natürlich auch unterbleiben und die 2. SFL einfach per READ verarbeitet werden.

    Alternativ kannst du dir auch eine Tabelle mit den Satz-Nr'n merken und dies dann per CHAIN SFLSATZ abarbeiten.
    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
    Oct 2013
    Beiträge
    175
    *IN14 wird wohl das DSPATR(MDT) bedingen, wenn man den Satz damit updatet, dann liest den READC auch wieder.
    Und ad Fehler: Das Subfile unterscheidet sich von einer normalen Datei in der Hinsicht nicht - man muss einen Satz lesen, bevor man ihn updaten kann. Und das sagt die Meldung.
    Wenn Du zwischen dem ENDDO von oben und dem UPDATE in der zweiten Schleife wirklich kein Lesen hast, ist das die Ursache.

  3. #3
    Registriert seit
    Apr 2012
    Beiträge
    360
    Ich hatte das READC vor der 2. Dountil-Schleife vergessen.
    Nun funktioniert es.

    Danke vielmals.

    Mein Sfl sieht wie folgt aus
    Code:
    A          R FMTS2                     SFL              
    A  14                                  SFLNXTCHG        
    A            S2#REC         4S 0H                       
    A            S2AUSW         1A  B  6  2

    Was ist mit DSPATR(MDT) bedingen gemeint bzw. wie wäre das umzusetzen?

    Danke

  4. #4
    Registriert seit
    Oct 2013
    Beiträge
    175
    Gerne.
    DSPATR(MDT) ist genau das Gleiche wie SFLNXTCHG, nur eine andere Schreibweise.
    Beide setzen das MDT - Modified Data Tag - den "Datenänderungsanzeiger", was dazu führt, dass Du den Satz mit READC nochmal lesen kannst.

  5. #5
    Registriert seit
    Feb 2001
    Beiträge
    20.809
    MDT ist ein Attribut auf Feldebene.
    Ohne SFLNXTCHG mit BZ gibt's keinen READC!
    Beim WRITE mit BZ *ON wird der Satz als geändert markiert, ohne eben nicht.
    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

Similar Threads

  1. ODBC Fehlermeldung
    By Rene_M in forum IBM i Hauptforum
    Antworten: 1
    Letzter Beitrag: 18-11-13, 13:56
  2. Fehlermeldung???
    By Achim in forum IBM i Hauptforum
    Antworten: 1
    Letzter Beitrag: 18-11-02, 11:03
  3. CA Express- Fehlermeldung!
    By Bleil in forum IBM i Hauptforum
    Antworten: 1
    Letzter Beitrag: 21-08-02, 14:20
  4. Fehlermeldung
    By Hans Zuther in forum IBM i Hauptforum
    Antworten: 5
    Letzter Beitrag: 12-06-02, 09:45
  5. AS400 Fehlermeldung
    By Matze in forum IBM i Hauptforum
    Antworten: 1
    Letzter Beitrag: 07-03-01, 09:41

Berechtigungen

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