Zitat Zitat von roko Beitrag anzeigen
Hallo,
Vielen Dank für die Tipps, ich habe anscheinend die alten Beiträge falsch verstanden. Allerdings macht mich der Wert von %PARMS beim Aufruf über UDF immer noch stützig. Habe auch gehört, dass beim Aufruf von CGI auch irgendwas mit der Anzahl der Parameter nicht stimmt. Bug oder Feature?

Noch mal vielen Dank
Roman
Bei SQL lässt sich die Geschichte mit %PARMS zumindest so erklären, dass SQL einen Wrapper um die eigentliche Funktion bildet, d.h. ein C-Service-Programm, in dem die eigentliche Funktion aufgerufen wird. Bedingt durch die unterschiedlichen Parameter-Styles werden eine Reihe von zusätzlichen Parametern definiert und ggf. als Null-Pointer an die RPG-Funktion übergeben. Da die Anzahl der übergebenen Parameter mit der normalerweise in der RPG-Funktion empfangenen Parameter nichtmehr übereinstimmt, wird um weitere/zusätzliche Verwirrung zu vermeiden, %PARMS auf -1 gesetzt.

Deshalb ist es auch erforderlich die optionalen Parameter mit Options(*NoPass: *Omit) zu definieren und auf NULL-Pointer zu prüfen.

Birgitta