[SSIS] Visualiser les données de variables et utilisation des breakpoints

Je travaille actuellement avec la technologie SSIS, SQL Server Integration Services, afin de réaliser des imports/exports de données entre différentes bases de données. Pour cela, on réalise des « workflows » en ajoutant des tâches de lecture/écriture dans différentes BDD/tables/fichiers CSV à l’aide notamment de procédures stockées pour la partie BDD. Malheureusement, je trouve que l’outil/designer de ces workflows n’est pas très agréable et semble être resté quelques années en arrière.

 

Voici un tips que je vous partage afin de vous aider pour de futures opérations de debugging. Comment tester et visualiser la valeur d’une variable ?

Visualiser une variable

Dans mon lot SSIS courant, je dispose de 2 variables utilisateurs, DateDebut et DateFin que je vais pouvoir valoriser grâce à une exécution de code SQL. Mais comment tester les valeurs récupérées ?

Afin de visualiser une variable utilisateur, il faut d’abord mettre en place un breakpoint. Via un clic droit sur votre étape, puis « Edit Breakpoint ». On retrouve ici, un éditeur un peu différent (et moins exploitable) que celui de Visual Studio. On peut configurer plusieurs breakpoints, ceux-ci s’activant sur une condition particulière comme avant l’exécution de la tâche, sur une erreur, à la fin de l’exécution ou après un certain nombre d’exécution (Hit Count).

 

Durant l’exécution de notre lot SSIS, le breakpoint se stoppera selon la condition souhaitée, ici avant l’exécution de la tâche. Maintenant nous devons ouvrir une fenêtre « watch » afin de visualiser notre variable.

Pour cela, il faut allez dans le menu de Visual Studio : DEBUG => Windows => Watch => Watch 1 (ou Ctrl + Alt+W, 1). Une nouvelle fenêtre (en bas) s’ouvrira. Celle-ci permet de renseigner et de stocker des variables, on peut ainsi en visualiser plusieurs à un instant T.

Maintenant, pour afficher notre variable personnalisée, il suffit de taper le nom exact de la variable, ici DateDebut et DateFin. Et la valeur (ainsi que le type) apparait. A noter que les 2 écritures « DateDebut » et « User::DateDebut » sont toutes deux valables.

 

%d blogueurs aiment cette page :