× 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.




-----Message d'origine-----
[mailto:rpg400-l-bounces@xxxxxxxxxxxx] De la part de
Lennon_s_j@xxxxxxxxxxx

From what I see, there is vast sharing of global data going
on. (Paul's comment on coupling is on the mark.) Personally,
I dislike sharing global data. I'd much rather see this in a
service program.

Sam, I could have used a service program but how would that make any difference to the sharing of global data?


















This is an attempt at modularising my code. At the risk of
getting slammed, I ask if it is acceptable and to tell me
what the disadvantages may be and how I should have done this.

Had to get an authorization level from a user information
table to condition a screen indicator in an existing program.
The user table contains lots of other information like name,
department and telephone number, etc.

In my pgm :

// *IN49 is already on.

IF GetAutLevel>= '4';
*IN49 = *OFF;

ENDIF;


In a separate module where the user table is already used,
I added :


P GetAutLevel B EXPORT
D PI LIKE ( DFN_AUTLV )
D UserId LIKE ( DFN_USRID ) CONST
D Error LIKE ( DFN_ERRMG )

D wAutLv S LIKE ( DFN_AUTLV )

IF NOT SetUserInfo ( UserId : Error );
RETURN *BLANK;

ENDIF;

RETURN UAUTNV; // From user table

P GetAutLevel E




P SetUserInfo B
D PI N
D UserId LIKE ( DFN_USRID ) CONST
D Error LIKE ( DFN_ERRMG )

D wUserId S LIKE ( DFN_USRID )
D STATIC

IF wUsrId<> UserId;
CHAIN UserId USRCFD;
If not %found;
error = ....
RETURN *OFF;

ENDIF;

RETURN *ON;

P SetUserInfo B
--
This is the RPG programming on the IBM i / System i
(RPG400-L) mailing list To post a message email:
RPG400-L@xxxxxxxxxxxx To subscribe, unsubscribe, or change
list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/rpg400-l.


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.