[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Jun 2005
    Beiträge
    36

    CRTSQLRPGI & COMMIT(*NONE)

    Hallo zusammen!

    Bei einigen meiner SQLRPGLE-Programme muss ich beim Umwandeln immer den Parameter COMMIT auf *NONE setzen. Nun dachte ich, das könne man mit den H-Bestimmungen als Umwandlungsanweisung festlegen und ich muss dann niemehr wieder dran denken. Aber das Schlüsselwort COMMIT ist dabei nicht erlaubt.

    @Fuerchau
    Yes, ich habe das Forum erst durchsucht, Deine Lösung aus dem Jahr 2004 gefunden (puh, Gottseidank ein Beitrag aus dem selben Jahrtausend), eingebaut, umgewandelt, aufgerufen, gejubelt...

    /exec SQL set option commit=*none
    /end-exec

    Aber ich dachte man kann alle Parameter in den H-Bestimmungen angeben oder mach ich was falsch???

    H COMMIT(*NONE)


    Für Hinweise wie immer sehr dankbar,
    Gruß, JIM

  2. #2
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    H-Bestimmungen sind für RPG.
    exec sql Set Option ....; sind eben für SQL.
    Lad dir das aktuelle SQL-PDF herunter, man kannziemlich viele Optionen so festlegen.
    http://publib.boulder.ibm.com/infoce...e/launcher.htm
    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

  3. #3
    Registriert seit
    Jun 2005
    Beiträge
    36
    Danke, ich dachte, dass alles, was ich beim CRT-Befehl per Parameter angeben kann, auch in den H-Bestimmungen möglich wäre.

    Danke auch für den Link, werde mir die Sachen gleich mal anschauen.

    Gruß,
    JIM

  4. #4
    Registriert seit
    Aug 2001
    Beiträge
    2.874
    Hallo,

    zur Umwandlung von embedded SQL gibt es für Programme, Module und Service-Programm nur einen einzigen Befehl CRTSQLRPGI.

    Vor der eigentlichen Compilierung läuft der SQL-Precompiler über den Source Code. Der Precompiler verarbeitet lediglich die SQL-Statements und ersetzt diese durch API-Aufrufe. Die RPG-Commands (mit Ausnahme der D-Bestimmungen) bleiben unberücksichtigt. Deshalb werden auch die H-Bestimmungen ignoriert und das SET OPTION-Statement jedoch verarbeitet.
    Nach der Verarbeitung durch den SQL-Precompiler werden die eigentlichen Create-Befehle, CRTBNDRPG oder CRTRPGMOD ausgeführt, je nachdem, ob mit 14 oder 15 umgewandelt wird.

    Vielleicht noch eine Anmerkung zum SET OPTION-Statement.
    1. Es darf nur ein einziges SET OPTION-Statement pro Quelle angegeben werden
    2. Seit Release V5R4 muss das SET OPTION-Statement in der Quelle das 1. SQL-Statement sein. Befindet sich das SET OPTION-Statement z.B. in der *INZSR-Routine, die am Ende der Quelle steht, gibt es einen Compile-Fehler mit einer ziemlich undurchsichtigen Fehlermeldung.


    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

  5. #5
    Registriert seit
    Jun 2005
    Beiträge
    36
    Hallo Birgitta,

    danke für die ausführlichen Informationen.

    Ja, dass das SET OPTION die erste SQL-Anweisung sein muss, durfte ich auch gleich "leidvoll" erfahren, als ich es zunächst in meiner Init-Unterroutine eingebaut hatte...

    Danke!

    Gruß, JIM

Similar Threads

  1. CrtSQLRPGi - Problem bei Programmerstellung
    By sim in forum NEWSboard Programmierung
    Antworten: 3
    Letzter Beitrag: 10-05-06, 14:45
  2. CRTSQLRPGI mit precompiler
    By butterblume in forum NEWSboard Programmierung
    Antworten: 2
    Letzter Beitrag: 23-01-06, 09:54
  3. CRTSQLRPGI commit *none
    By loeweadolf in forum NEWSboard Programmierung
    Antworten: 13
    Letzter Beitrag: 19-09-05, 22:39
  4. SQLRPGLE Programme erkennen
    By HELROHA in forum NEWSboard Programmierung
    Antworten: 4
    Letzter Beitrag: 11-10-04, 10:38
  5. Sql remote und local
    By Robi in forum NEWSboard Programmierung
    Antworten: 7
    Letzter Beitrag: 30-07-04, 12:41

Berechtigungen

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