× 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.



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.
>
>


As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:
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.