Erst mal dankeschön für die vielen Antworten.

Ich habe mich heute entsprechend Ihren Antworten noch mal mit Google unterhalten und auch das RED BOOK von IBM runtergeladen. Ich denke, eine STORED PROCEDURE wäre dann doch eher der richtige Weg, wenn ich mir das alles mal so zu Gemüte führe. Also habe ich das Ganze in eine stored procedure übertragen, hab das der Sicherheit und Einfachheit halber auch mit ISeries Navigator durchgeführt.

Ergebnis ist dann folgendes

CREATE PROCEDURE ASTRD.PRIZESPLAQ (
IN PLSIZE CHAR(163),
OUT PRIZES CHAR(163)
)
DYNAMIC RESULT SETS 1
LANGUAGE RPGLE
SPECIFIC ASTRD.PRIZESPLAQ
DETERMINISTIC
NO SQL
CALLED ON NULL INPUT
EXTERNAL NAME 'ASTROFREMD/KSR100'
PARAMETER STYLE SQL

Aufruf dann wie folgt:

CALL ASTRD.PRIZESPLAQ(Wert für 1.Parameter (exakt 163 Zeichen), '?')
oder mit 2. Parameter explicit als CAST
CALL ASTRD.PRIZESPLAQ(Wert für 1.Parameter (exakt 163 Zeichen), CAST ('?' as CHAR(163) ) )

Fehlermeldung:
Attribut IN, OUT oder INOUT für Parameter 2 in Prozedur PRIZESPLAQ ungültig

Ich hab das auch schon mit nur einem Parameter (INOUT) probiert, da erhalte ich dann die gleiche Fehlermeldung für diesen Parameter 1.

Syntax müsste eigentlich passen.
Was mache ich hier jetzt wieder falsch ?