DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Fonctions WLangage / Fonctions standard / Fonctions de gestion des Exceptions
  • Utilisation de la constante epExécuteProcédureGénérale
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac CatalystUniversal Windows 10 App
Autres
Procédures stockées
Paramètre le comportement automatique à adopter en cas d'exception dans le traitement en cours. Le comportement précédent pourra être retrouvé grâce à la fonction ExceptionRestaureParamètre.
Syntaxe
ExceptionChangeParamètre(<Comportement à adopter> [, <Paramètre>])
<Comportement à adopter> : Constante de type entier
Comportement à adopter :
epCodeFonctionnement classique des exceptions.

Exécute :
  • soit le traitement QUAND EXCEPTION
  • soit la gestion automatique des exceptions.
epExécuteProcédureExécute la procédure indiquée en paramètre.

Cette procédure doit renvoyer une des constantes suivantes :
  • opFinTraitement : L'utilisateur reprend la main.
  • opFinProgramme (par défaut) : L'application est arrêtée.
  • opRelanceProgramme : Arrête et relance l'application.
epExécuteProcédureGénéraleUtilisé dans le code d'initialisation du projet, exécute la procédure indiquée en paramètre. La procédure est appelée si aucun traitement d'exception local n'est actif.

La procédure est active au niveau du contexte d'exécution (projet, composant externe autonome, composant interne autonome). S'il n'y a pas de procédure dans le contexte courant, la procédure est recherchée dans le contexte parent et ceci récursivement jusqu'au niveau de l'application.
Cette procédure doit renvoyer une des constantes suivantes :
  • opFinTraitement : L'utilisateur reprend la main.
  • opFinProgramme (par défaut) : L'application est arrêtée.
  • opRelanceProgramme : Arrête et relance l'application.
Remarques :
  • Chaque appel remplace la procédure précédemment renseignée.
  • Dans la majorité des cas, la procédure permet d'écrire les informations sur le problème rencontré dans un fichier journal.
epGotoCasExceptionExécute le code défini par l'étiquette : CAS EXCEPTION:
epRenvoyerSort du traitement en cours en renvoyant la valeur spécifiée en paramètre. L'exception n'est pas propagée.
epRetourTermine le traitement en cours sans propager l'exception
<Paramètre> : Paramètre optionnel
Paramètre optionnel dépendant du comportement choisi.
Remarques

Utilisation de la constante epExécuteProcédureGénérale

La constante epExécuteProcédureGénérale permet de gérer les exceptions de manière globale pour l'intégralité du projet.
Rappel : pour gérer les exceptions de manière globale au projet, il est possible d'utiliser le bloc QUAND EXCEPTION dans le code d'initialisation du projet. Lorsque le traitement d'exception QUAND EXCEPTION est déclaré dans le code d'initialisation du projet, il est valide pour toute erreur se produisant dans le projet. Pour plus de détails, consultez Mécanisme des exceptions générales.
L'utilisation de la la fonction WLangage ExceptionChangeParamètre avec le paramètre epExécuteProcédureGénérale dans le code d'initialisation du projet permet de spécifier la procédure WLangage à appeler en cas d'exception. La procédure spécifiée est alors appelée si aucun traitement d'exception local n'est actif.
Exemple :
L'appel effectué dans le code d'initialisation du projet est le suivant :
ExceptionChangeParamètre(epExécuteProcédureGénérale, _GestionExceptionGlobale)
La procédure globale _GestionExceptionGlobale est appelée automatiquement par le WLangage en cas d'exception survenant dans le projet.
En gérant un traitement d'exception global à tout le projet, il devient par exemple possible de : 
  • générer un dump de débogage avec la fonction WLangage dbgSauveDumpDébogage,
  • envoyer un email au développeur de l'application avec le dump de débogage (ou envoyer le dump via FTP),
  • afficher une erreur claire à l'utilisateur final et proposer de relancer l'application.
Exemple :
PROCÉDURE _GestionExceptionGlobale()
 
sFichier est une chaîne
sFichier = fRépertoireTemp() + ["\"] + "Dump.wdump"
 
// Sauve un dump
dbgSauveDumpDébogage(sFichier)
 
// Ouvre la fenêtre d'erreur
Ouvre(FEN_Erreur, ExceptionInfo(errComplet), sFichier)
 
// Dans tous les cas au retour,
// on ferme le programme
RENVOYER opFinProgramme
La procédure globale peut être partagée et réutilisée dans plusieurs projets.
Classification Métier / UI : Code neutre
Composante : wd300vm.dll
Version minimum requise
  • Version 10
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 25/05/2022

Signaler une erreur ou faire une suggestion | Aide en ligne locale