The event-driven model provides a highly flexible environment for interactive applications. Reports collect and organize static data without interaction from the user, so traditional top-down programming techniques work better for this task. Typically, you can integrate a report-generating procedure into an event-driven application using a trigger with a RUN statement attached to a button or menu command (covered later).

The components of a basic report procedure include:

  • A special type of frame, called a down frame, that can hold more than one iteration of data
  • Frame phrase options to format the frame and included widgets
  • Text widgets
  • Format phrase options to format individual widgets
  • An iterating control block
  • An output statement