midrange.com code scratchpad |
Name:
Select Product QSZSLTPR API
|
Scriptlanguage:
Plain Text
|
Tabwidth:
4
|
Date:
06/02/2017 03:46:40 pm
|
IP:
Logged
|
|
Description:
Retrieves a list of installed products
|
Code:
- **free
- // Select Product QSZSLTPR API
-
- /copy qrpglesrc,stdhspec
-
- /copy qsysinc/qrpglesrc,QSZSLTPR
- /copy qsysinc/qrpglesrc,QUSEC
-
- dcl-pr sltPrd extpgm('QSZSLTPR');
- prdList like(prdList);
- inpInfo like(inpInfo) const;
- format char(8) const;
- inpList like(inpList) const;
- outInfo like(outInfo);
- errcde like(qusec);
- end-pr;
-
- dcl-s prdList like(QSZS0200) dim(100);
-
- dcl-ds inpInfo qualified;
- nbrrcds int(10);
- nbrprods char(10);
- initial_view char(1);
- allow_exit char(1);
- prdoptions char(10);
- prod char(10);
- rcdsinlist int(10);
- end-ds;
-
- dcl-s inpList char(18) inz(*blanks);
-
- dcl-ds outInfo qualified;
- recsize int(10);
- recsavail int(10);
- action int(10);
- end-ds;
-
- dcl-s i int(10);
- dcl-s msg varchar(50);
-
- inpInfo.allow_exit = '1';
- inpInfo.initial_view = '1';
- inpInfo.nbrprods = '*ALL';
- inpInfo.nbrrcds = %elem(prdList);
- inpInfo.prod = '*INSTLD';
- inpInfo.prdoptions = '*ALL';
- inpInfo.rcdsinlist = 0;
-
- QUSBPRV = 0;
- QUSBAVL = 0;
-
- // get the list
- sltPrd(prdList(1): inpInfo: 'PRDS0200': inpList: outInfo: QUSEC);
-
- // do something with it
- for i = 1 to outInfo.recsavail;
- QSZS0200 = prdList(i);
- msg = QSZPI03 + ' ' + QSZPO05 + ' ' + QSZRL06 + ' ' +
- %subst(QSZDT00: 1: 20);
- dsply msg;
- endfor;
-
- *inlr = *on;
|
|
|