Komponentu Data Flow Script můžete použít k přenosu hodnoty sloupce toku dat do proměnné SSIS. Při práci s komponentou Data Flow Script a proměnnými SSIS však musíte dodržovat určitá pravidla.
SSIS neumožňuje přiřadit hodnoty proměnným SSIS v proceduře skriptu, která zpracovává řádky. Existují však procedury před provedením a po provedení, kde můžete úkol zpracovat.
V komponentě Script přidejte proměnnou SSIS do vlastnosti ReadWriteVariables. Upravte skript a deklarujte proměnnou ve třídě ScriptMain. K inicializaci proměnné použijte proceduru PreExecute. Pomocí procedury ProcessInputRow přiřaďte hodnotu sloupce input -buffer proměnné skriptu. A pomocí úlohy PostExecute přiřaďte hodnotu z proměnné skriptu proměnné SSIS.
Zde je příklad komponenty skriptu VB. Má proměnnou SSIS (MyOutVariable), která získá výstup proměnné skriptu (MyVar). Proměnná MyVar získává svou hodnotu ze sloupce MyNumber v datovém toku.
Public Class ScriptMain
Inherits UserComponent
Dim MyVar As Integer
Public Overrides Sub PreExecute()
MyBase.PreExecute()
'initialize variable local to data flow
MyVar = 0
End Sub
Public Overrides Sub PostExecute()
MyBase.PostExecute()
' output variable value to SSIS variable
Me.Variables.MyOutVariable = MyVar
End Sub
Public Overrides Sub Input0_ProcessInputRow(ByVal Row As Input0Buffer)
' logic to get value
MyVar = Row.MyNumber
End Sub
End Class