PeterKarsten
05-11-06, 23:27
Wir arbeiten mit Stored Procedures, die wir über den JT400-JDBC-Treiber aufrufen, Jetzt, auf V5R4 kommen einige StoProcs mit "High-order nibble of the byte at array offset 722 is not valid." zurück. Wir haben das Problem etwas isoliert, der Fehler kommt aus den Result-Sets. Ist aber für mich nicht nachvollziehbar.
Die StoProc ist banal:
CREATE PROCEDURE TESTPGM/STOTEST
(IN HDNR NUMERIC(6, 0),
IN FILIAL NUMERIC(4, 0))
RESULT SETS 1
LANGUAGE RPGLE
SPECIFIC TESTPGM/STOTEST
NOT DETERMINISTIC
CALLED ON NULL INPUT
EXTERNAL NAME 'TESTPGM/EXETEST'
PARAMETER STYLE GENERAL;
COMMENT ON SPECIFIC PROCEDURE TESTPGM/STOTEST
IS 'Testen StoProcs V5R4'
Das Programm auch:
FONT="Fixedsys"]HDEBUG(*INPUT : *DUMP : *XMLSAX) DFTACTGRP(*NO) ACTGRP(*CALLER)
FHDSTAM IF E K DISK
DXHDSTAM E DS occurs(1)
DXHDNR S 6S 0
DXFILIAL S 4S 0
C *ENTRY plist
C parm XHDNR
C parm XFILIAL
C*
C key_hd klist
C kfld XHDNR
C kfld XFILIAL
C key_hd chain HDSTAMF
C if %found
C 1 occur XHDSTAM
C/exec sql
C+ set result sets array :XHDSTAM for 1 rows
C/end-exec
C else
C/exec sql
C+ set result sets none
C/end-exec
C end
C DUMP(A)
C RETURN
C SETON LR [/FONT]
Je nachdem, ob ich jetzt in meiner Datenstruktur (LF) ein Feld mehr oder weniger habe, kommt der Fehler oder nicht. Das nächste Feld geht aber wieder usw.
???????
Gruß
Peter
Die StoProc ist banal:
CREATE PROCEDURE TESTPGM/STOTEST
(IN HDNR NUMERIC(6, 0),
IN FILIAL NUMERIC(4, 0))
RESULT SETS 1
LANGUAGE RPGLE
SPECIFIC TESTPGM/STOTEST
NOT DETERMINISTIC
CALLED ON NULL INPUT
EXTERNAL NAME 'TESTPGM/EXETEST'
PARAMETER STYLE GENERAL;
COMMENT ON SPECIFIC PROCEDURE TESTPGM/STOTEST
IS 'Testen StoProcs V5R4'
Das Programm auch:
FONT="Fixedsys"]HDEBUG(*INPUT : *DUMP : *XMLSAX) DFTACTGRP(*NO) ACTGRP(*CALLER)
FHDSTAM IF E K DISK
DXHDSTAM E DS occurs(1)
DXHDNR S 6S 0
DXFILIAL S 4S 0
C *ENTRY plist
C parm XHDNR
C parm XFILIAL
C*
C key_hd klist
C kfld XHDNR
C kfld XFILIAL
C key_hd chain HDSTAMF
C if %found
C 1 occur XHDSTAM
C/exec sql
C+ set result sets array :XHDSTAM for 1 rows
C/end-exec
C else
C/exec sql
C+ set result sets none
C/end-exec
C end
C DUMP(A)
C RETURN
C SETON LR [/FONT]
Je nachdem, ob ich jetzt in meiner Datenstruktur (LF) ein Feld mehr oder weniger habe, kommt der Fehler oder nicht. Das nächste Feld geht aber wieder usw.
???????
Gruß
Peter