|
Earlier this month, I converted a bunch of end-of-month file reorgs/cleanups to a combination of CLP/SQL (RUNSQLSTM command) from CLP/RPG. Many of you helped me with this for which I am grateful. Last night one of them bombed. It was using a UDF called ISOTODEC which converts an ISO date to decimal YYYYMMDD. The error the operator got was "Position 1 ISOTODEC in *LIBL type *N not found". I tried it myself and got "Position 1 ISOTODEC in JLCLIB type *SRVPGM not found". I did a CHGCURLIB DILGARD and then it worked. DILGARD is the current library for every user profile (including the operator) except for me. And library DILGARD is where *SRVPGM ISOTODEC exists. I looked in an SQL redbook section on UDFs. As near as I can tell, it should be using the library list to find the UDF. The error the operator got stating not found in *LIBL confirms that, I think, but type *N doesn't seem right. When it failed for me it looks like it was only looking in JLCLIB, but type *SRVPGM is right. RUNSQLSTM default for NAMING is *SYS. ISOTODEC exists _only_ in DILGARD. Here is the entire script: -- -- Add items marked for deletion to old items file -- INSERT INTO OLITMMST (SELECT A.*, ISOTODEC(CURRENT DATE) FROM DMITMMST A WHERE ACREC = 'D'); -- -- Remove items marked for deletion -- DELETE FROM DMITMMST WHERE ACREC = 'D'; As you can see, it's not too complicated. Where has my thinking gone awry?
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2025 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.