Partage via


Conteneurs Integration Services

S’applique à : SQL Server SSIS Integration Runtime dans Azure Data Factory

Les conteneurs sont des objets de SQL Server Integration Services qui fournissent une structure aux packages et des services aux tâches. Ils prennent en charge les flux de contrôle répétitifs dans les packages, et regroupent les tâches et les conteneurs en unités de travail significatives. Outre des tâches, les conteneurs peuvent comprendre d'autres conteneurs.

Les packages utilisent les conteneurs aux fins suivantes :

  • Répéter des tâches pour tous les éléments d'une collection, tels que les fichiers d'un dossier, des schémas ou des objets SMO ( SQL Server Management Objects). Par exemple, un package peut exécuter des instructions Transact-SQL résidant dans plusieurs fichiers.

  • Répéter des tâches jusqu’à ce qu’une expression spécifiée renvoie la valeur false. Par exemple, un package peut envoyer un message électronique différent sept fois, à raison d'une fois par jour de la semaine.

  • Regrouper les tâches et les conteneurs qui doivent réussir ou échouer en tant qu'unité. Par exemple, un package peut regrouper les tâches qui suppriment et ajoutent des lignes dans une table de base de données, puis valider ou annuler toutes les tâches si l'une d'elles échoue.

Types de conteneurs

Integration Services fournit quatre types de conteneurs pour la création de packages. Le tableau suivant décrit ces types de conteneurs.

Conteneur Description
Conteneur de boucles Foreach Exécute un flux de contrôle de façon répétitive à l'aide d'un énumérateur.
Conteneur de boucles For Exécute un flux de contrôle de façon répétitive en testant une condition.
conteneur de séquences Regroupe les tâches et les conteneurs en flux de contrôle représentant des sous-ensembles du flux de contrôle des packages.
conteneur d'hôte de tâche Fournit des services à une seule tâche.

Les packages et les gestionnaires d'événements sont également des types de conteneurs. Pour plus d’informations, consultez Packages Integration Services (SSIS) et Gestionnaires d’événements Integration Services (SSIS).

Résumé des propriétés de conteneur

Tous les types de conteneurs possèdent un ensemble de propriétés communes. Si vous créez des packages à l’aide des outils graphiques fournis par Integration Services , la fenêtre Propriétés répertorie les propriétés suivantes pour les conteneurs de boucles Foreach, de boucles For et de séquences. Les propriétés du conteneur d'hôte de tâche sont configurées dans le cadre de la configuration de la tâche encapsulée par l'hôte de tâche. Définissez les propriétés de l'hôte de tâche lorsque vous configurez la tâche.

Property Description
DelayValidation Valeur booléenne qui indique si la validation du conteneur est retardée jusqu'à l'exécution. La valeur par défaut de cette propriété est False.

Pour plus d'informations, consultez DelayValidation.
Description Description du conteneur. La propriété contient une chaîne mais peut être est vide.

Pour plus d'informations, consultez Description.
Désactiver Valeur booléenne qui indique si le conteneur s'exécute. La valeur par défaut de cette propriété est False.

Pour plus d'informations, consultez Disable.
DisableEventHandlers Valeur booléenne qui indique si les gestionnaires d'événements associés au conteneur s'exécutent. La valeur par défaut de cette propriété est False.
FailPackageOnFailure Valeur booléenne qui indique si le package échoue en cas d'erreur dans le conteneur. La valeur par défaut de cette propriété est False.

Pour plus d'informations, consultez FailPackageOnFailure.
FailParentOnFailure Valeur booléenne qui indique si le conteneur parent échoue en cas d'erreur dans le conteneur. La valeur par défaut de cette propriété est False.

Pour plus d'informations, consultez FailParentOnFailure.
ForcedExecutionValue Si ForceExecutionValue a la valeur True, il s’agit de l’objet qui contient la valeur d’exécution facultative du conteneur. La valeur par défaut de cette propriété est 0.

Pour plus d'informations, consultez ForcedExecutionValue.
ForcedExecutionValueType Type de données de ForcedExecutionValue. La valeur par défaut de cette propriété est Int32.
ForceExecutionResult Valeur qui indique le résultat forcé de l'exécution du package ou conteneur. Cette propriété peut prendre les valeurs None, Success, Failureet Completion. La valeur par défaut de cette propriété est None.

