Você pode usar um componente Data Flow Script para transferir um valor de coluna de fluxo de dados para uma variável SSIS. No entanto, você deve seguir determinadas regras ao trabalhar com o componente Data Flow Script e as variáveis SSIS.
O SSIS não permite atribuir valores a variáveis do SSIS no procedimento de script que processa linhas. Mas existem procedimentos de pré e pós-execução nos quais você pode lidar com a atribuição.
Em seu componente Script, adicione a variável SSIS à propriedade ReadWriteVariables. Edite o script e declare uma variável na classe ScriptMain. Use o procedimento PreExecute para inicializar a variável. Use o procedimento ProcessInputRow para designar o valor da coluna -buffer de entrada para a variável de script. E use a tarefa PostExecute para atribuir o valor da variável de script à variável SSIS.
Aqui está um exemplo de componente de script VB. Possui uma variável SSIS (MyOutVariable) que obterá a saída da variável de script (MyVar). A variável MyVar obtém seu valor da coluna MyNumber no fluxo de dados.
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