9.2. The try...on error Statement
You are familiar with the try statement, which was first introduced in Chapter 3. You use it according to this general format:
try statement statement ... end try
A statement in the try block that generates an error causes execution of the statements that follow, up to the end try, to be skipped. Execution of the program otherwise continues with whatever statement follows the try block.
One technique you learned to determine whether a statement in a try block fails is illustrated by the following code fragment from Chapter 4:
set validNumber to false try set triangularNumber to text returned of result as integer set validNumber to true end try if not validNumber then display dialog "You didn't enter an integer" with icon note end if
Here you set a flag to false before entering the try block and then set the flag to true after the last statement inside the try block is executed. This statement is reached only if none of the preceding statements—and here, you have only one such statement—in the try block generated an error. Outside the try block, you test the value of the flag to see if any errors occurred.
An easier way to accomplish this same logic involves using this form of the try statement:
try statement statement ... on error statement statement ... end try
If any of the statements between try and on error generates an error, the statements that follow the on error, up to the end try, get executed. If no errors are generated by the statements ...
Get Beginning AppleScript® now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.