|
Scott, I don't know how to get you to reproduce the problem. If I could maybe I would know how NOT to produce it (Big grin). Some differences I see, that may or may not be relevant. I declare Mesg78_A at the end of the DDS format, rather than at the beginning. I am using input and output data structures with reads and writes to put/get field values rather than 'exfrmt'. (I could not get the input data structure to be filled or to write the output data structure using 'exfrmt'. I'd sent an email to the list looking for suggestions on how to do this using 'exfrmt' this but did not get any replies. I would still be interested in finding out how to use these data structures with exfrmt, if possible.) Your example shows x'a9', my code generates x'A9'. Every table I looked at listed 'A9'. Are these equivalent? I am running this on a PC using Iseries Access for Windows V5.5, but I get the same results if I run this on an IBM 3477 terminal. The code to generate 'MESG78_A' involves passing the desired attributes to external sub procedures that return the code that 'MESG78_A' is to be filled with, so I won't include this code. However, debug shows this code to be 'z', the hex of 'A9', immediately before writing the screen, which is what I expected. I am confident that part is working. Plus the fact that the field is being displayed with the correct attributes, they just don't quit when I want them to. Everything from the beginning of Mesg78 to line24pos1 shows as RI/BL. This is the entire DDS for this format. Maybe someone can see something I am missing. Again, if I replace DSPATR(MESG78_A) with DSPATR(RI BL), and not change ANY of the RPG program, it works as expected. A* CIPB0004 - Enter new record information A* A R CIPB0004 RTNCSRLOC(*WINDOW &ROW &COL) A CSRLOC(ROW COL) A HLPSEQ(CIPB00 04) A DSPMOD(*DS3) A PRINT A 99 ALARM A INVITE A SLNO(01) A CLRL(*NO) A ALWROL A CF01 CF03 CF07 CF11 CF12 A HELP A* A ROW 3S 0H A COL 3S 0H A* A PGNAME 6 O 1 3 A SCRNID 2 I 1 10DFT('04') A DSPATR(PR MDT) A 1 23' Add a New Record ' A DSPATR(RI) A 3 9'Sequence#:' A SEQ#A 6D B 3 20DSPATR(RI) A DSPATR(PR) A 5 15'Part#:' A PRT#A 7D B 5 22CHECK(RZ) A DUP A DSPATR(UL) A DSPATR(&PRT#A_A) A 5 30'-' A PTDESC 25A O 5 32 A 6 11'Condition:' A COND 1A B 6 22DUP A DSPATR(UL) A DSPATR(&COND_A) A 6 25'-' A ICDESC 50A O 6 27 A DSPATR(&COND_A) A 7 14'Length:' A LENGA 3D B 7 22CHECK(RB) A DUP A DSPATR(UL) A DSPATR(&LENGA_A) A 8 2'Problem entered by:' A ENTUSR 10A B 8 22DUP A DSPATR(UL) A DSPATR(&ENTUSR_A) A 9 3'Problem Description:' A PDSC01 75A B 10 3CHECK(LC) A DSPATR(UL) A DSPATR(&PDSC01_A) A DUP A PDSC02 75A B 11 3CHECK(LC) A DSPATR(UL) A DUP A DSPATR(&PDSC01_A) A PDSC03 75A B 12 3CHECK(LC) A DSPATR(UL) A DUP A DSPATR(&PDSC01_A) A PDSC04 75A B 13 3CHECK(LC) A DSPATR(UL) A DUP A DSPATR(&PDSC01_A) A 14 9'Resolved by:' A SLNUSR 10A B 14 22DSPATR(UL) A DUP A DSPATR(&SLNUSR_A) A 14 34'Inventory adjustment#:' A SLNIA#A 6D B 14 57CHECK(RB) A DUP A DSPATR(UL) A DSPATR(&SLNIA#A_A) A 15 11'Resolution:' A SDSC01 75A B 16 3CHECK(LC) A DUP A DSPATR(UL) A DSPATR(&SDSC01_A) A SDSC02 75A B 17 3CHECK(LC) A DUP A DSPATR(UL) A DSPATR(&SDSC01_A) A SDSC03 75A B 18 3CHECK(LC) A DUP A DSPATR(UL) A DSPATR(&SDSC01_A) A SDSC04 75A B 19 3CHECK(LC) A DUP A DSPATR(UL) A DSPATR(&SDSC01_A) A 20 16'Code:' A CODE 1A B 20 22CHECK(ER) A DUP A DSPATR(UL) A DSPATR(&CODE_A) A MESG78 78 O 22 2 A DSPATR(&MESG78_A) A 24 3'F12>' A LMSDSC 15 O 24 8 A 24 24'F1>Help' A 24 32'F3>Exit' A 24 40'F4>Pick' A 24 48'F11>Change' A PRT#A_A 1A P A COND_A 1A P A LENGA_A 1A P A ENTUSR_A 1A P A PDSC01_A 1A P A SLNUSR_A 1A P A SLNIA#A_A 1A P A SDSC01_A 1A P A CODE_A 1A P A MESG78_A 1A P -----Original Message----- From: midrange-l-bounces@xxxxxxxxxxxx [mailto:midrange-l-bounces@xxxxxxxxxxxx] On Behalf Of Scott Klement Sent: Thursday, November 04, 2004 9:46 AM To: Midrange Systems Technical Discussion Subject: RE: Display file attributes Hi Tim, > > We are on V5R2, ptf level = C4077520. > I'm on the exact same release and CUM level. I'm now trying to reproduce the problem that you describe... I've written the following DDS: A DSPSIZ(24 80 *DS3) A R KREDLOS1 A MESG78_A 1A P A MESG78 78 O 22 2 A DSPATR(&MESG78_A) A 24 3'F12>' And the following RPG program to test it with: FKREDLOS CF E WORKSTN /free mesg78 = ' ** Invalid length' + mesg78_a = x'a9'; exfmt kredlos1; *inlr = *on; /end-free (don't mind the filename/record names!) When I run this, it seems to work exactly the same as it would if I used DSPATR(RI BL). I don't see the difference?! The line that says 'invalid length' is reversed and blinking, the other lines are not. Can you tell me how to reproduce the problem? -- This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list To post a message email: MIDRANGE-L@xxxxxxxxxxxx To subscribe, unsubscribe, or change list options, visit: http://lists.midrange.com/mailman/listinfo/midrange-l or email: MIDRANGE-L-request@xxxxxxxxxxxx Before posting, please take a moment to review the archives at http://archive.midrange.com/midrange-l.
As an Amazon Associate we earn from qualifying purchases.
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.