Anmelden

View Full Version : SQLRPGLE Serviceprogramm erstellen



Kerki
07-08-18, 11:43
Hallo liebe Leute,

ich komme bei einer Sache nicht weiter und zwar möchte ich ein Serviceprogramm aus SQLRPGLE machen. Geht das überhaupt?

Ich hatte mir das so vorgestellt:


dcl-proc DoppelteBestellungPruefen export;
dcl-pi *N zoned(6);
BestellnummerIn zoned(6) const;
end-pi;
dcl-s BestellnummerOut zoned(6);

Exec sql
call Lib.DoppelteBestellungPruefen(:BestellnummerIn,
:BestellnummerOut);
return BestellnummerOut;
end-proc;


Aber dieses bekomme ich nicht in ein Modul umgewandelt, da SQL enthalten ist.
Im Internet habe ich leider auch nichts brauchbares gefunden, oder ich habe falsch gesucht.

Weiß da jemand weiter?

andreaspr@aon.at
07-08-18, 12:01
Wenn du ein Problem beim Umwandeln hast bist du noch etwas entfernt vom ServicePGM.
Was genau ist denn die Fehlermeldung beim Umwandeln? Welchen Befehl dafür verwendest du?

lg Andreas

BenderD
07-08-18, 12:17
Hallo liebe Leute,

ich komme bei einer Sache nicht weiter und zwar möchte ich ein Serviceprogramm aus SQLRPGLE machen. Geht das überhaupt?

Ich hatte mir das so vorgestellt:


dcl-proc DoppelteBestellungPruefen export;
dcl-pi *N zoned(6);
BestellnummerIn zoned(6) const;
end-pi;
dcl-s BestellnummerOut zoned(6);

Exec sql
call Lib.DoppelteBestellungPruefen(:BestellnummerIn,
:BestellnummerOut);
return BestellnummerOut;
end-proc;


Aber dieses bekomme ich nicht in ein Modul umgewandelt, da SQL enthalten ist.
Im Internet habe ich leider auch nichts brauchbares gefunden, oder ich habe falsch gesucht.

Weiß da jemand weiter?

CRTSQLRPGI OBJTYPE(*MODULE)

D*B

Kerki
07-08-18, 12:21
Ich benutze diesen Befehl:
CRTRPGMOD MODULE(&O/&N) SRCFILE(&L/&F) SRCMBR(&N) REPLACE(&R) OPTION(*EVENTF) DBGVIEW(*SOURCE)

und es kommen folgende Fehlermeldungen:
RNF7023: Das Umwandlungsprogramm kann nicht bestimmen, wie das Programm enden kann.
RNF7030: Der Name oder die Bezugszahl/der Anzeiger SQL ist nicht definiert.
RNF7030: Der Name oder die Bezugszahl/der Anzeiger EXEC ist nicht definiert.
RNF5347: Für die Operation EVAL wird ein Zuordnungsoperator erwartet.
RNF5347: Für die Operation EVAL wird ein Zuordnungsoperator erwartet.

Kerki
07-08-18, 12:27
Ah vielen Dank für den Tipp. Programm wurde einwandfrei umgewandelt.

Danke

Fuerchau
07-08-18, 12:27
CRTRPGMOD erstellt ein RPG-Modul dass keine SQL's kann.
CRTSQLRPGI (wie Dieter schon schrieb) ruft den SQL-Precompiler auf, der erst mal RPG-Code generiert und dann CRTRPGMOD implizit aufruft.