|
You have to pass a different variable or literal for each library in the library list. The command parser is looking for many different parameters, but you're only sending only one. The CHGLIBL command thinks that you've only got one library that you want in your library list -- and that it's 200 characters long, and contains spaces! If you want everything in your variable to be parsed as if it were typed directly at the command line (or in the CL program) you need to use the QCMDEXC (or similar) API. The QCMDEXC API will parse out each of your arguments, and send it them to the command interpreter as seperate libraries. Example: PGM DCL VAR(&LIST) TYPE(*CHAR) LEN(200) DCL VAR(&CMD) TYPE(*CHAR) LEN(250) RTVDTAARA DTAARA(GNTDA001 (1 200)) RTNVAR(&LIST) CHGVAR VAR(&CMD) VALUE('CHGLIBL LIBL(' *TCAT &LIST *TCAT ')') CALL QCMDEXC PARM(&CMD 250) ENDPGM On Fri, 2 Feb 2001, Tim Truax wrote: > Hello all, > > I am trying to call the CHGLIBL from my CLP (testdta) in this manner: > > ** Beginning of data (testdta) ****************** > PGM > DCL VAR(&LIST) TYPE(*CHAR) LEN(200) > RTVDTAARA DTAARA(GNTDA001 (1 200)) RTNVAR(&LIST) > CHGLIBL LIBL(&LIST) > ENDPGM > ***** End of data ******************************** > > and it is failing with this error: > > call testdta > Value 'TLTLIB ' for parameter LIBL not a valid name. > Error found on CHGLIBL command. > Function check. CPF0001 unmonitored by TESTDTA at statement 1000, > instruction X'0027'. > CPF0001 received by TESTDTA at 1000. (C D I R) > CPF0001 received by TESTDTA at 1000. (C D I R) > > Heres the *DTAARA. > > Value > Offset *...+....1....+....2....+....3....+....4....+....5 > 0 'TLTLIB IMPOBJLIB IMPDTALIB MSTOBJLIB MSTDTALIB ' > 50 'SUSOBJLIB SUSDTALIB PRODPLIB PT3OBJLIB PT3DTALIB ' > 100 'PODDTALIB GPLLIB DTALIBHST PRODDLIB MKTDTALIB ' > 150 'JOBACCT CSVDTALIB CSVOBJLIB ROBOTLIB QGPL ' > 200 ' ' > 250 ' ' > 300 ' ' > 350 ' ' > 400 ' ' > > Suggestions as to why this is failing will be appreciated. > Tim Truax > > > +--- | This is the Midrange System Mailing List! | To submit a new message, send your mail to MIDRANGE-L@midrange.com. | To subscribe to this list send email to MIDRANGE-L-SUB@midrange.com. | To unsubscribe from this list send email to MIDRANGE-L-UNSUB@midrange.com. | Questions should be directed to the list owner/operator: david@midrange.com +---
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 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.