Propagates a non-fatal error that can be processed by the calling code if the management of non-fatal errors is enabled for this code (in the code editor or by
ErrorChangeParameter).
The error is processed by the higher level if:
- an error process was enabled by the higher level.
- the error is not managed by IF ... NOT or by the ErrorOccurred variable.
Syntax
Propagating a non-fatal error (adding a message, if necessary) Hide the details
ErrorPropagate([<Message>])
<Message>: Optional character string
Additional message that can be added to the error. This message is inserted at the beginning of the error.
Propagating a non-fatal error by changing the error number (and adding a message, if necessary) Hide the details
ErrorPropagate(<Number> [, <Message>])
<Number>: Integer
Error number, defined by the developer. This number must be between 1 and 1000. This number replaces the existing error number.
<Message>: Optional character string
Additional message that can be added to the error. This message is inserted at the beginning of the error.
Remarks
How to get information about the error processed?
ErrorInfo returns information about the error.
Purpose: Encapsulating fOpen in a procedure while implementing the error of fOpen (if it occurs):
PROCÉDURE OpenFile(LOCAL sFileName is string)
fOpen(sFileName)
IF ErrorOccurred = True THEN
ErrorPropagate()
RETURN // or RESULT
END
...
Then, you have the ability to call the OpenFile procedure:
...
OpenFile(sFileName)
IF ErrorOccurred = True THEN
// process the error
END
Remark: An equivalent process can be performed with the mode for automatic management of errors.
The error handling mechanism, whether it is managed automatically (via the
error handling window) or programmatically (with
ErrorChangeParameter), is not triggered if the WLanguage function or the user procedure is in one of the following cases:
IF NOT <Function or procedure> THEN
// process the error
END
<Function or procedure>
IF ErrorOccurred = True THEN
// process the error
END
The mechanism considers that the error is processed by programming and the automatic process is not triggered.
Business / UI classification: Neutral code