Débogage du flux de contrôle
Business Intelligence Development Studio et MicrosoftIntegration Services incluent des fonctionnalités et des outils permettant de résoudre les problèmes du flux de contrôle d'un package Integration Services.
Integration Services prend en charge les points d'arrêt sur les conteneurs et les tâches.
Le concepteur SSIS génère des rapports de progression au moment de l'exécution.
Business Intelligence Development Studio propose des fenêtres de débogage.
Points d'arrêt
Le concepteur SSIS propose la boîte de dialogue Définir des points d'arrêt dans laquelle vous pouvez définir des points d'arrêt en activant des conditions d'arrêt et en spécifiant le nombre d'occurrences d'un point d'arrêt avant la suspension de l'exécution du package. Les points d'arrêt peuvent être activés au niveau du package ou au niveau du composant. Si des conditions d'arrêt sont activées au niveau de la tâche ou du conteneur, l'icône de point d'arrêt apparaît en regard de la tâche ou du conteneur sur la surface de dessin de l'onglet Flux de contrôle. Si les conditions d'arrêt sont activées au niveau du package, l'icône de point d'arrêt apparaît sur l'étiquette de l'onglet Flux de contrôle.
Lorsqu'un point d'arrêt est atteint, l'icône de point d'arrêt se transforme pour vous aider à identifier la source du point d'arrêt. Vous pouvez ajouter, supprimer et modifier des points d'arrêt au cours de l'exécution du package.
Integration Services propose dix conditions d'arrêt que vous pouvez activer sur toutes les tâches et tous les conteneurs. Dans la boîte de dialogue Définir des points d'arrêt, vous pouvez activer des points d'arrêt pour les conditions suivantes :
Condition d'arrêt |
Description |
---|---|
Lorsque la tâche ou le conteneur reçoit l'événement OnPreExecute. |
Appelée lorsqu'une tâche est sur le point de s'exécuter. Cet événement est déclenché par une tâche ou un conteneur immédiatement avant son exécution. |
Lorsque la tâche ou le conteneur reçoit l'événement OnPostExecute. |
Appelée immédiatement après la fin de la logique d'exécution de la tâche. Cet événement est déclenché par une tâche ou un conteneur immédiatement après son exécution. |
Lorsque la tâche ou le conteneur reçoit l'événement OnError. |
Appelée par une tâche ou un conteneur lorsqu'une erreur se produit. |
Lorsque la tâche ou le conteneur reçoit l'événement OnWarning. |
Appelée lorsque la tâche est dans un état qui ne justifie pas une erreur, mais garantit un avertissement. |
Lorsque la tâche ou le conteneur reçoit l'événement OnInformation. |
Appelée lorsque la tâche doit fournir des informations. |
Lorsque la tâche ou le conteneur reçoit l'événement OnTaskFailed. |
Appelée par l'hôte de la tâche lorsqu'il échoue. |
Lorsque la tâche ou le conteneur reçoit l'événement OnProgress. |
Appelée pour mettre à jour la progression de l'exécution de la tâche. |
Lorsque la tâche ou le conteneur reçoit l'événement OnQueryCancel. |
Appelée à tout moment du traitement de la tâche lorsque vous pouvez annuler l'exécution de la tâche. |
Lorsque la tâche ou le conteneur reçoit l'événement OnVariableValueChanged. |
Appelée par le runtime Integration Services lorsque la valeur d'une variable change. L'événement RaiseChangeEvent de la variable doit avoir la valeur true pour déclencher cet événement. |
Lorsque la tâche ou le conteneur reçoit l'événement OnCustomEvent. |
Appelée par les tâches pour déclencher des événements personnalisés définis par la tâche. |
Outre les conditions d'arrêt disponibles pour toutes les tâches et tous les conteneurs, certaines tâches et certains conteneurs proposent des conditions d'arrêt spéciales permettant de définir des points d'arrêt. Vous pouvez ainsi activer une condition d'arrêt sur le conteneur de boucles For définissant un point d'arrêt qui suspend l'exécution au début de chaque itération de la boucle.
Pour le rendre plus flexible et plus puissant, vous pouvez modifier le comportement d'un point d'arrêt en spécifiant les options suivantes :
Le nombre d'accès, ou le nombre maximal d'occurrences d'une condition d'arrêt avant suspension de l'exécution.
Le type du nombre d'accès, ou la règle spécifiant à quel moment la condition d'arrêt déclenche le point d'arrêt.
Les types du nombre d'accès, à l'exception du type Toujours, sont qualifiés de manière plus approfondie par le nombre d'accès. Par exemple, si le type est « Égal au nombre d'accès » et si le nombre d'accès est 5, l'exécution est suspendue à la sixième occurrence de la condition d'arrêt.
Le tableau suivant décrit les types de nombre d'accès.
Type du nombre d'accès |
Description |
---|---|
Toujours |
L'exécution est toujours suspendue lorsque le point d'arrêt est atteint. |
Égal au nombre d'accès |
L'exécution est suspendue lorsque le nombre d'occurrences du point d'arrêt est égal au nombre d'accès. |
Supérieur ou égal au nombre d'accès |
L'exécution est suspendue lorsque le nombre d'occurrences du point d'arrêt est égal ou supérieur au nombre d'accès. |
Multiple du nombre d'accès |
L'exécution est suspendue lorsqu'un multiple du nombre d'accès est atteint. Par exemple, si vous définissez cette option sur 5, l'exécution est suspendue toutes les 5 fois. |
Pour définir des points d'arrêt
Rapport de progression
Le concepteur SSIS propose deux types de rapports de progression : les codes de couleur sur l'aire de conception de l'onglet Flux de contrôle et les messages de progression sous l'onglet Progression.
Lorsque vous exécutez un package, le concepteur SSIS indique la progression de l'exécution en affichant chaque tâche ou conteneur dans une couleur qui indique l'état de l'exécution. En fonction de la couleur, vous pouvez déterminer si l'élément est en attente d'exécution, s'il est en cours d'exécution, s'il s'est terminé avec succès ou s'il s'est terminé avec des erreurs. Les codes de couleur disparaissent dès que vous arrêtez l'exécution du package.
Le tableau suivant indique les couleurs utilisées pour décrire l'état de l'exécution.
Couleur |
État de l'exécution |
---|---|
Gris |
En attente d'exécution |
Jaune |
Exécution en cours |
Vert |
Exécuté avec succès |
Rouge |
Exécuté avec des erreurs |
L'onglet Progression énumère les tâches et les conteneurs dans l'ordre d'exécution et indique les heures de début et de fin, les avertissements et les messages d'erreur. À la fin de l'exécution du package, les informations de progression restent disponibles sous l'onglet Résultats d'exécution.
[!REMARQUE]
Pour activer ou désactiver l'affichage de messages sous l'onglet Progression, activez/désactivez l'option Création de rapports de progression de débogage dans le menu SSIS.
Le diagramme qui suit représente l'onglet Progression.
Fenêtres de débogage
Business Intelligence Development Studio, environnement de développement MicrosoftVisual Studio 2008, propose de nombreuses fenêtres que vous pouvez utiliser pour travailler avec les points d'arrêt et déboguer les packages qui contiennent des points d'arrêt. Pour en savoir plus sur chacune des fenêtres, ouvrez-les et appuyez sur F1 pour afficher l'aide.
Pour ouvrir ces fenêtres dans Business Intelligence Development Studio, cliquez sur le menu Déboguer, pointez sur Fenêtres, puis cliquez sur Points d'arrêt, Sortie ou Immédiat.
Le tableau qui suit décrit ces fenêtres.
Fenêtre |
Description |
---|---|
Points d'arrêt |
Énumère les points d'arrêt d'un package et donne accès aux options permettant d'activer ou de supprimer des points d'arrêt. |
Résultat |
Affiche les messages d'état relatifs aux fonctionnalités de Business Intelligence Development Studio. |
Immédiat |
Utilisée pour déboguer et évaluer des expressions, et imprimer des valeurs variables. |
|