ONLINE HELP
 WINDEVWEBDEV AND WINDEV MOBILE

Help / WLanguage / Managing databases / HFSQL / HFSQL functions
  • Operating mode of custom errors
  • Using a class method to customize the errors
  • Customizing the default error windows
  • Customizing default error pages
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReports and QueriesUser code (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Browser code
WINDEV Mobile
AndroidAndroid Widget iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Others
Stored procedures
Customizes the management of HFSQL errors.
WINDEV, WEBDEV and WINDEV Mobile propose an automatic management of errors. The automatic management of errors can be disabled or enabled for one or more data files, for one or more types of errors. To do so, use HOnError and specify an empty string for the name of window, page or procedure. For more details, see Assisted HFSQL error handling.

HFSQL Client/ServerStored procedures The automatic management of errors is not available for the stored procedures.
Stored procedures HOnError can be used to manage the error in a stored procedure.
AndroidAndroid Widget Java Onlu the loss of connection can be customized.
WINDEVWEBDEV - Server codeReports and QueriesUniversal Windows 10 AppUser code (UMC)AjaxHFSQL ClassicHFSQL Client/ServerHyper File 5.5OLE DBNative Connectors (Native Accesses)
// Define the lock errors
// The OnLockError procedure is called 
// when a lock error occurs for all the data files
HOnError("*", hErrLock, "OnLockError")
WINDEVWEBDEV - Server codeReports and QueriesUniversal Windows 10 AppUser code (UMC)HFSQL ClassicHFSQL Client/ServerHyper File 5.5OLE DBNative Connectors (Native Accesses)
// Re-enable the automatic management
// of all the errors on all the data files
HOnError("*", hErrAll)
WINDEVWEBDEV - Server codeReports and QueriesUniversal Windows 10 AppUser code (UMC)AjaxHFSQL ClassicHFSQL Client/ServerHyper File 5.5OLE DBNative Connectors (Native Accesses)
// Re-enable the automatic management
// of lock errors on the Customer data file
HOnError("Customer", hErrLock)
Syntax
<Result> = HOnError(<Data file> , <Type of error> [, <Procedure/window/page>])
<Result>: Boolean
  • True if the operation was successfully performed,
  • False otherwise. HError returns more details about the problem.
<Data file>: Character string
Name of the data file used. If this parameter is equal to "*" the customization will be applied to all data files found in the analysis or defined through programming.
<Type of error>: Constant or combination of constants
Type of error to configure.
hErrAllConfigure all previous errors (except hErrIndex).
AndroidAndroid Widget Java This constant is not available.
hErrConnectionLossConfigure the errors caused by a loss of connection with the HFSQL server.
Universal Windows 10 App This constant is not available.
hErrDatabaseAccessConfigures the access errors to an HFSQL Client/Server database (access forbidden by HNoDatabaseAccess).
Universal Windows 10 AppAndroidAndroid Widget Java This constant is not available.
hErrDuplicatesConfigure duplicate errors.
AndroidAndroid Widget Java This constant is not available.
hErrIndexConfigures indexing errors (reindexing in progress during the file access).
AndroidAndroid Widget Java This constant is not available.
hErrIntegrityConfigure integrity errors.
AndroidAndroid Widget Java This constant is not available.
hErrLockConfigure lock errors.
AndroidAndroid Widget Java This constant is not available.
hErrModifyConfigure a modification conflict.
AndroidAndroid Widget Java This constant is not available.
hErrNeedValueConfigure errors caused by a required value that has not been specified (OLE DB and some Native Connectors).
Universal Windows 10 AppAndroidAndroid Widget Java This constant is not available.
hErrPasswordConfigure password errors (wrong password).
AndroidAndroid Widget Java This constant is not available.
<Procedure/window/page>: Optional character string
Corresponds to:
  • WINDEV Name of window or procedure to call when a <Type of error> error occurs.
  • WEBDEV - Server code Name of page or procedure to call when a <Type of error> error occurs.
  • Name of object method if HOnError is called in a method of this object.
  • AndroidAndroid Widget Java Name of procedure to call when a <Type of error> error occurs.
  • Parameter not specified. If "Enable the automatic HFSQL help" is checked in the project, the default window or page for automatic management of errors is used for the specified type of error and for the specified data file.
  • Empty string. In this case, the automatic management of errors will be disabled.
    Remark: To disable the automatic management of errors, you also have the ability to uncheck "Enable the automatic HFSQL help" in the project.
Remark: In some cases (loss of connection errors for example), the procedure/window/page will be run during the next call to the WLanguage function following the event that triggered the error.
WEBDEV - Server code Only some of the windows/pages for the automatic management of errors are available. The automatic management of errors is disabled for these errors.

Special case: using a window, a page or a procedure found in a component: The following syntax must be used:
Procedure:
HOnError(<Data file>, <Type>, ...
"<Component>.<Name of set of procedures>.<Procedure name>")

Window:
HOnError(<Data file>, <Type>, "<Component>.<Window name>")

Page:
HOnError(<Data file>, <Type>, "<Component>.<Page name>")
HFSQL Client/Server If a loss of connection occurs, to ask for reconnection, this procedure must call HReconnect.
Remarks

Operating mode of custom errors

The procedure, window or page used to customize the error must return one of the following constants:
opCancelThe function that triggered the error returns an error as if the assisted management was disabled.
Remark: For the errors of loss of connection, the error is fatal.
opEndProcessThe function that triggered the error returns an error and the current process stops. Equivalent to the following line of code:
IF NOT <HFSQL function> THEN SetFocusAndReturnToUserInput()
AndroidAndroid Widget Java This constant is not available.
opEndProgramThe function that triggered the error returns an error and the program stops. Equivalent to the following line of code:
IF NOT <HFSQL function> THEN EndProgram()
opRelaunchProgramThe program stops and the application is automatically restarted.
AndroidAndroid Widget Java This constant is not available.
opRetryThe function that triggered the error is re-run.

HFSQL Client/Server If a loss of connection occurs, to ask for reconnection, HReconnect must be used in the procedure called by HOnError.

Using a class method to customize the errors

<Name of procedure or window> can also correspond to a method of an object if HOnError is called in a method of this object. All you have to do is specify the name of the method to use (without using the object name as prefix).
A fatal error occurs if the object used in the call to HOnError is no longer allocated when the HFSQL engine calls the method
WINDEVReports and QueriesUniversal Windows 10 AppHFSQL ClassicHFSQL Client/ServerHyper File 5.5OLE DBNative Connectors (Native Accesses)

Customizing the default error windows

The default error windows and their WLanguage code are available in the "\Programs\Data\Preset Windows\EN\HyperFileSQL - Automatic Help Windows" directory.
These windows can be customized, included in your projects, and passed as parameters to HOnError.
For more details, see Assisted HFSQL error handling.
WEBDEV - Server codeHFSQL ClassicHFSQL Client/ServerHyper File 5.5OLE DBNative Connectors (Native Accesses)

Customizing default error pages

The default error pages and their WLanguage code are available in the "\Programs\Data\Preset Pages\EN\HyperFileSQL - Automatic Help Pages" directory.
These pages can be customized, included in your projects, and passed as parameters to HOnError.
For more details, see Assisted HFSQL error handling.
Related Examples:
WD Managing HFSQL Errors Training (WINDEV): WD Managing HFSQL Errors
[ + ] The "WD Managing HFSQL Errors" example presents the management of HFSQL errors (duplicate, integrity).
This example explains how to customize the process when an error occurs.
Component: wd290hf.dll
Minimum version required
  • Version 9
This page is also available for…
Comments
Click [Add] to post a comment

Last update: 12/04/2023

Send a report | Local help