|
Kurt,
Your window keyword in the WDWCTL record seems to be wrong if I
understand it correctly. You need a full definition of the window in
this control records and a reference to it in the WDW record. The error
you are probably getting is no such window on the screen or something
like that. That means you haven't written the foundation record to the
screen first. After that you can write any or all records that use the
foundation record as a reference. Here is the way that I usually code a
window with an error message line:
A*---------------------
A* BASIC SUBFILE WINDOW
A*---------------------
A R WDW20S SFL
A*%%TS SD 20050525 045149 MARVINR REL-V5R1M0 5722-WDS
A SCSEL 1A B 4 2DSPATR(HI)
A SC10ITEM R O 4 5REFFLD(ITREC/ITITEM
*LIBL/MFITEM)
A COLOR(TRQ)
A SC10DESC R O 4 14REFFLD(ITREC/ITDESC
*LIBL/MFITEM)
A COLOR(TRQ)
A*--------------------------------------
A* BASIC SUBFILE WINDOW CONTROL RECORD
A*--------------------------------------
A R WDW20C SFLCTL(WDW20S)
A*%%TS SD 20050525 094210 MARVINR REL-V5R1M0 5722-WDS
A PAGEDOWN(16)
A RTNCSRLOC(*RECNAME &#RECORD
&#FIELD-
A &#POSITION)
A OVERLAY
A 75 SFLDSP
A N76 SFLDSPCTL
A 76 SFLCLR
A 77 SFLEND(*MORE)
A SFLSIZ(0050)
A SFLPAG(0009)
A WINDOW(2 2 15 43 *NOMSGLIN)
<<<<<<<<<<<<<< This is the foundation window statement
A WDWTITLE((*TEXT ' ADD ITEM
') (*CO-
A LOR YLW) (*DSPATR RI)
*CENTER)
A WDWTITLE((*TEXT ' SELECT
ITEM AND P-
A RESS ENTER ') (*COLOR YLW)
(*DSPATR-
A RI) *CENTER *BOTTOM)
A #RRN10 4 0H SFLRCDNBR
A #POSTION 4S 0H
A #POSITION 4S 0H
A #FIELD 10A H
A #RECORD 10A H
A 2 1'Sel Item # Description
-
A '
A COLOR(YLW)
A DSPATR(RI)
A FL10ITEM R B 3 5REFFLD(ITREC/ITITEM
*LIBL/MFITEM)
A DSPATR(HI)
A CHANGE(60)
A FL10DESC R B 3 14REFFLD(ITREC/ITDESC
*LIBL/MFITEM)
A DSPATR(HI)
A CHANGE(60)
A*----------------------------------------
A* BASIC ERROR MESSAGE SUBFILE IN A WINDOW
A*----------------------------------------
A R WDW20SE SFL
A*%%TS SD 20030707 104653 MARVINR REL-V5R1M0 5722-WDS
A SFLMSGRCD(15)
A MSGKEY SFLMSGKEY
A QM_MSGQ SFLPGMQ(10)
A*------------------------------------------------------
A* BASIC ERROR MESSAGE SUBFILE CONTROL RECORD
A*----------------------------------------------------
A R WDW20CE SFLCTL(WDW20SE)
A*%%TS SD 20030716 153545 MARVINR REL-V5R1M0 5722-WDS
A SFLSIZ(0002)
A SFLPAG(0001)
A WINDOW(WDW20C) <<<<<<<<<
This is the reference to the foundation window.
A OVERLAY
A SFLDSP
A SFLDSPCTL
A SFLINZ
A 98 SFLEND
A #POSITION 4 0H
A #FIELD 10 H
A #RECORD 10 H
A QM_MSGQ SFLPGMQ(10)
A 14 1'F3=Exit F12=Cancel'
A COLOR(BLU)
The foundation window must be written to the screen first or you will
get a window not found error.
Marvin
-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx
[mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of Kurt Anderson
Sent: Thursday, May 26, 2005 9:41 AM
To: RPG programming on the AS400 / iSeries
Subject: Processing... Please Wait... But with a subfile
I just read the thread about informing the user that processing is
occurring. My options include sndpgmmsg or issuing a Write (w/FrcDta
keyword on record format). I want to go with the latter, and I'm
looking to do a little bit more. I'd like to display a subfile as it's
being built w/o waiting for the user. Essentially the user would see
the 'processing...' message above the subfile column headings, but would
also see any exception messages pop up at the same time. At the end,
the window footer would display command keys appropriate to the result
of the processing.
My window is as such:
* subfile
A R WdwSfl
* subfile control (header)
A R WdwCtl SflCtl( WdwSfl )
A Window(Wdw)
A FrcDta
A 96 SflDsp
A N98 SflDspCtl
A 98 SflClr
A 96 SflEnd( *ScrBar )
* window definition (footer)
A R Wdw
In the code:
// build record to write to subfile
SflClr = *Off (in98)
WdwSflDsp = *On; (in96)
WdwRRN += 1;
Write WdwSfl;
Write WdwCtl; <------- error
Write Wdw;
If I remove the error statement, I only get a window (subfile is not
displayed).
Thanks,
Kurt Anderson
Application Developer
Highsmith Inc.
W5527 State Road 106, P.O. Box 800
Fort Atkinson, WI 53538-0800
TEL (920) 563-9571 FAX (920) 563-7395
EMAIL kjanderson@xxxxxxxxxxxxx
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2025 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.