Leçon 2-2 : Ajouter et configurer le conteneur de boucles Foreach
S’applique à : SQL Server SSIS Integration Runtime dans Azure Data Factory
Dans cette tâche, vous activez la fonction qui permet d'effectuer des boucles dans un dossier de fichiers plats et d'appliquer la transformation de flux de données de la leçon 1 à chacun de ces fichiers plats. Pour activer cette fonction, vous allez ajouter et configurer un conteneur de boucles Foreach dans le flux de contrôle.
Le conteneur de boucles Foreach que vous allez ajouter doit pouvoir se connecter à chaque fichier plat dans le dossier. Étant donné que tous les fichiers du dossier ont le même format, le conteneur de boucles Foreach peut utiliser le même Gestionnaire de connexions de fichiers plats pour se connecter à chacun de ces fichiers. Le Gestionnaire de connexions de fichiers plats qu’utilise le conteneur est celui que vous avez créé à la leçon 1.
Pour l'instant, le Gestionnaire de connexions de fichiers plats créé au cours de la leçon 1 se connecte uniquement à un seul fichier plat spécifique. Pour que la connexion réitère et s'établisse à chaque fichier plat dans le dossier, vous devez configurer le conteneur de boucles Foreach et le Gestionnaire de connexions de fichiers plats comme suit :
Conteneur de boucles Foreach : vous mappez la valeur énumérée du conteneur à une variable de package définie par l’utilisateur. Le conteneur utilise ensuite cette variable pour modifier dynamiquement la propriété ConnectionString du Gestionnaire de connexions de fichiers plats et se connecter de façon itérative à chaque fichier plat du dossier.
Gestionnaire de connexions de fichiers plats : vous modifiez le Gestionnaire de connexions qui a été créé dans la leçon 1 en utilisant une variable définie par l’utilisateur pour remplir la propriété ConnectionString du Gestionnaire de connexions.
Les procédures de cette tâche montrent comment créer et modifier le conteneur de boucles Foreach pour utiliser une variable de package définie par l'utilisateur et comment ajouter la tâche de flux de données à la boucle. Au cours de la tâche suivante, vous allez apprendre à modifier le Gestionnaire de connexions de fichiers plats pour qu'il utilise cette variable définie par l'utilisateur.
Une fois ces modifications apportées au package et le package exécuté, le conteneur de boucles Foreach effectue une itération dans la collection de tous les fichiers dans le dossier Sample Data. Chaque fois qu’un fichier répondant aux critères est trouvé, le conteneur de boucles Foreach remplit la nouvelle variable définie par l’utilisateur avec le nom du fichier, mappe cette variable à la propriété ConnectionString du Gestionnaire de connexions de fichiers plats Sample Currency Data, puis exécute le flux de données par rapport à ce fichier. Ainsi, à chaque itération de la boucle Foreach, la tâche de flux de données utilise un fichier plat différent.
Notes
Étant donné que Microsoft Integration Services sépare le flux de contrôle du flux de données, les boucles que vous ajoutez au flux de contrôle ne nécessiteront pas la modification du flux de données. Par conséquent, il n'est pas nécessaire de modifier le flux de données de la leçon 1.
Ajouter un conteneur de boucles Foreach
Dans SQL Server Data Tools, sélectionnez l’onglet Flux de contrôle.
Dans la Boîte à outils SSIS, développez Conteneurs, puis faites glisser un conteneur de boucles Foreach dans l’aire de conception de l’onglet Flux de contrôle .
Cliquez avec le bouton droit sur le conteneur de boucles Foreach, puis sélectionnez Modifier.
Dans la boîte de dialogue Éditeur de boucle Foreach, dans la page Général, pour Nom, entrez Foreach File in Folder. Sélectionnez OK.
Cliquez avec le bouton droit sur le conteneur de boucles Foreach, sélectionnez Propriétés puis, dans la fenêtre Propriétés, vérifiez que la propriété LocaleID est définie sur Anglais (États-Unis) .
Configurer l'énumérateur pour le conteneur de boucles Foreach
Double-cliquez sur Foreach File in Folder pour rouvrir l’Éditeur de boucle Foreach.
Sélectionnez Collection.
Dans la page Collection , cliquez sur Énumérateur Foreach File.
Dans le groupe Configuration de l’énumérateur , sélectionnez Parcourir.
Dans la boîte de dialogue Rechercher un dossier, recherchez dans votre ordinateur le dossier qui contient les fichiers Currency_*.txt inclus avec les exemples de données.
Dans la zone Fichiers, entrez Currency_*.txt.
Mapper l'énumérateur à une variable définie par l'utilisateur
Sélectionnez Mappages de variables.
Dans la page Mappages de variables, dans la colonne Variable, cliquez sur la cellule vide et sélectionnez <Nouvelle variable>.
Dans la boîte de dialogue Ajouter une variable, pour Nom entrez varFileName.
Notes
Les noms de variable respectent la casse.
Sélectionnez OK.
Sélectionnez OK pour quitter la boîte de dialogue Éditeur de boucle Foreach.
Ajouter la tâche de flux de données à la boucle
- Faites glisser la tâche de flux de données Extract Sample Currency Data vers le conteneur de boucles Foreach Foreach File in Folder.
Passer à la tâche suivante
Étape 3 : Modifier le gestionnaire de connexions de fichiers plats
Voir aussi
Configurer un conteneur de boucles Foreach
Utiliser des variables dans des packages