I agree with Andy.
Additional notes.
Note(1):
I doubt table design, because many SUBSTRs are used for columns.
It would be better to separate columns, like:
VNDRNOTE1KEY
---> VNDRNOTE1KEY_1 CHAR(4) NOT NULL , VNDRNOTE1KEY_VNDR_NBR CHAR(10) NOT NULL , .....
VNDRNOTE1RSLT001
---> VNDRNOTE1RSLT001_1 CHAR(18) , VNDRNOTE1RSLT001_SS_ID CHAR(9) , .....
Note(2):
There may be a possibility to get better performance by modifying conditions...
Code:
/*
WHERE SUBSTR(VNDRNOTE1KEY , 1 , 4) = 'SAGE'
AND SUBSTR(VNDRNOTE1KEY , 5 , 10) = :WS-SEL-VNDR-NBR
*/
WHERE VNDRNOTE1KEY LIKE 'SAGE' || :WS-SEL-VNDR-NBR || '%'