|
Check the key/access path. Is it in descending order? Look at the DDS and verify that it is or isn't what you expected it to be. -Bob Cozzi www.RPGxTools.com RPG xTools - Enjoy programming again. -----Original Message----- From: rpg400-l-bounces@xxxxxxxxxxxx [mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of steema@xxxxxxxxxxxxx Sent: Wednesday, December 28, 2005 10:48 AM To: RPG programming on the AS400 / iSeries Subject: End of story for now The expanded logical provokes more records into the subfile. Not sure why am open to analyzing the code and data. > I am prepared to be proven wrong. Off line I will send the entire code. > I will send a donation to Katrina victims in your honor. > >> It's NOT your key list... >> >> The variable sflpag is where your problem lies... >> >> >> Thanks, >> Tommy Holden >> >> >> -----Original Message----- >> From: rpg400-l-bounces@xxxxxxxxxxxx >> [mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of steema@xxxxxxxxxxxxx >> Sent: Wednesday, December 28, 2005 10:16 AM >> To: RPG programming on the AS400 / iSeries >> Subject: RE: Why does this loop only pick up the first rec of a group >> >> I am thinking of a work around, to make the key containing many more >> fields. I think that will work, but still why. >>> What's the value of sflpag? The loop control variable, not the DSPF >>> keyword. >>> >>>> -------- Original Message -------- >>>> Subject: RE: Why does this loop only pick up the first rec of a group >>>> From: steema@xxxxxxxxxxxxx >>>> Date: Wed, December 28, 2005 10:48 am >>>> To: "RPG programming on the AS400 / iSeries" <rpg400-l@xxxxxxxxxxxx> >>>> >>>> Thank you Joe. This is the DDS for the subfile pag. I know the >> problem >>>> is in the initial build bec. I debugged at that point and the records >>>> are >>>> not correct. >>>> >>>> A R SFL1 SFL >>>> A* >>>> A 74 SFLNXTCHG >>>> A OPTION 1A B 10 3VALUES(' ' '2' '4' '5') >>>> A BAACCT R O 10 7REFFLD(ZZF01/BAACCT >> *LIBL/M >>>> A BAINVN R O 10 21REFFLD(ZZF01/BAINVN >> *LIBL/M >>>> A BABOL R O 10 38REFFLD(ZZF01/BABOL >> *LIBL/M >>>> A BAPRO R O 10 56REFFLD(ZZF01/BAPRO >> *LIBL/M >>>> A BASTAT R O 10 74REFFLD(ZZF01/BASTAT >> *LIBL/M >>>> A R SF1CTL SFLCTL(SFL1) >>>> A* >>>> A CF06 >>>> A SFLSIZ(0013) >>>> A SFLPAG(0012) >>>> A ROLLUP >>>> A OVERLAY >>>> A N32 SFLDSP >>>> A N31 SFLDSPCTL >>>> A 31 SFLCLR >>>> A 90 SFLEND(*MORE) >>>> A RRN1 4S 0H SFLRCDNBR >>>> A 9 7'ACCT#' >>>> A DSPATR(HI) >>>> A 9 21'INVOICE' >>>> A DSPATR(HI) >>>> A 9 37'BOL # ' >>>> A DSPATR(HI) >>>> A 4 2'POSITION TO . . . ACCT' >>>> A PACCT R B 4 30REFFLD(ZZLF01/BAACCT *LIBL/M >>>> A DSPATR(HI) >>>> A 9 2'OPT' >>>> >>>> >>>> Here is some code I switched back to one file. I was trying to read >> one >>>> and update another but it is the same basic code. >>>> >>>> c* Clear then build the initial subfile >>>> C exsr clrsf1 >>>> C exsr sflbld >>>> C* >>>> C dou cfkey = exit >>>> C write fkey1 >>>> C exfmt sf1ctl >>>> * Process position to information entered by the user, then clear >>>> >>>> C select >>>> C when (cfkey = enter) and (pacct <> *blanks) >>>> C *loval setll mllc1wa >>>> C exsr clrsf1 >>>> C exsr sflbld >>>> C clear pacct >>>> c when (cfkey = enter) >>>> C exsr prcsfl >>>> * >>>> C when (cfkey = rollup) and (not *in32) >>>> C exsr sflbld >>>> >>>> C when cfkey = cancel >>>> C leave >>>> >>>> C endsl >>>> C enddo >>>> >>>> C eval *inlr = *on >>>> >>>> >>>> C clrsf1 begsr >>>> * >>>> * Clear relative record numbers and subfile >>>> * >>>> C eval rrn1 = *zero >>>> C eval lstrrn = *zero >>>> C eval *in31 = *on >>>> C write sf1ctl >>>> C eval *in31 = *off >>>> C eval *in32 = *off >>>> C endsr >>>> >>>> >>>> C sflbld begsr >>>> * >>>> * Make RRN1 = to the last relative record number of the subfile >>>> * so that the load process will correctly add records to the bot >>>> >>>> * >>>> C eval rrn1 = lstrrn >>>> * >>>> * Load the subfile with one page of data or until end-of-file >>>> * >>>> C do sflpag >>>> C read zzlc1wa >> 90 >>>> C if *in90 >>>> C leave >>>> C endif >>>> C eval rrn1 = rrn1 + 1 >>>> >>>> C eval option = *blank >>>> C write sfl1 >>>> C enddo >>>> * If no records are loaded to subfile, don't display it >>>> * >>>> C if rrn1 = *zero >>>> C eval *in32 = *on >>>> C endif >>>> * >>>> C eval lstrrn = rrn1 >>>> * >>>> C endsr >>>> >>>> >>>> >>>> >>>> >>>> >>>> > There is a lot of information missing from your post, and perhaps a >>>> couple >>>> > of misconceptions. >>>> > >>>> > First, why do you think we need to know about the KLIST asbkey? It >> is >>>> not >>>> > used in your code, so it's irrelevant to the problem. >>>> > >>>> > Second, at the very minimum we would have to know the contents of >>>> sflpag, >>>> > as >>>> > well as the code that initially positions the mllc1wb file (if >> any). >>>> It >>>> > would probably be good to see the line of code that defines rrn1 to >> be >>>> the >>>> > subfile record number for sfl1, as well, but we can take your word >> for >>>> > that >>>> > one. >>>> > >>>> > Finally, it would be nice to know WHICH record was written to the >>>> subfile. >>>> > >>>> > Joe >>>> > >>>> > >>>> >> From: steema@xxxxxxxxxxxxx >>>> >> >>>> >> the file has records as such: >>>> >> >>>> >> 50079 1 1 60,239,717 1 >>>> > (...) >>>> >> 50079 1 1 60,239,723 7 >>>> >> >> .. >>>> >> >>>> >> C do sflpag >>>> >> C read mllc1wb >>>> 90 >>>> >> C if *in90 >>>> >> C leave >>>> >> C endif >>>> >> C eval rrn1 = rrn1 + 1 >>>> >> C eval option = *blank >>>> >> C write sfl1 >>>> >> C enddo >>>> >> >>>> >> Yet the subfile only loads the first record >>>> > >>>> > >>>> > -- >>>> > This is the RPG programming on the AS400 / iSeries (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. >>>> > >>>> > >>>> >>>> -- >>>> This is the RPG programming on the AS400 / iSeries (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. >>> >>> -- >>> This is the RPG programming on the AS400 / iSeries (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. >>> >>> >> >> -- >> This is the RPG programming on the AS400 / iSeries (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. >> >> >> -- >> This is the RPG programming on the AS400 / iSeries (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. >> >> > > -- > This is the RPG programming on the AS400 / iSeries (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 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.