Kelly,

QYASPOL needs to use the QGYGETLE API to work with the generated list? I have not done it in CL but do it in C to check for disk errors etc.

Hope that helps.

Chris...

-----Original Message-----
From: C400-L <c400-l-bounces@xxxxxxxxxxxxxxxxxx> On Behalf Of Kelly Beard
Sent: August 29, 2022 4:32 PM
To: Bare Metal Programming IBM i (AS/400 and iSeries) <c400-l@xxxxxxxxxxxxxxxxxx>
Subject: [C400-L] QYASPOL (waiting for iASP availability on IPL)

I don't do CL much, but occasionally I can fake my way through it. We have in our startup program a brain-dead DLYJOB(900) to allow time for an iASP to come up, then we start our business processes once we think it's ready.
900 seconds is 15 minutes, a really long time. We recently turned on another CPU and upgraded our storage to the latest NVM or whatever IBM is calling it - basically we have no more spinning disks. I thought I'd get clever and write 'something' that sits in a loop waiting for the targeted iASP to become ready, then I could unload the requisite RUNJVA commands that start business stuff up. Then I wouldn't have to be up at 2AM on Sunday morning to do this manually. Our iASP is called 'DATADEV'. I've had a dilly of a time finding a good CL representation of the error code parameter, but there are other parameters to fix right now too. Presently the first SNDPGMMSG prints 'YASP0100', which it should. The second one prints nothing at the moment, the third, random garbage, probaby because the CHGVAR is just some

This is something I have in-progress. If anyone has something better than this, hit me up. I'd appreciate it.

PGM
DCL VAR(&RCVVAR) TYPE(*CHAR) LEN(64)
DCL VAR(&RCVLEN) TYPE(*CHAR) LEN(4)

DCL VAR(&LISTINFO) TYPE(*CHAR) LEN(80)
DCL VAR(&NUMRECSRET) TYPE(*CHAR) LEN(80) DCL VAR(&NUMFILTERS) TYPE(*CHAR) LEN(80) DCL VAR(&FILTERINFO) TYPE(*CHAR) LEN(80) DCL VAR(&ERRCOD) TYPE(*CHAR) LEN(4)

DCL VAR(&FMTNAM) TYPE(*CHAR) LEN(8) VALUE('YASP0100') SNDPGMMSG MSG(&FMTNAM)

CHGVAR VAR(%SST(&RCVVAR 64 1)) VALUE('X') CHGVAR VAR(%BIN(&RCVLEN)) VALUE(128)

CALL PGM(QSYS/QYASPOL) PARM(&RCVVAR &RCVLEN &LISTINFO &NUMRECSRET &NUMFILTERS &FILTERINFO &FMTNAM &ERRCOD) SNDPGMMSG MSG('Error code stuff ' *CAT &ERRCOD) SNDPGMMSG MSG(&RCVLEN)

ENDPGM

--
Kelly Beard
--
This is the Bare Metal Programming IBM i (AS/400 and iSeries) (C400-L) mailing list To post a message email: C400-L@xxxxxxxxxxxxxxxxxx To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/c400-l
or email: C400-L-request@xxxxxxxxxxxxxxxxxx Before posting, please take a moment to review the archives at https://archive.midrange.com/c400-l.

Help support midrange.com by shopping at amazon.com with our affiliate
link: https://amazon.midrange.com

As an Amazon Associate we earn from qualifying purchases.

This thread ...

Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

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.