Contenitori in Integration Services

I contenitori sono oggetti di SQL Server Integration Services che forniscono la struttura ai pacchetti e i servizi alle attività. Supportano la ripetizione dei flussi di controllo nei pacchetti e consentono di raggruppare attività e contenitori in unità di lavoro significative. Oltre alle attività, i contenitori possono includere anche altri contenitori.

Nei pacchetti i contenitori vengono utilizzati per gli scopi seguenti:

  • Ripetere determinate attività per ogni elemento di una raccolta, ad esempio i file in una cartella, schemi o oggetti SMO (SQL Server Management Objects). Un pacchetto può ad esempio eseguire istruzioni Transact-SQL disponibili in più file.

  • Ripetere determinate attività finché un'espressione specificata non restituisce false. Un pacchetto può ad esempio inviare un messaggio di posta elettronica diverso per sette volte, ovvero uno per ogni giorno della settimana.

  • Creare gruppi di attività e contenitori che devono avere esito positivo o negativo come singola unità. Un pacchetto può ad esempio raggruppare attività che eliminano e aggiungono righe in una tabella di database e quindi eseguire il commit o il rollback di tutte le attività quando una di queste non riesce.

Tipi di contenitori

In Integration Services sono disponibili quattro tipi di contenitori per la compilazione dei pacchetti, elencati nella tabella seguente.

Contenitore

Descrizione

Contenitore Ciclo Foreach

Esegue ripetutamente un determinato flusso di controllo utilizzando un enumeratore.

Contenitore Ciclo For

Esegue ripetutamente un determinato flusso di controllo verificando una condizione.

Contenitore Sequenza

Raggruppa attività e contenitori in flussi di controllo che costituiscono subset del flusso di controllo del pacchetto.

Contenitore Host delle attività

Fornisce servizi a una singola attività.

Anche i gestori dell'evento e i pacchetti sono tipi di contenitori. Per informazioni, vedere Pacchetti di Integration Services (SSIS) e Gestori eventi di Integration Services (SSIS).

Riepilogo delle proprietà dei contenitori

Tutti i tipi di contenitori dispongono di un set di proprietà comune. Se si creano pacchetti utilizzando gli strumenti grafici offerti da Integration Services, per i contenitori Ciclo Foreach, Ciclo For e Sequenza vengono elencate nella finestra Proprietà le proprietà seguenti. Le proprietà dei contenitori host delle attività vengono configurate nell'ambito della configurazione dell'attività incapsulata nell'host. Le proprietà degli host delle attività vengono impostate quando si configura l'attività.

Proprietà

Descrizione

DelayValidation

Valore booleano che indica se la convalida del contenitore viene posticipata fino alla fase di esecuzione. Il valore predefinito di questa proprietà è False.

Per ulteriori informazioni, vedere DelayValidation.

Description

Descrizione del contenitore. La proprietà contiene una stringa, ma può essere vuota.

Per ulteriori informazioni, vedere Description.

Disable

Valore booleano che indica se il contenitore verrà eseguito. Il valore predefinito di questa proprietà è False.

Per ulteriori informazioni, vedere Disable.

DisableEventHandlers

Valore booleano che indica se i gestori di eventi associati al contenitore verranno eseguiti. Il valore predefinito di questa proprietà è False.

FailPackageOnFailure

Valore booleano che specifica se il pacchetto deve essere interrotto in caso di errore nel contenitore. Il valore predefinito di questa proprietà è False.

Per ulteriori informazioni, vedere FailPackageOnFailure.

FailParentOnFailure

Valore booleano che specifica se il contenitore padre deve essere interrotto in caso di errore nel contenitore. Il valore predefinito di questa proprietà è False.

Per ulteriori informazioni, vedere FailParentOnFailure.

ForcedExecutionValue

Se la proprietà ForceExecutionValue è impostata su True, rappresenta l'oggetto che contiene il valore di esecuzione facoltativo restituito per il contenitore. Il valore predefinito della proprietà è 0.

Per ulteriori informazioni, vedere ForcedExecutionValue.

ForcedExecutionValueType

Tipo di dati di ForcedExecutionValue. Il valore predefinito di questa proprietà è Int32.

ForceExecutionResult

Valore che specifica il risultato forzato dell'esecuzione del pacchetto o del contenitore. I valori sono None, Success, Failure e Completion. Il valore predefinito di questa proprietà è None.

