I copied your program and made a small change. It seems to work fine.
However I'm on V5r4 so I had to create two separate programs because I can't
put the separate display file in a subprocedure. Here's the change I made.
Add the following code just before you call the second program in your
subfile loop.
Write TEST1C1;
Rex Reese
-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx [mailto:rpg400-l-bounces@xxxxxxxxxxxx]
On Behalf Of rpg400-l-request@xxxxxxxxxxxx
Sent: Tuesday, October 05, 2010 9:14 AM
To: rpg400-l@xxxxxxxxxxxx
Subject: RPG400-L Digest, Vol 9, Issue 762
Send RPG400-L mailing list submissions to
rpg400-l@xxxxxxxxxxxx
To subscribe or unsubscribe via the World Wide Web, visit
http://lists.midrange.com/mailman/listinfo/rpg400-l
or, via email, send a message with subject or body 'help' to
rpg400-l-request@xxxxxxxxxxxx
You can reach the person managing the list at
rpg400-l-owner@xxxxxxxxxxxx
When replying, please edit your Subject line so it is more specific
than "Re: Contents of RPG400-L digest..."
*** NOTE: When replying to this digest message, PLEASE remove all text
unrelated to your reply and change the subject line so it is meaningful.
Today's Topics:
1. Re: Compare for large RPGLE source members. (Vern Hamberg)
2. Re: Convert from free to fixed (Barbara Morris)
3. Popup windows in subfiles (joepluta@xxxxxxxxxxxxxxxxx)
4. RE: Compare for large RPGLE source members. (Morgan, Paul)
5. Re: Popup windows in subfiles (joepluta@xxxxxxxxxxxxxxxxx)
6. Map Null Indicator to DS in trigger program (Obelix-it)
7. Re: Popup windows in subfiles (Wim_Vandepoel@xxxxxxx)
8. R?p. : Popup windows in subfiles (Denis Robitaille)
----------------------------------------------------------------------
message: 1
date: Mon, 04 Oct 2010 17:46:07 -0500
from: Vern Hamberg <vhamberg@xxxxxxxxxxx>
subject: Re: Compare for large RPGLE source members.
It hasn't choked on a 20,000-line member - and that's RPGLE, which is
longer that most other source types.
On 10/4/2010 11:27 AM, Morgan, Paul wrote:
CMPPFM will choke but the max depends on dividing 16meg by the record
length with some fudging:
Max = ( 16777216 / ( record length + 11 ) ) - 100
Paul
Principal Programmer Analyst
IS Supply Chain/Replenishment
-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx [mailto:rpg400-l-bounces@xxxxxxxxxxxx]
On Behalf Of Jerry Adams
Sent: Monday, October 04, 2010 12:10 PM
To: RPG programming on the IBM i / System i
Subject: RE:Compare for large RPGLE source members.
There's always the CMPPFM command. That's part of the Programmer
Development Tools library (QPDA) and don't know if it would choke on
something this big or not as I don't have anything closely equivalent for
testing.
Jerry C. Adams
IBM System i Programmer/Analyst
Novelty is always welcome, but talking pictures are a fad. - Irving
Thalberg
------------------------------
message: 2
date: Mon, 04 Oct 2010 19:38:51 -0400
from: Barbara Morris <bmorris@xxxxxxxxxx>
subject: Re: Convert from free to fixed
On 2010/10/4 6:32 PM, Larry Ducie wrote:
...
The line would already be in error. The assignment has failed and the
condition handler has been called.
I would put a breakpoint on the line after this line, tell the condition
handler to continue and then fix up the data post-facto.
Let me see if I understand correctly. Your conditional handler would
normally percolate or promote the exception, and it would have only
resume at next instruction when you set the action parameter to 10
within a debug session? And you would never set the action parameter to
resume unless you were able to set a breakpoint on the next statement
following the statement in error?
That seems ok to me.
I can see why you'd only do that rarely. It's not always easy to find
the next statement. For example when the error statement is an IF
statement, you wouldn't know whether the next statement is going to be
in the "if" part or or the "else" part. It might be a good idea to both
set your breakpoint where you think the next statement is, and also use
the "step outof" command in the debugger.
As a rule of thumb, I'd say that a CEEHDLR condition handler should be
_coded_ so that it always returns with the action parameter being either
percolate or promote. So having it return with action being set to
resume would only be possible in a debug setting.
------------------------------
message: 3
date: Tue, 5 Oct 2010 12:08:58 -0500 (CDT)
from: joepluta@xxxxxxxxxxxxxxxxx
subject: Popup windows in subfiles
I've got a simple situation. I populate a subfile, and can then make
selections on the subfile. I use a READC to process the subfile, and on
each selection I call a second program which pops up a window. Everything
works fine as long as I only select one record - the window pops up over
the subfile, I hit enter to get out, the subfile is redisplayed, all is
good.
The problem comes when I select more than one record. Again, the first
selection works fine. But when I do a second READC / call, the popup
window is displayed with a completely black background; the underlying
subfile is cleared completely.
Anybody run into this? I've got KEEP and ASSUME on a DUMMY record format
in screen 2. I've changed the RSTDSP parameters to all four combinations
of *YES and *NO on the two programs. The programs themselves are RPG
programs compiled with DFTACTGRP(*YES). Both set on *INLR when they exit.
I'm including the source. Hopefully it will make it through. As you can
see, it's not rocket science. But it's really annoying.
Joe
-- TEST1D
A INDARA
A R TEST1S1 SFL
A 51 SFLNXTCHG
A S1SEL 1 B 4 2
A S1VAL 8 0O 4 4
A R TEST1C1 SFLCTL(TEST1S1)
A SFLSIZ(0018)
A SFLPAG(0017)
A OVERLAY
A CA03(03 'EXIT')
A 62 SFLDSP
A 61 SFLDSPCTL
A N61 SFLCLR
A 1 2USER
A 1 38'TEST'
A DSPATR(HI)
A 1 72TIME
A 3 2'A'
A 3 4' VALUE '
A R TEST1R1
A OVERLAY
A 23 2'F3=EXIT'
A COLOR(BLU)
-- TEST1
FTEST1D CF E WORKSTN INDDS(WSINDS)
F SFILE(TEST1S1:RRN1)
d RRN1 s 4s 0
d WSINDS ds 99
d WS_F3 03 03n
d WS_DspSflCtl 61 61n
d WS_DspSfl 62 62n
d TEST2 pr extpgm('TEST2')
d parm 8s 0 const
/free
WS_DspSfl = *off;
WS_DspSflCtl = *off;
write TEST1C1;
for RRN1 = 1 to 30;
S1SEL = *blank;
S1VAL = RRN1;
write TEST1S1;
endfor;
write TEST1R1;
WS_DspSfl = *on;
WS_DspSflCtl = *on;
write TEST1C1;
exfmt TEST1C1;
dow not WS_F3;
readc TEST1S1;
dow not %eof(TEST1D);
TEST2(S1VAL);
S1SEL = *blank;
update TEST1S1;
readc TEST1S1;
enddo;
write TEST1C1;
exfmt TEST1C1;
enddo;
*inlr = *on;
/end-free
-- TEST2D
A INDARA
A R DUMMY KEEP ASSUME
A 1 2' '
A R TEST2W1 OVERLAY
A WINDOW(10 30 02 20 *NOMSGLIN)
A*
A 1 2'Value:'
A XXVAL 8 0O 1 10
-- TEST2
FTEST2D CF E WORKSTN
d TEST2 pr extpgm('TEST2')
d parm 8s 0 const
d TEST2 pi
d parm 8s 0 const
/free
XXVAL = parm;
exfmt TEST2W1;
*inlr = *on;
/end-free
------------------------------
message: 4
date: Tue, 5 Oct 2010 09:15:26 -0400
from: "Morgan, Paul" <Paul.Morgan@xxxxxxxxxxx>
subject: RE: Compare for large RPGLE source members.
Let's say you have 80 and 120 char to a source text line so the record
length is 92 and 132 which gives Max records to compare of 162,875 and
117,213.
Paul
Principal Programmer Analyst
IS Supply Chain/Replenishment
-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx [mailto:rpg400-l-bounces@xxxxxxxxxxxx]
On Behalf Of Vern Hamberg
Sent: Monday, October 04, 2010 6:46 PM
To: RPG programming on the IBM i / System i
Subject: Re: Compare for large RPGLE source members.
It hasn't choked on a 20,000-line member - and that's RPGLE, which is
longer that most other source types.
On 10/4/2010 11:27 AM, Morgan, Paul wrote:
CMPPFM will choke but the max depends on dividing 16meg by the record
length with some fudging:
Max = ( 16777216 / ( record length + 11 ) ) - 100
Paul
Principal Programmer Analyst
IS Supply Chain/Replenishment
-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx [mailto:rpg400-l-bounces@xxxxxxxxxxxx]
On Behalf Of Jerry Adams
Sent: Monday, October 04, 2010 12:10 PM
To: RPG programming on the IBM i / System i
Subject: RE:Compare for large RPGLE source members.
There's always the CMPPFM command. That's part of the Programmer
Development Tools library (QPDA) and don't know if it would choke on
something this big or not as I don't have anything closely equivalent for
testing.
Jerry C. Adams
IBM System i Programmer/Analyst
Novelty is always welcome, but talking pictures are a fad. - Irving
Thalberg
As an Amazon Associate we earn from qualifying purchases.