chillenbrand
05-05-08, 10:25
Hallo,
wir haben ein zentrales RPG Programm, welches den Status, das Statusdatum und die Statuszeit einer Sendung zurück gibt.
Dieses Programm haben wir schon erfolgreich als SQL-UDF eingebunden, allerdings bekommen wir nur einen Rückgabewert, in dem alle Infos hintereinander stehen (27 - 02.04.2008 - 13:00). Für die Zukunft brauchen wir die Werte in eigenen Spalten. Erschwerend kommt noch dazu, dass die Function als subselect aufgerufen wird. Sicherlich könnten wir die Function auch mehrmals mit unterschiedlichem Rückgabewert aufrufen, aber vielleicht gibt es eine elegantere Lösung?
Select fir,ndl,sdgnr,abs,absort,emp,empfort,getsts(char(f ir), char(ndl), char(sdgnr)),franka,kdnr
from mylib/auftragsdatei
Die Function haben wir wie folgt definiert:
CREATE FUNCTION getsts (char(3), char(3), char(16))
returns char(25)
LANGUAGE RPG
EXTERNAL NAME 'mylib/GXGETSTS(GETSTS)'
NO SQL
wir haben ein zentrales RPG Programm, welches den Status, das Statusdatum und die Statuszeit einer Sendung zurück gibt.
Dieses Programm haben wir schon erfolgreich als SQL-UDF eingebunden, allerdings bekommen wir nur einen Rückgabewert, in dem alle Infos hintereinander stehen (27 - 02.04.2008 - 13:00). Für die Zukunft brauchen wir die Werte in eigenen Spalten. Erschwerend kommt noch dazu, dass die Function als subselect aufgerufen wird. Sicherlich könnten wir die Function auch mehrmals mit unterschiedlichem Rückgabewert aufrufen, aber vielleicht gibt es eine elegantere Lösung?
Select fir,ndl,sdgnr,abs,absort,emp,empfort,getsts(char(f ir), char(ndl), char(sdgnr)),franka,kdnr
from mylib/auftragsdatei
Die Function haben wir wie folgt definiert:
CREATE FUNCTION getsts (char(3), char(3), char(16))
returns char(25)
LANGUAGE RPG
EXTERNAL NAME 'mylib/GXGETSTS(GETSTS)'
NO SQL