PC SOFT

DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE


  • 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
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadApple WatchUniversal Windows 10 AppWindows Mobile
Autres
Procédures stockées
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.
HFSQL Client/Serveur La gestion automatique des erreurs n'est pas disponible dans les procédures stockées. La fonction HSurErreur n'est pas disponible dans les procédures stockées.
HFSQL Client/ServeurProcédures stockées La gestion automatique des erreurs n'est pas disponible dans les procédures stockées.
Versions 24 et supérieures
Procédures stockées La fonction HSurErreur peut être utilisée pour gérer l'erreur dans une procédure stockée.
Nouveauté 24
Procédures stockées La fonction HSurErreur peut être utilisée pour gérer l'erreur dans une procédure stockée.
Procédures stockées La fonction HSurErreur peut être utilisée pour gérer l'erreur dans une procédure stockée.
Remarque : A partir de la version 19, HFSQL est le nouveau nom de HyperFileSQL.
WEBDEV - Code ServeurAjaxHFSQLHFSQL Client/ServeurHyper File 5.5OLE DBConnecteurs Natifs (Accès Natifs)
// Personnalisation des erreurs de blocages
// La procédure SurErreurBlocage est appelée
// en cas d'erreur de blocage pour tous les fichiers
HSurErreur("*", hErrBlocage, "SurErreurBlocage")
WEBDEV - Code ServeurHFSQLHFSQL Client/ServeurHyper File 5.5OLE DBConnecteurs Natifs (Accès Natifs)
// Ré-activation générale de la gestion automatique
// de toutes les erreurs sur tous les fichiers de données
HSurErreur("*", hErrTout)
WEBDEV - Code ServeurAjaxHFSQLHFSQL Client/ServeurHyper File 5.5OLE DBConnecteurs Natifs (Accès Natifs)
// Ré-activation générale de la gestion automatique
// des erreurs de blocage sur le fichier Client
HSurErreur("Client", hErrBlocage)
Syntaxe
<Résultat> = HSurErreur(<Nom du fichier> , <Type de l'erreur> [, <Nom de la 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é.
<Nom du fichier> : Chaîne de caractères (avec ou sans guillemets)
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éesParamétrage des erreurs d'accès à une base de données HFSQL Client/Serveur (interdiction d'accès par la fonction HInterditAccèsBaseDeDonnées).
hErrBlocageParamétrage des erreurs de blocage.
hErrDoublonParamétrage des erreurs de doublons.
hErrIntégritéParamétrage des erreurs d'intégrité.
hErrModificationParamétrage d'un conflit de modification.
hErrMotDePasseParamétrage des erreurs de mot de passe (mot de passe incorrect).
hErrPerteConnexionParamétrage des erreurs dues à une perte de la connexion avec le serveur HFSQL.
hErrRéindexationParamétrage des erreurs de ré-indexation (ré-indexation en cours lors de l'accès au fichier de données).
hErrValeurObligatoireParamétrage des erreurs dues à une valeur obligatoire et non renseignée (OLE DB et certains accès natifs).
hErrToutParamétrage de toutes les erreurs précédentes (sauf hErrRéindexation).
<Nom de la procédure/fenêtre/page> : Chaîne de caractères optionnelle
Correspond :
  • WEBDEV - Code Serveur Nom de la page ou de la procédure à appeler lorsque une erreur de type <Type de l'erreur> apparaît.
  • 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 HyperFileSQL" 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.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 HyperFileSQL". 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.
WEBDEV - Code Serveur Seules certaines fenêtres/pages de gestion automatique des erreurs sont disponibles. Pour ces erreurs, la gestion automatique des erreurs est donc désactivée.

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(<Nom du fichier>, <Type>, ...
"<Composant>.<Nom de la Collection de procédures>.<Nom de la procédure>")

Fenêtre :
HSurErreur(<Nom du fichier>, <Type>, "<Composant>.<;Nom de la fenêtre>")

Page :
HSurErreur(<Nom du fichier>, <Type>, "<Composant>.<Nom de la page>")
HFSQL Client/Serveur En cas de perte de connexion, pour demander une reconnexion, cette procédure doit appeler la fonction HReconnecte.
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 :
opRéessayerLa fonction ayant déclenché l'erreur est ré-exécutée.
opAnnulerLa 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.
opFinTraitementLa 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 RepriseSaisie()
opFinProgrammeLa 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()
opRelanceProgrammeLe programme s'arrête et l'application est automatiquement relancée.
HFSQL Client/Serveur En cas de perte de connexion, pour demander une reconnexion, il faut utiliser la fonction HReconnecte dans la procédure appelée par la fonction HSurErreur.

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.
HFSQLHFSQL Client/ServeurHyper File 5.5OLE DBConnecteurs Natifs (Accès Natifs)

Personnalisation des fenêtres d'erreur par défaut

Les fenêtres d'erreur par défaut sont livrées (avec leur code WLangage) à titre d'exemple, dans le répertoire "\Programmes\Donnees\Fenêtres prédéfinies\HyperFileSQL - Fenetres assistance automatique".Les fenêtres d'erreur par défaut sont livrées (avec leur code WLangage) à titre d'exemple, dans le répertoire "\Programmes\Donnees\Fenêtres prédéfinies\HFSQL - Fenetres assistance automatique".
Vous pouvez inclure ces fenêtres dans vos projets, les personnaliser et les passer en paramètre à la fonction HSurErreur.
Pour plus de détails, consultez Gestion assistée des erreurs HFSQL.
WEBDEV - Code ServeurHFSQLHFSQL Client/ServeurHyper File 5.5OLE DBConnecteurs Natifs (Accès Natifs)

Personnalisation des pages d'erreur par défaut

Les pages d'erreur par défaut sont livrées (avec leur code WLangage) à titre d'exemple, dans le répertoire "\Programmes\Donnees\Pages prédéfinies\HyperFileSQL - Pages assistance automatique".Les pages d'erreur par défaut sont livrées (avec leur code WLangage) à titre d'exemple, dans le répertoire "\Programmes\Donnees\Pages prédéfinies\HFSQL - Pages assistance automatique".
Vous pouvez inclure ces pages dans vos projets, les personnaliser et les passer en paramètre à la fonction HSurErreur.
Pour plus de détails, consultez Gestion assistée des erreurs HFSQL.
Liste des exemples associés :
WD Gestion Erreurs HFSQL 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.
Composante : wd240hf.dll
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire