[NEWSboard IBMi Forum]

Hybrid View

  1. #1
    Registriert seit
    Aug 2001
    Beiträge
    2.931
    (die auch von der Doku gestützt wird (IBM Software Technical Document 6492409 Herr Google hilft beim suchen) nicht auf die ODPs,
    Ist Dir auch aufgefallen, dass in dem Dokument 6492409 nur von RPGIII geredet wurde und nicht RPGIV oder ILERPG.

    Die Optionen *ENDPGM, *ENDJOB und *ENDSQL können nur bei CRTSQLRPG (sprich RPGIII) und nicht bei CRTSQLRPGI (sprich RPGIV) angegeben werden. Bei CRTSQLRPGI heißen die Optionen *ENDMOD und *ENDACTGRP.

    In ILE funktioniert die Option *ENDMOD wie *ENDPGM, während bei der Option *ENDACTGRP der ODP geöffnet bleibt und wiederverwendbar ist, solange die Aktivierungsgruppe nicht beendet wird.

    Aus dem Dokument 6492409:
    A RPG program is created with *ENDPGM. It issues a declare, open, and fetch of a cursor, then the program ends. Because the program ends, the cursor and the ODP are discarded.
    Damit wird auch beim *ENDMOD der ODP gelöscht (discarded = weggeworfen).

    Dokumentationen über CLOSQLCSR findet man in der Online Library in Database Performance and Query Optiomization:
    General rules for retaining cursor positions for all program calls

    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

  2. #2
    Registriert seit
    Mar 2002
    Beiträge
    5.372
    ja, das ist mir aufgefallen, nur die von dir angegebene Fundstelle hilft da nicht weiter, die bezieht sich auf den Erhalt der Cursor Position und stellt dem wiederholte open/close gegenüber (die den Cursor jedesmal neu positionieren.

    Nett, dass du mich auf Stellen in meiner angegebenen Quelle hinweist, aber da bist du schon an der entscheidenden Stelle vorbei:

    CLOSQLCSR defines how the programs handles cursors within the embedded SQL programs. It does not have any bearing on how ODPs are created, maintained, or reused.
    (bearing würde ich hier als Einfluss übersetzen, aber auch da lasse ich mit mir reden!)

    IBM hält sich mit Dokumentation ziemlich bedeckt, was maintenance, creation und reuse von ODPs angeht und da ich davon ausgehe, dass ILE und OPM dieselben APIs benutzen und sich dieses dokumentierte Verhalten auch mit meinen Erfahrungen mit ILE deckt, warte ich immer noch auf aktuellere Information, was länger dauern kann (siehe MI Reference)

    D*B





    Zitat Zitat von B.Hauser Beitrag anzeigen
    Ist Dir auch aufgefallen, dass in dem Dokument 6492409 nur von RPGIII geredet wurde und nicht RPGIV oder ILERPG.

    Die Optionen *ENDPGM, *ENDJOB und *ENDSQL können nur bei CRTSQLRPG (sprich RPGIII) und nicht bei CRTSQLRPGI (sprich RPGIV) angegeben werden. Bei CRTSQLRPGI heißen die Optionen *ENDMOD und *ENDACTGRP.

    In ILE funktioniert die Option *ENDMOD wie *ENDPGM, während bei der Option *ENDACTGRP der ODP geöffnet bleibt und wiederverwendbar ist, solange die Aktivierungsgruppe nicht beendet wird.

    Aus dem Dokument 6492409:


    Damit wird auch beim *ENDMOD der ODP gelöscht (discarded = weggeworfen).

    Dokumentationen über CLOSQLCSR findet man in der Online Library in Database Performance and Query Optiomization:
    General rules for retaining cursor positions for all program calls

    Birgitta
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

  3. #3
    Registriert seit
    Sep 2006
    Beiträge
    16
    Danke für die ausführlichen Antworten!

    Ich werde in diesem Fall das Modul mit der Option *ENDMOD wandeln und die Perfomanceeinbusse in Kauf nehmen, da es Gewährleistet sein muss, dass nach dem Lesen der Daten keinerlei Sperren zurück bleiben.

    Joe

Similar Threads

  1. SQL Update aus zwei Dateien mit 3 Schlüsselfeldern
    By mk in forum NEWSboard Programmierung
    Antworten: 13
    Letzter Beitrag: 13-07-12, 08:53
  2. SQL Update über 3 Dateien
    By Bobou in forum IBM i Hauptforum
    Antworten: 1
    Letzter Beitrag: 22-11-06, 08:26
  3. SQL Update 2 Dateien
    By moskito in forum NEWSboard Programmierung
    Antworten: 5
    Letzter Beitrag: 30-08-06, 17:30
  4. SQL Case von mehreren Dateien
    By steven_r in forum NEWSboard Programmierung
    Antworten: 4
    Letzter Beitrag: 08-08-06, 09:34
  5. SQL über 168 Dateien
    By mikex01 in forum IBM i Hauptforum
    Antworten: 5
    Letzter Beitrag: 21-04-06, 16:11

Berechtigungen

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