Définition d'un bloc Try/Catch. SAP BusinessObjects Data Services 4.1 Support Package 1
Worflows
Les objets Try et Catch sont des objets à utilisation unique.
Voici une méthode générale d'implémentation de la gestion des exceptions :
1.
Insérez un objet Try avant les étapes de gestion des erreurs.
2.
Insérez un objet Catch dans le workflow après les étapes.
3.
Dans l'objet Catch, exécutez les étapes suivantes :
• Sélectionnez un ou plusieurs groupes d'erreurs que vous souhaitez intercepter.
• Définissez les actions exécutées par une exception levée. Un objet de script unique, un flux de données, un workflow ou une combinaison de ces objets sont des actions.
• Facultatif. Utilisez des fonctions Catch dans le bloc Catch pour identifier les détails de l'erreur.
Si une exception est renvoyée au cours de l'exécution d'un bloc Try/Catch et si aucun objet Catch ne recherche cette exception, l'exception est traitée par la logique d'erreur normale.
Le workflow suivant indique un bloc Try/Catch autour d'un flux de données :
Dans ce cas, si le flux de données BuildTable provoque des exceptions générées par le système indiquées dans le catch Catch_A, les actions définies dans Catch_A sont exécutées.
L'action initialisée par l'objet catch peut être simple ou complexe. Voici des exemples d'actions d'exceptions possibles :
• Envoyer le message d'erreur à une base de données de reporting en ligne ou à votre groupe de support.
• Exécuter à nouveau un workflow échoué ou un flux de données.
• Exécuter une diminution de version d'un workflow échoué ou un flux de données.
Rubriques associées
•
Définition d'un bloc Try/Catch
•
Catégories d'exceptions disponibles
•
Exemple : détermination des détails d'une erreur
• Guide de référence : Objets, Catch
9.8.1 Définition d'un bloc Try/Catch
Pour définir des blocs Try/Catch :
1.
Ouvrez le workflow qui contiendra le bloc Try/Catch.
2.
Cliquez sur l'icône Try dans la palette d'outils.
3.
Cliquez sur l'emplacement où vous voulez placer le try dans le diagramme.
227 2012-11-22
Worflows
228
L'icône Try s'affiche dans le diagramme.
Remarque :
Aucun éditeur n'existe pour un Try ; le Try initialise le bloc Try/Catch.
4.
Cliquez sur l'icône Catch dans la palette d'outils.
5.
Cliquez sur l'emplacement où vous voulez placer l'objet catch dans l'espace de travail.
L'objet catch s'affiche dans l'espace de travail.
6.
Reliez les objets Try et Catch aux objets liés.
7.
Cliquez sur le nom de l'objet catch pour ouvrir l'éditeur catch.
8.
Sélectionnez un ou plusieurs groupes dans la liste des Exceptions.
Pour sélectionner tous les groupes d'exceptions, cochez la case en haut.
9.
Définissez les actions à exécuter pour chaque groupe d'exceptions et ajoutez les actions à la boîte de workflows catch. Les actions peuvent être un script individuel, un flux de données, un workflow ou toute combinaison de ces objets.
a.
Il est recommandé de définir, de tester et de sauvegarder les actions comme objet distinct plutôt que de les créer dans l'éditeur Catch.
b.
Pour définir des actions pour des erreurs spécifiques, utilisez les fonctions catch suivantes dans un script exécutant le workflow :
• error_context()
• error_message()
• error_number()
• error_timestamp() c.
Pour ajouter un workflow existant à la case de workflow catch, ouvrez la bibliothèque d'objets dans l'onglet Workflows, sélectionnez le workflow souhaité et glissez-le dans la case.
10.
Une fois le catch exécuté, sélectionnez Validation > Valider > Tous les objets de la vue.
Le logiciel teste votre définition par rapport aux erreurs de syntaxe et affiche les erreurs rencontrées.
11.
Cliquez sur le bouton Retour pour revenir au workflow appelant le catch.
12.
Pour intercepter plusieurs groupes d'exceptions et affecter différentes actions à chacun d'entre eux, répétez les étapes 4 à 11 pour chaque catch dans le workflow.
Remarque :
Dans une séquence de blocs Catch, si un bloc Catch intercepte une exception, les blocs Catch suivants ne seront pas exécutés. Par exemple, si votre workflow a la séquence suivante et que
Catch1 intercepte une exception, Catch2 et CatchAll ne seront pas exécutés.
Try > DataFlow1 > Catch1 > Catch2 > CatchAll
Si une erreur du groupe d'exceptions listée dans le Catch survient au cours de l'exécution de ce bloc
Try/Catch, le logiciel exécute le workflow Catch.
Rubriques associées
•
Catégories d'exceptions disponibles
•
Exemple : détermination des détails d'une erreur
2012-11-22

Lien public mis à jour
Le lien public vers votre chat a été mis à jour.