SFLROLVAL is a field-level DDS keyword on a subfile-control (SFLCTL) format. The field bearing it is an operator-entry field (usage B or I, signed numeric with zero decimal positions, up to four digits) into which the workstation user types how many records the subfile should roll when a paging key is pressed. It takes no parameters - the field it is placed on is itself the roll-value field.
A R SFLCTL SFLCTL(SFLREC)
A SFLPAG(10)
A SFLSIZ(30)
A ROLLAMT 4 0B 1 5SFLROLVAL
With SFLROLVAL present, Page Down / Page Up roll the subfile by the number of records typed in the field rather than by a full page (SFLPAG). The typed value persists across pages until the operator types a new one. Behavior details, matching IBM i:
- A value greater than zero rolls by that many records.
- A blank or zero field rolls by a full page (a non-trapping default).
SFLROLVALapplies only to a system-managed subfile - one whoseSFLSIZexceeds itsSFLPAG. WhenSFLSIZequalsSFLPAG, it is ignored and a roll moves a full page.
SFLROLVAL and SFLRCDNBR are mutually exclusive on the same field (see DDS Display File Validation).