Pour plus d'informations, consultez ForceExecutionResult.
ForceExecutionValue Valeur booléenne qui indique si la valeur d'exécution facultative du conteneur doit être forcée de contenir une valeur particulière. La valeur par défaut de cette propriété est False.

Pour plus d'informations, consultez ForceExecutionValue.
Identifiant Identificateur global unique du conteneur, affecté lors de la création du package. Cette propriété est en lecture seule.

ID.
IsolationLevel Niveau d'isolation de la transaction sur conteneur. Cette propriété peut prendre les valeurs Unspecified, Chaos, ReadUncommitted, ReadCommitted, RepeatableRead, Serializableet Snapshot. La valeur par défaut de cette propriété est Serializable. Pour plus d'informations, consultez IsolationLevel.
LocaleID Paramètre régional Microsoft Win32. La valeur par défaut de cette propriété est le paramètre régional du système d'exploitation sur l'ordinateur local.

Pour plus d'informations, consultez LocaleID.
LoggingMode Valeur qui indique le comportement de journalisation du conteneur. Ces valeurs sont Disabled, Enabledet UseParentSetting. La valeur par défaut de cette propriété est UseParentSetting. Pour plus d’informations, consultez DTSLoggingMode.
MaximumErrorCount Nombre maximal d'erreurs pouvant se produire avant l'arrêt de l'exécution d'un conteneur. La valeur par défaut de cette propriété est 1.

Pour plus d'informations, consultez MaximumErrorCount.
Nom nom du conteneur.

Pour plus d’informations, consultez Name.
TransactionOption Participation transactionnelle du conteneur. Cette propriété peut prendre les valeurs NotSupported, Supportedet Required. La valeur par défaut de cette propriété est Supported. Pour plus d’informations, consultez DTSTransactionOption.

Pour plus d'informations sur toutes les propriétés disponibles pour les conteneurs de boucle Foreach, les conteneurs de boucle For, les conteneurs Sequence et les conteneurs d'hôte de tâche lorsqu'ils sont configurés par programmation, consultez les rubriques API Integration Services suivantes :

  • T:Microsoft.SqlServer.Dts.Runtime.ForEachLoop

  • T:Microsoft.SqlServer.Dts.Runtime.ForLoop

  • T:Microsoft.SqlServer.Dts.Runtime.Sequence

  • T:Microsoft.SqlServer.Dts.Runtime.TaskHost

Objets étendant les fonctionnalités des conteneurs

Les conteneurs comprennent des flux de contrôle composés d'exécutables et de contraintes de précédence, et peuvent utiliser des gestionnaires d'événements et des variables. Le conteneur d'hôte de tâche est une exception : étant donné que celui-ci encapsule une seule tâche, il n'utilise pas de contraintes de précédence.

Exécutables

Les exécutables désignent les tâches de niveau conteneur et tous les conteneurs se trouvant dans le conteneur. Un exécutable peut être l’une des tâches et l’un des conteneurs fournis par Integration Services , ou bien une tâche personnalisée. Pour plus d’informations, consultez Tâches Integration Services.

Contraintes de précédence

Les contraintes de priorité relient en un flux de contrôle ordonné les conteneurs et les tâches figurant dans le même conteneur parent. Pour plus d’informations, consultez Contraintes de précédence.

Gestionnaires d'événements

Les gestionnaires d'événements au niveau conteneur répondent aux événements déclenchés par le conteneur ou par les objets figurant dans celui-ci. Pour plus d’informations, consultez Gestionnaires d’événements Integration Services (SSIS).

Variables

Les variables utilisées dans les conteneurs comprennent les variables système de niveau conteneur fournies par Integration Services et les variables définies par l’utilisateur utilisées par le conteneur. Pour plus d’informations, consultez Variables Integration Services (SSIS).

Points d’arrêt

Quand vous définissez un point d’arrêt sur un conteneur et que la condition d’arrêt est Arrêter lorsque le conteneur reçoit l’événement OnVariableValueChanged, définissez la variable dans l’étendue du conteneur.

Voir aussi

Flux de contrôle