× 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: Old 36 Display Files
  • From: Scott Klement <klemscot@xxxxxxxxxxxx>
  • Date: Wed, 18 Jul 2001 12:25:35 -0500 (CDT)



On Wed, 18 Jul 2001 Kmh0421@aol.com wrote:

[SNIP - background info]

> Below is the definition for arrays' ERR & $MSG. The error fields are also 
> described in data structures. In editing, I do:
> MOVEA $MSG,XX ERR,X decreasing X as I go.
> I want to display up to 8 errors on the screen. The first error, lets say 
> MSG,20 moves properly to ERR3G (with a move to ERR,X  where X=8).... but the 
> next edit, lets say MSG,22 which is to go into ERR,X where X=7... instead 
> moves MSG,22 to element 7, and overwrites element 8 with the next consecutive 
> message after MSG,22, which is MSG,23... I have watched it time and again in 
> debug... then MSG 22 and 23 are displayed instead of MSG,20 and MSG,22!!!! Do 
> you have any idea why that happens? 

That's what MOVEA does...   it moves as much of the array is left into as
much of the destination array as it can.

Replace your MOVEA with a MOVEL or MOVE and that problem should go away.

[SNIP - code snippet]

> My second problem is multiple users. I tried compiling with with 99 maximum 
> devices, I tried using KNUM 99 on the file spec. Still, when I try to bring 
> up a second copy of the program, it locks until I release the first copy. 
> What to do? I just don't know. 

Changing the max users makes your program into a MRT.   In a MRT, you will
have a single copy of a program controlling many different terminals.
Unless you understand how MRT's work, you probably don't want to use them.

This is especially true if you're running this program on an AS/400 or
iSeries/400... (as opposed to an actual S/36) In this case, you really
won't see any benefits from making your program a MRT.

Instead, change the 'Maximum number of requesting display stations' to 0.
and (if applicable) do a CHGS36PRCA to change the procedure to MRT(*NO)

> Can anyone help on these problems? Again, no RPGIV / ILE, and many things in 
> even RPGIII are not allowed. For example, I can't EXFMT, I must EXCPT/READ 
> screen formats. This isn't negotiable, so let's not go there. What must be 
> must be.
> 
> Help! Please?
> Thanks;
> Kathie

If you DO want your program to be a MRT, I hear that Frank Kolmann is
an expert :)  (sorry, Frank.. I just couldnt resist)


+---
| This is the RPG/400 Mailing List!
| To submit a new message, send your mail to RPG400-L@midrange.com.
| To subscribe to this list send email to RPG400-L-SUB@midrange.com.
| To unsubscribe from this list send email to RPG400-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.