Utilizzo di variabili nel componente script
Nelle variabili vengono archiviati valori che possono essere utilizzati in fase di esecuzione da un pacchetto e dai relativi contenitori, attività e gestori eventi. Per ulteriori informazioni, vedere Variabili in Integration Services.
È possibile rendere disponibili le variabili esistenti per l'accesso di sola lettura o di lettura/scrittura da parte dello script personalizzato immettendo elenchi di variabili delimitate da virgole nei campi ReadOnlyVariables e ReadWriteVariables della pagina Script di Editor trasformazione Script. Tenere presente che per i nomi delle variabili viene applicata la distinzione tra maiuscole e minuscole. Utilizzare la proprietà Value per leggere e scrivere in singole variabili. Il componente script gestisce automaticamente l'eventuale blocco richiesto mentre lo script modifica le variabili in fase di esecuzione.
Importante |
---|
La raccolta di ReadWriteVariables è disponibile solo nel metodo PostExecute per aumentare le prestazioni e ridurre il rischio di conflitti di blocco. Pertanto, non è possibile incrementare direttamente il valore di una variabile del pacchetto durante l'elaborazione di ogni riga di dati. Al contrario, incrementare il valore di una variabile locale e impostare il valore della variabile del pacchetto sul valore della variabile locale nel metodo PostExecute dopo l'elaborazione di tutti i dati. È anche possibile utilizzare la proprietà VariableDispenser per ovviare a questa limitazione, come descritto più avanti in questo argomento. Tuttavia, se si scrive direttamente in una variabile del pacchetto durante l'elaborazione di ogni riga, si verificano effetti negativi sulle prestazioni e aumenta il rischio di conflitti di blocco. |
Per ulteriori informazioni sulla pagina Script di Editor trasformazione Script, vedere Configurazione del componente script nell'editor corrispondente e Editor trasformazione Script (pagina Script).
Il componente script crea una classe di raccolta Variables nell'elemento di progetto ComponentWrapper con una proprietà di funzione di accesso fortemente tipizzata per il valore di ogni variabile preconfigurata, in cui la proprietà ha lo stesso nome della variabile stessa. Questa raccolta viene esposta tramite la proprietà Variables della classe ScriptMain. La proprietà della funzione di accesso fornisce autorizzazioni di sola lettura o di lettura/scrittura al valore della variabile, a seconda dei casi. Se ad esempio è stata aggiunta una variabile integer denominata MyIntegerVariable all'elenco ReadOnlyVariables, è possibile recuperarne il valore nello script tramite il codice seguente:
Dim myIntegerVariableValue As Integer = Me.Variables.MyIntegerVariable
È anche possibile utilizzare la proprietà VariableDispenser, accessibile tramite una chiamata a Me.VariableDispenser, per utilizzare le variabili nel componente script. In questo caso, non si utilizzano le proprietà delle funzioni di accesso tipizzate e denominate per le variabili, ma si accede alle variabili direttamente. Quando si utilizza VariableDispenser, è necessario gestire sia la semantica di blocco che il cast dei tipi di dati per i valori delle variabili nel codice personalizzato. È necessario utilizzare la proprietà VariableDispenser anziché le proprietà delle funzioni di accesso denominate e tipizzate se si desidera utilizzare una variabile non disponibile in fase di progettazione ma che viene creata a livello di programmazione in fase di esecuzione.
|
Vedere anche