Das einzige was mir jetzt noch aufgefallen ist, war die Definition der Prozedur.
Häng mal den VALUE beim Prototyp und der Prozedur selbst mal dran, damit der Wert nicht als Referenz übergeben wird.

Code:
D PARTHANDLER     PR            10I 0                         
D   OK                            N                           
D   PARTS                             LIKEREC(PARTREC) DIM(10)
D   NUMRECS                     10U 0 VALUE