Per ulteriori informazioni, vedere ForceExecutionResult.

ForceExecutionValue

Valore booleano che specifica se il valore di esecuzione facoltativo del contenitore deve essere forzato in modo da contenere un valore specifico. Il valore predefinito di questa proprietà è False.

Per ulteriori informazioni, vedere ForceExecutionValue.

ID

GUID del contenitore, assegnato al momento della creazione del pacchetto. Questa proprietà è in sola lettura.

ID.

IsolationLevel

Livello di isolamento della transazione del contenitore. I possibili valori sono Unspecified, Chaos, ReadUncommitted, ReadCommitted, RepeatableRead, Serializable e Snapshot. Il valore predefinito di questa proprietà è Serializable. Per ulteriori informazioni, vedere IsolationLevel.

LocaleID

Impostazioni locali Microsoft Win32. Il valore predefinito di questa proprietà è costituito dalle impostazioni locali del sistema operativo sul computer locale.

Per ulteriori informazioni, vedere LocaleID.

LoggingMode

Valore che specifica il comportamento di registrazione del contenitore. I possibili valori sono Disabled, Enabled e UseParentSetting. Il valore predefinito di questa proprietà è UseParentSetting. Per ulteriori informazioni, vedere DTSLoggingMode.

MaximumErrorCount

Numero massimo di errori che possono verificarsi prima che l'esecuzione del contenitore venga arrestata. Il valore predefinito di questa proprietà è 1.

Per ulteriori informazioni, vedere MaximumErrorCount.

Name

Nome del contenitore.

Per ulteriori informazioni, vedere Name.

TransactionOption

Supporto delle transazioni da parte del contenitore. I possibili valori sono NotSupported, Supported e Required. Il valore predefinito di questa proprietà è Supported. Per ulteriori informazioni, vedere DTSTransactionOption.

Per ulteriori informazioni su tutte le proprietà disponibili per i contenitori Ciclo Foreach, Ciclo For, Sequenza e host delle attività durante la relativa configurazione a livello di codice, vedere gli argomenti relativi alle API di Integration Services seguenti:

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

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

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

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

Oggetti che estendono le funzionalità dei contenitori

I contenitori includono flussi di controllo costituiti da eseguibili e vincoli di precedenza. Possono inoltre utilizzare variabili e gestori di eventi. Il contenitore Host attività costituisce un'eccezione perché, dal momento che incapsula una singola attività, non utilizza vincoli di precedenza.

Eseguibili

Il termine eseguibile si riferisce alle attività a livello di contenitore e a qualsiasi contenitore all'interno del contenitore in considerazione. Un eseguibile può essere costituito da uno dei contenitori e delle attività disponibili in Integration Services oppure da un'attività personalizzata. Per ulteriori informazioni, vedere Attività di Integration Services e Contenitori in Integration Services.

Vincoli di precedenza

I vincoli di precedenza collegano in un flusso di controllo ordinato i contenitori e le attività presenti in uno stesso contenitore padre. Per ulteriori informazioni, vedere Vincoli di precedenza.

Gestori di eventi

I gestori di eventi a livello di contenitore rispondono agli eventi generati dal contenitore o dagli altri oggetti inclusi al suo interno. Per ulteriori informazioni, vedere Gestori eventi di Integration Services (SSIS).

Variabili

Le variabili utilizzate nei contenitori includono le variabili di sistema a livello di contenitore disponibili in Integration Services e le variabili definite dall'utente utilizzate dal contenitore. Per ulteriori informazioni, vedere Variabili di Integration Services (SSIS).

Punti di interruzione

Quando si imposta un punto di interruzione in un contenitore e la condizione di interruzione è Interrompi quando il contenitore riceve l'evento OnVariableValueChanged, definire la variabile nell'ambito del contenitore.

Contenuto correlato

Icona di Integration Services (piccola) Rimanere aggiornati con Integration Services

Per i download, gli articoli, gli esempi e i video Microsoft più recenti, oltre alle soluzioni selezionate dalla community, visitare la pagina Integration Services sul sito MSDN:


Per ricevere notifica automatica su questi aggiornamenti, sottoscrivere i feed RSS disponibili nella pagina.

Vedere anche

Concetti

Flusso di controllo