BenderD
04-01-07, 11:53
edit
mal so einen kleinen Test gemacht, sieht nicht so Hoffnungslos aus, pro Parameter, der auch rein gehen kann, wird eine short ergänzt (Null Bite vermutlich), beim Aufruf passiert noch was seltsames mit Parameterlängen, könnte aber heilbar sein.
Was dennoch dagegen spräche: das ist undokumentiert!!!
end of edit
naja, das könnte auch schief gehen
- die SQL Runtime weiß, dass das originär eine SQL Procedure war
- das Parameter mapping zwischen runtime und generiertem C Programm ist SQL spezifisch (zusätzliche Parameter)
- C kann im Parameter Handling mehr als CL (und auch RPG)
- nicht jede C Procedure muss aus CL aufrufbar sein
- nicht alles was die Datenbank in der Runtime hat, haben andere Programme auch
mfg
Dieter Bender,
der nicht unbedingt glaubt, dass es die zusätzlichen Parameter sind, wie man in anderen Foren lesen kann
Irgendwo gibt es doch die Prozedurdeklaration, ggf. in SYSPARMS mal nachschauen.
Deine Parameter musst du nun identisch deklarieren und die zusätzlichen Parameter wie SQLCOD, SQLSTATE mit übergeben.
Im SQL-Reference steht beschrieben, wie die Parameter in welcher Folge, ob mit/ohne NULL-Indikator usw. abhängig vom Prozedurtyp an Prozeduren übergeben werden.
Im Zweifel läßt man sich die Prozedur noch mal erstellen und schaut sich die generierte C-Quelle an (Spoolfile).
Dann steht einem Aufruf aber wirklich nichts im Wege.
mal so einen kleinen Test gemacht, sieht nicht so Hoffnungslos aus, pro Parameter, der auch rein gehen kann, wird eine short ergänzt (Null Bite vermutlich), beim Aufruf passiert noch was seltsames mit Parameterlängen, könnte aber heilbar sein.
Was dennoch dagegen spräche: das ist undokumentiert!!!
end of edit
naja, das könnte auch schief gehen
- die SQL Runtime weiß, dass das originär eine SQL Procedure war
- das Parameter mapping zwischen runtime und generiertem C Programm ist SQL spezifisch (zusätzliche Parameter)
- C kann im Parameter Handling mehr als CL (und auch RPG)
- nicht jede C Procedure muss aus CL aufrufbar sein
- nicht alles was die Datenbank in der Runtime hat, haben andere Programme auch
mfg
Dieter Bender,
der nicht unbedingt glaubt, dass es die zusätzlichen Parameter sind, wie man in anderen Foren lesen kann
Irgendwo gibt es doch die Prozedurdeklaration, ggf. in SYSPARMS mal nachschauen.
Deine Parameter musst du nun identisch deklarieren und die zusätzlichen Parameter wie SQLCOD, SQLSTATE mit übergeben.
Im SQL-Reference steht beschrieben, wie die Parameter in welcher Folge, ob mit/ohne NULL-Indikator usw. abhängig vom Prozedurtyp an Prozeduren übergeben werden.
Im Zweifel läßt man sich die Prozedur noch mal erstellen und schaut sich die generierte C-Quelle an (Spoolfile).
Dann steht einem Aufruf aber wirklich nichts im Wege.