Difference between revisions of "BEGIN SEQUENCE"

From Recital Documentation Wiki
Jump to: navigation, search
 
Line 1: Line 1:
=BEGIN SEQUENCE=
 
 
 
 
==Class==
 
==Class==
 
Error Handling and Debugging
 
Error Handling and Debugging
Line 37: Line 34:
 
error = .F.
 
error = .F.
 
begin sequence
 
begin sequence
 +
 
do while not eof()
 
do while not eof()
  if empty(name)
+
    if empty(name)
    rec = recno()
+
        rec = recno()
    error = .T.
+
        error = .T.
    break
+
        break
  else
+
    else
    display name
+
        display name
  endif
+
    endif
  skip
+
    skip
 
enddo
 
enddo
 +
 
end sequence
 
end sequence
 +
 
if error
 
if error
  set message to "Error: No name in record; &rec."
+
    set message to "Error: No name in record; &rec."
 
else
 
else
  set message to "End of file reached."
+
    set message to "End of file reached."
 
endif
 
endif
 
</code>
 
</code>

Revision as of 11:14, 21 April 2009

Class

Error Handling and Debugging


Purpose

Start error-handling block


Syntax

BEGIN SEQUENCE

<command>

[BREAK]

<command>

END SEQUENCE


See Also

ON ERROR


Description

The main purpose of the BEGIN SEQUENCE ... BREAK ... END SEQUENCE construct is to allow for programmable error handling. The commands that follow the END SEQUENCE command will normally be devoted to error handling and will be executed immediately.

BREAK

The BREAK keyword can be used whenever the program commands detect an error. For this purpose, BREAK may appear at any depth within nested procedures. When BREAK is encountered, all stacked procedures will unwind automatically.


Example

error = .F.
begin sequence
 
do while not eof()
    if empty(name)
        rec = recno()
        error = .T.
        break
    else
        display name
    endif
    skip
enddo
 
end sequence
 
if error
    set message to "Error: No name in record; &rec."
else
    set message to "End of file reached."
endif


Products

Recital Database Server, Recital Mirage Server, Recital Terminal Developer