|
D QGYRHRL PR ExtProc('QgyRtvHdwRscList')1077952576 bytes long.
D Receiver 28800a
D Length 10i 0 Const
D Format 8a Const
D Resource 10i 0 Const
D Errors 116a
I would add OPTIONS(*VARSIZE) to the RECEIVER parameter otherwise you
have to pass a 288000-byte variable for that parameter.
Next, you ERRORDS data structure is NOT initialized. Consequently it
is telling the API that it has X'40404040' as the structure length.
Which is telling the API that you're passing in an error DS that is
issue.
Rule 1 of data structure declaration: "Avoid surprise, Initialize!".
Add the INZ keyword to the definition of ERRORDS to resolve this
Next, this code:
Header = %subst(Receiver:1:16);
and
Detail = %subst(Receiver:start:124);
Should be:
Header = %subst(Receiver:1:%size(header)); and Detail =
%subst(Receiver:start:%size(detail));
-Bob Cozzi
www.i5PodCast.com
Ask your manager to watch i5 TV
-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx
[mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of Jerry Adams
Sent: Wednesday, April 25, 2007 9:26 AM
To: RPG programming on the AS400 / iSeries
Subject: Re: QGYRHRL API
Bob,
As regards the security issue, probably not an issue as I have *AllObj
authority.issue.
I posted the code at http://code.midrange.com/index.php?id=50f273c912.
* Jerry C. Adams
*IBM System i5/iSeries Programmer/Analyst B&W Wholesale Distributors,
Inc.* * voice
615.995.7024
fax
615.995.1201
jerry@xxxxxxxxxxxxxxx <mailto:jerry@xxxxxxxxxxxxxxx>
Bob Cozzi wrote:
Jerry,
It is either your prototype or your parameter list or a security
Can you post a code excerpt?Adams
-Bob Cozzi
www.i5PodCast.com
Ask your manager to watch i5 TV
-----Original Message-----
From: rpg400-l-bounces+bob=rpgworld.com@xxxxxxxxxxxx
[mailto:rpg400-l-bounces+bob=rpgworld.com@xxxxxxxxxxxx] On Behalf Of
Jerry
Sent: Wednesday, April 25, 2007 7:57 AM
To: RPG Midrange
Subject: QGYRHRL API
I wrote a program that uses the QGYRHRL (QgyRtvHdwRscList) API
yesterday. The purpose is to find all of the workstation devices on
the system. However, only two devices are found; trust me, we have
more than two workstation devices here. And, incidentally, neither
of the workstations it retrieves is listed when I use WRKCFGSTS *DEV.
WRKCFGSTS command.No printer is retrieved; we have twinax, network, and emulated
printers all on our system; all of which show upon using the
listed).
Originally I tried limiting the API to retrieve just the local work
station resources (Category = 3). When that didn't work, I changed
the program to retrieve all hardware resources (Category = 1). Same
result plus, of course, all cards, disks, etc.
I even downloaded a program from the web that had the API. When I
ran it, I got the same result (only the two displays previously
The sample output, which accompanied the program on the web site,
indicated that individual display and printer devices are retrieved;
just didn't on my system (which, by the way, is at V5R4).
The only thing that I have been able to come up with is that we run
under the 36 environment, but I don't see how that could have an
effect. An object is an object, ain't it?
Any clues gratefully and humbly accepted.
Thanks.
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.