ON EVERY ROW
Defines printing commands for each row in a report.
The ON EVERY ROW control block specifies the action to be taken by the runtime
system for every input record that is passed to the report definition.
ON EVERY ROW control
block for each new input record that is passed to the report. The following example is from a
report that lists all the customers, their addresses, and their telephone numbers across the
page: ON EVERY ROW
PRINT r.fname, " ", r.lname, " ",
r.address1, " ", r.cust_phoneThe runtime system delays processing the PAGE HEADER control block (or the
FIRST PAGE HEADER control block, if it exists) until it encounters the first
PRINT, SKIP, or NEED statement in the
ON EVERY ROW control block.
If a BEFORE GROUP OF control block is triggered by a change in the value of a
variable, the runtime system executes all appropriate BEFORE GROUP OF control
blocks (in the order of their priority) before it executes the ON EVERY ROW
control block. Similarly, if execution of an AFTER GROUP OF control block is
triggered by a change in the value of a variable, the runtime system executes all appropriate
AFTER GROUP OF control blocks (in the reverse order of their priority) before it
executes the ON EVERY ROW control block.