Das Problem ist, dass die Prozedur nicht richtig definiert ist.
Im Gegensatz zu ILERPG ruft SQL die Prozedur mit allen Feldern als Parameter auf, auch den Returnwert als letzten.
Einen Funktions-Returnwert kennt SQL nicht.

Du musst also auch den Returnwert als Übergabeparameter verwenden.