CONTINUE INPUT instruction

CONTINUE INPUT skips all subsequent statements in the current control block and gives the control back to the dialog. This instruction is useful when program control is nested within multiple conditional statements, and you want to return the control to the dialog. If this instruction is called in a control block that is not AFTER INPUT, further control blocks might be executed depending on the context. Actually, CONTINUEINPUT just instructs the dialog to continue as if the code in the control block was terminated (i.e. it's a kind of GOTO end_of_control_block). However, when executed in AFTER INPUT, the focus returns to the current row and current field in the list, giving the user another chance to enter data in that field. In this case the BEFORE ROW and BEFORE FIELD triggers will be invoked.

In this example, an ON ACTION block gives control back to the dialog, skipping all instructions after line 04:
ON ACTION zoom 
   IF p_cust.cust_id IS NULL OR p_cust.cust_name IS NULL THEN
      ERROR "Zoom window cannot be opened."
      CONTINUE INPUT
   END IF
   IF p_cust.cust_address IS NULL THEN
      ...

You can also use the NEXT FIELD control instruction to give the focus to a specific field and force the dialog to continue. However, unlike CONTINUE INPUT, the NEXT FIELD instruction will also skip the further control blocks that are normally executed.