|
|
|
|
|
- Fonctionnement des erreurs personnalisées
- Utilisation d'une méthode de classe pour personnaliser les erreurs
- Personnalisation des fenêtres d'erreur par défaut
- Personnalisation des pages d'erreur par défaut
HSurErreur (Fonction) En anglais : HOnError
Non disponible avec ce type de connexion
Personnalise la gestion des erreurs HFSQL. WINDEV, WEBDEV et WINDEV Mobile proposent une gestion automatique des erreurs. La gestion automatique des erreurs peut être débranchée ou rebranchée sur un ou plusieurs fichiers de données, pour un ou plusieurs types d'erreurs. Il suffit d'utiliser la fonction HSurErreur en spécifiant une chaîne vide en nom de fenêtre, de page ou de procédure. Pour plus de détails, consultez Gestion assistée des erreurs HFSQL.
Syntaxe
<Résultat> = HSurErreur(<Fichier de données> , <Type de l'erreur> [, <Procédure/fenêtre/page>])
<Résultat> : Booléen - Vrai si l'opération a été effectuée sans problème,
- Faux dans le cas contraire. La fonction HErreur permet d'obtenir plus d'informations sur le problème rencontré.
<Fichier de données> : Chaîne de caractères Nom du fichier de données manipulé. Si ce paramètre est égal à "*", la personnalisation sera appliquée à tous les fichiers de données présents dans l'analyse ou définis par programmation. <Type de l'erreur> : Constante ou combinaison de constantes Type d'erreur à paramétrer. | | hErrAccèsBaseDeDonnées | Paramétrage des erreurs d'accès à une base de données HFSQL Client/Serveur (interdiction d'accès par la fonction HInterditAccèsBaseDeDonnées).
| hErrBlocage | Paramétrage des erreurs de blocage.
| hErrDoublon | Paramétrage des erreurs de doublons.
| hErrIntégrité | Paramétrage des erreurs d'intégrité.
| hErrModification | Paramétrage d'un conflit de modification.
| hErrMotDePasse | Paramétrage des erreurs de mot de passe (mot de passe incorrect).
| hErrPerteConnexion | Paramétrage des erreurs dues à une perte de la connexion avec le serveur HFSQL.
| hErrRéindexation | Paramétrage des erreurs de ré-indexation (ré-indexation en cours lors de l'accès au fichier de données).
| hErrTout | Paramétrage de toutes les erreurs précédentes (sauf hErrRéindexation).
| hErrValeurObligatoire | Paramétrage des erreurs dues à une valeur obligatoire et non renseignée (OLE DB et certains accès natifs).
|
<Procédure/fenêtre/page> : Chaîne de caractères optionnelle Correspond : - Nom de méthode d'un objet si la fonction HSurErreur est appelée dans une méthode de cet objet.
- Paramètre non spécifié. Si l'option du projet "Activer l'assistance automatique HFSQL" est cochée, la fenêtre/page par défaut de gestion automatique des erreurs est utilisée pour le type d'erreur et le fichier de données spécifiés.
- Chaîne vide. Dans ce cas, la gestion automatique des erreurs sera désactivée.
Remarque : Pour désactiver la gestion automatique des erreurs, il est également possible de décocher l'option du projet "Activer l'assistance automatique HFSQL".
Remarque : Dans certains cas (par exemple erreurs de perte de connexion), la procédure/fenêtre/page sera exécutée uniquement lors du prochain appel à la fonction WLangage suivant l'événement provoquant l'erreur.
Cas particulier : utilisation d'une fenêtre, d'une page ou d'une procédure d'un composant : Il est nécessaire d'utiliser la syntaxe suivante : Procédure :
HSurErreur(<Fichier de données>, <Type>, ... "<Composant>.<Nom de la Collection de procédures>.<Nom de la procédure>")
Fenêtre :
HSurErreur(<Fichier de données>, <Type>, "<Composant>.<Nom de la fenêtre>") Page :
HSurErreur(<Fichier de données>, <Type>, "<Composant>.<Nom de la page>") Remarques Fonctionnement des erreurs personnalisées La procédure, la fenêtre ou la page permettant de personnaliser l'erreur devra renvoyer une des constantes suivantes : | | opAnnuler | La fonction ayant déclenché l'erreur renvoie une erreur de la même manière que si la gestion assistée avait été désactivée. Remarque : Pour les erreurs de perte de connexion, l'erreur est fatale. | opFinProgramme | La fonction ayant déclenché l'erreur renvoie une erreur et le programme s'arrête. Équivalent à une ligne de code de type :
SI PAS <Fonction HFSQL> ALORS FinProgramme() | opFinTraitement | La fonction ayant déclenché l'erreur renvoie une erreur et le traitement en cours s'arrête. Équivalent à une ligne de code de type :
SI PAS <Fonction HFSQL> ALORS DonneFocusEtRetourUtilisateur() | opRéessayer | La fonction ayant déclenché l'erreur est ré-exécutée. | opRelanceProgramme | Le programme s'arrête et l'application est automatiquement relancée.
|
Utilisation d'une méthode de classe pour personnaliser les erreurs Le paramètre <Nom de la procédure ou de la fenêtre> peut également correspondre à une méthode d'un objet si la fonction HSurErreur est appelée dans une méthode de cet objet. Il suffit de préciser le nom de la méthode à utiliser (sans le préfixer par le nom de l'objet). Si au moment de l'appel de la méthode par le moteur HFSQL, l'objet utilisé lors de l'appel à la fonction HSurErreur n'est plus alloué, une erreur fatale est renvoyée.
Liste des exemples associés :
|
Exemples didactiques (WINDEV) : WD Gestion Erreurs HFSQL
[ + ] L'exemple "WD Gestion Erreurs HFSQL" présente de façon didactique la gestion des erreurs HFSQL (doublon, intégrité). Cet exemple montre comment personnaliser le traitement lorsqu'une erreur est levée.
|
Documentation également disponible pour…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|