[NEWSboard IBMi Forum]

Hybrid View

  1. #1
    Registriert seit
    Aug 2007
    Beiträge
    249

    Änderung Key in Datei

    Meine Aufgabe:

    Änderung des Schlüssel in einer Datei.

    Problemchen bei Programmablauf:
    READE
    Ändern Key
    UPDATE

    Durch das Update looped das Pgm quasi, beginnt immer wieder von vorne zu lesen, da sich ja der Key verändert.

    Bitte um Lösungsvorschläge, wie ich das am einfachsten lösen könnte.

  2. #2
    Registriert seit
    Aug 2001
    Beiträge
    2.928
    • Leseschleife wie gehabt (allerdings Datei als Input-Datei definieren).
    • Chain in andere (logische) Datei mit Relativer Satz-Nr. (oder anderem eindeutigem) Schlüssel. (Diese Datei als Update-Datei definieren)
    • Schlüssel-Werte in Update-Datei ändern
    • Datensatz zurückschreiben.


    Ansonsten könnte mann das Ganze auch über SQL lösen:
    Code:
    Update MyTable
         set (Key1, Key2, ... KeyN) = (Wert1, Wert2, .... WertN)
    Where Key1 = Alt1 and Key2 = Alt2 ... and KeyN = AltN;
    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
    Jun 2002
    Beiträge
    25
    Wie wärs mit ner ganz einfachen Lösung?

    Lese die Datei einfach nicht mit dem eigentlichen Feldnamen der Datei sondern definiere dir eine Variable im Key.
    Also anstatt "Feldname" eine Variable "$irgendwas". Muß nur die gleiche Länge haben und an der richtigen Stelle im Key positioniert sein.
    Dann liest du immer nach der Variablen "$irgendwas" und kannst das Feld "Feldname" ändern.

    Sollte so eigentlich funktionieren.

    Grüße
    Markus

  4. #4
    Registriert seit
    Jun 2004
    Beiträge
    17

    Einfach funktioniert auch

    Hallo Horni,

    deine einfache Lösung funktioniert.
    In ILE RPG kannst Du statt $irgendwas auch eine Schlüssel-DS (likerec(rfmt: *key) anlegen und diese mit %kds bei setll/chain/reade/.. verwenden. Da diese DS eine qualifizierte DS ist, verwendest Du im Programm z.B. keyDS.feldname.
    So eine Lösung ist zwar nicht unbedingt ein guter Stil, rettet aber das frühe Wochenende

    Bogomil

Similar Threads

  1. Wert aus CSV Datei
    By mk in forum IBM i Hauptforum
    Antworten: 9
    Letzter Beitrag: 21-12-06, 08:56
  2. kein Konstantes Ergebnis bei CRTDUPOBJ und Datei m.RI
    By deni87991 in forum IBM i Hauptforum
    Antworten: 1
    Letzter Beitrag: 19-10-06, 13:55
  3. Excel Datei mit RPG und POI/HSSF in A4
    By haertl in forum NEWSboard Programmierung
    Antworten: 8
    Letzter Beitrag: 30-05-06, 13:36
  4. Datei aus IFS holen
    By jogisarge in forum NEWSboard Programmierung
    Antworten: 1
    Letzter Beitrag: 15-05-06, 13:47
  5. IFS Datei berechtigungen
    By PGMR in forum NEWSboard Programmierung
    Antworten: 4
    Letzter Beitrag: 15-06-05, 15:37

Berechtigungen

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