[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Jun 2001
    Beiträge
    194

    Post Logical Files mit "s" oder "o"

    hi board,

    hat jemand Erfahrungen mit omit oder select bei logical files. ich gebe in der lf z.b. select an (feld im key definiert) und stelle fest, dass trotztdem die ganze datei durchgelesen wird. (ist grosse datei).
    ich hätte gedacht, dass die logical nur die sätze enthält, die dem selectwert entsprechen.
    vielen dank und happy halloween
    brownie, dem's jetzt schon graut!

  2. #2
    Registriert seit
    Jul 2002
    Beiträge
    53

    Post

    Funktionieren tut bei mir z.B. diese Datei:

    A*
    A* ----------
    A R ARTF PFILE(ART)
    A* ----------
    A*
    A K ASFIRM
    A K ASARTA
    A*
    A S ASARTA RANGE(' ' '100000 ')

    Und

    A S ASARTA CMP(LT '100000 ')
    A S ASARTA CMP(GT '900000 ')

    bewirkt, daß nur Sätze kleiner 100000 ODER größer als 900000 ausgewählt werden.

    Dagegen bewrikt

    A S ASARTA CMP(GE '100000 ')
    A ASARTA CMP(LE '900000 ')

    daß alle Sätze größer 100000 UND kleiner als 900000 ausgewählt werden.

    Um die UND-Bedingung zu erreichen, wurde das "S" vor dem zweiten ASARTA wegelassen.

    Gruß

    Matthias

  3. #3
    Registriert seit
    Jun 2001
    Beiträge
    194

    Wink

    Hallo Matthias,

    danke für die schnelle Antwort. Meine Logical sieht genauso aus. Ein query auf die logische zeigt, dass es auch funktioniert. muss wohl ein problem im ile-rpg sein (von mir). wie sieht denn dort deine "F-Zeile" aus.

    Danke und Gruss aus Nürnberg
    Brownie

  4. #4
    Registriert seit
    Feb 2001
    Beiträge
    20.206

    Post

    Inwieweit eine Select/Omit-Defnition wirkt, kann man mittels RUNQRY direkt ermitteln.
    Unabhängig davon gilt immer:

    Die Datei mit Schlüssel definieren, im RPG(/LE) die Datei als IF (Input File) und nicht IP (Input Primary) definieren und mittels SETLL und READE (auch verkürzte Schlüssel) die Bearbeitung auf das notwändige beschränken !
    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

  5. #5
    Registriert seit
    Aug 2001
    Beiträge
    2.869

    Post

    Nur so ein Verdacht:
    Verarbeitest Du zufällig in deinem Programm mehrere logische Dateien mit dem gleichen Record-Format auf die gleiche physische Datei?
    (oder auch die physiche und mindestens eine logische)

    Wenn ja musst Du mindestens 1 Format in den F-Bestimmungen umbenannt haben (Schlüssel-Wort RENAME).

    Kann es weiter sein, dass Du bei deiner Leseoperation nicht das umbenannte Format, sondern das Original-Format verwendest, und somit die falsche logische Datei verarbeitest?

    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

  6. #6
    Registriert seit
    Jun 2001
    Beiträge
    194

    Cool

    Hi *all,

    danke für alle antworten.

    der vorschlag von fuerchau wars. hatte die datei mit ip gelesen und da liest er scheinbar, obwohl die logische ja felder omitted resp. included, a l l e sätze.

    ich verstehs zwar nicht ganz, denn wenn ich mit setll und read arbeite brauche ich s/o in der logischen eigentlich nicht.
    Oder entgeht mir da etwas.

    Danke und Gruss
    brownie

  7. #7
    Registriert seit
    Feb 2001
    Beiträge
    20.206

    Post

    Wenn in der Dateibestimmung die LF benannt wird, dann wird auch mit IP (input Primary)nur das gelesen, was in der LF definiert ist.

    Aber:

    Da man ja nicht unbedingt ALLE Sätze dieser LF benötigt und ggf. per Übergabeparameter (*ENTRY) die Datensätze zusätzlich mittels IF einschränkt, liest man nun mal mehr als man für die Aufgabe benötigt.

    Tipp:

    Wenn man unbedingt mit IP arbeiten will, in einem vorgeschalteten CLP mittels OPNQRYF die Daten selektieren:

    PGM

    OVRDBF ... SHARE(*YES)
    OPNQRYF
    CALL PGMXY
    CLOF

    ENDPGM
    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. Antworten: 3
    Letzter Beitrag: 25-01-07, 10:29
  2. Join logical File
    By leber in forum IBM i Hauptforum
    Antworten: 4
    Letzter Beitrag: 19-01-07, 14:55
  3. FTP: Generische Uebertragung von Files
    By roman in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 05-12-06, 15:53
  4. USERASCII spooled files
    By abornmann in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 28-11-06, 07:49
  5. Restore von QHST* files
    By mtu in forum IBM i Hauptforum
    Antworten: 1
    Letzter Beitrag: 06-06-06, 09:15

Berechtigungen

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