× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.


  • Subject: Re: RPG suggestions
  • From: "R. Bruce Hoffman, Jr." <rbruceh@xxxxxxx>
  • Date: Thu, 13 May 1999 11:57:29 -0400

Colin Williams wrote:
> 
> I dont want to use API for every function, only where its necessary. I
> tend to only use API's where I believe there is a benefit. The advantage
> of these CL program commands is that they are very,very,very simple to
> use.
> 

I do understand the simplicity thing.

So do what I do.  Wrapper the API.  I also objectize it a little bit.

For example, RTVUSRPRF command is great.  But *every* time you call it,
it resolves the user profile.  Then it returns the information.  The API
is not so different and (yes) has many values in the return format
(Particularly the most useful USRI0300).

Wrapper program sets up static storage on first call and retains the
dynamically allocated storage thru a static pointer.  Each call
including first, passes two parameters.  The first is a constant defined
in the prototype for the procedure that selects the desired element from
the user profile.  The second is pointer to some storage location to
receive the value for that element.

Wrapper exists in named activation group, so resolution only occurs once
per job.

Call is simple, tell me what you want and where you want it.

Call.  Done.

PS.  No, this isn't in C.  I have done ( and still do ) this in COBOL,
RPG IV, C and C++.

Side benefit: change platforms and you don't have to hunt down all of
the API calls to be changed for the target platform.  Just change one
wrapper per function.  Not exactly a new concept.

-- 
===========================================================
R. Bruce Hoffman, Jr.
 -- IBM Certified AS/400 Professional System Administrator
 -- IBM Certified AS/400 Professional Network Administrator

"The sum of all human knowledge is a fixed constant.
    It's the population that keeps growing!"
+---
| 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 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.