Re: QYASPOL (waiting for iASP availability on IPL)

Kelly Beard <[email protected]> Tue, 30 Aug 2022 08:43:31 -0500
Newsgroups gmane.comp.lang.as400.c
Message-ID <CAOvM2Ss3EBH61qaQpq-iZbb0LqJ14Zkns_K40D0wGw-F+LKS+w@mail.gmail.com>
Sometimes I brain-fart.  After thinking about it for a few seconds, I'm
like "Why don't you just write this in C++?"  🙄

On Tue, Aug 30, 2022 at 8:38 AM Chris Hird <[email protected]>
wrote:

> I agree, always struggle with CL...
>
> Chris...
>
> -----Original Message-----
> From: C400-L <[email protected]> On Behalf Of Kelly Beard
> Sent: August 30, 2022 9:37 AM
> To: Bare Metal Programming IBM i (AS/400 and iSeries) <
> [email protected]>
> Subject: Re: [C400-L] QYASPOL (waiting for iASP availability on IPL)
>
> Yeah, the C/C++ struct I got down, it's how to deal with quirky CL.  Thank
> you.
>
> On Mon, Aug 29, 2022 at 4:15 PM Chris Hird <[email protected]>
> wrote:
>
> > Even found a CLP reference 😊
> >
> >
> > https://www.ibm.com/docs/en/i/7.1?topic=messages-receiving-message-fro
> > m-program-procedure-that-has-ended
> >
> > -----Original Message-----
> > From: C400-L <[email protected]> On Behalf Of Kelly
> > Beard
> > Sent: August 29, 2022 5:11 PM
> > To: Bare Metal Programming IBM i (AS/400 and iSeries) <
> > [email protected]>
> > Subject: Re: [C400-L] QYASPOL (waiting for iASP availability on IPL)
> >
> > Yeah.  Right now I'l looking for how to code the error code parameter.
> > Finding this stuff is like looking for a needle.
> >
> > On Mon, Aug 29, 2022 at 4:04 PM Chris Hird <[email protected]>
> > wrote:
> >
> > > Kelly,
> > >
> > > Sorry just thought about this, the QYASPOL will only return an error
> > > if it cannot get the data back, if the iASP is up you will have no
> > > error information? Does that make sense in additional to the last note?
> > >
> > > You should check if Error Code bytes Available is greater than 0
> > > else the API has generated the list.
> > >
> > > Chris..
> > >
> > > -----Original Message-----
> > > From: C400-L <[email protected]> On Behalf Of Kelly
> > > Beard
> > > Sent: August 29, 2022 4:32 PM
> > > To: Bare Metal Programming IBM i (AS/400 and iSeries) <
> > > [email protected]>
> > > 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:
> > > [email protected] To subscribe, unsubscribe, or change list
> > > options,
> > > visit: https://lists.midrange.com/mailman/listinfo/c400-l
> > > or email: [email protected] 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
> > > --
> > > This is the Bare Metal Programming IBM i (AS/400 and iSeries)
> > > (C400-L) mailing list To post a message email:
> > > [email protected] To subscribe, unsubscribe, or change list
> > > options,
> > > visit: https://lists.midrange.com/mailman/listinfo/c400-l
> > > or email: [email protected] 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
> > >
> >
> >
> > --
> > Kelly Beard
> > --
> > This is the Bare Metal Programming IBM i (AS/400 and iSeries) (C400-L)
> > mailing list To post a message email: [email protected] To
> > subscribe, unsubscribe, or change list options,
> > visit: https://lists.midrange.com/mailman/listinfo/c400-l
> > or email: [email protected] 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
> > --
> > This is the Bare Metal Programming IBM i (AS/400 and iSeries) (C400-L)
> > mailing list To post a message email: [email protected] To
> > subscribe, unsubscribe, or change list options,
> > visit: https://lists.midrange.com/mailman/listinfo/c400-l
> > or email: [email protected] 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
> >
>
>
> --
> Kelly Beard
> --
> This is the Bare Metal Programming IBM i (AS/400 and iSeries) (C400-L)
> mailing list To post a message email: [email protected] To
> subscribe, unsubscribe, or change list options,
> visit: https://lists.midrange.com/mailman/listinfo/c400-l
> or email: [email protected] 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
> --
> This is the Bare Metal Programming IBM i (AS/400 and iSeries) (C400-L)
> mailing list
> To post a message email: [email protected]
> To subscribe, unsubscribe, or change list options,
> visit: https://lists.midrange.com/mailman/listinfo/c400-l
> or email: [email protected]
> 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
>


-- 
Kelly Beard
-- 
This is the Bare Metal Programming IBM i (AS/400 and iSeries) (C400-L) mailing list
To post a message email: [email protected]
To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/c400-l
or email: [email protected]
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