Вот один из возможных способов использования переменных внутри Script Task
. Предполагая, что у вас есть переменная с именем FilePath , объявленная в вашем пакете, как показано на скриншоте # 1 , вы можете использовать следующий код для использования переменной внутри Script Task
. это один из возможных способов использования переменной. Здесь переменная используется только для чтения значения с использованием метода LockForRead
. Вы также можете записать значения в переменную, если переменная объявлена методом LockForWrite
.
Кстати, функциональность, описанную в коде Scrip Task
, также может быть реализована с использованием File System Task
, доступного в списке задач SSIS Control Flow
.
Надеюсь, это поможет.
Использование переменных пакета внутри задачи скрипта:
C # код, который можно использовать только в SSIS 2008 and above
.
.
public void Main()
{
Variables varCollection = null;
string FilePath = string.Empty;
Dts.VariableDispenser.LockForRead("User::FilePath");
Dts.VariableDispenser.GetVariables(ref varCollection);
FilePath = varCollection["User::FilePath"].Value.ToString();
if (File.Exists(FilePath))
{
File.Delete(FilePath);
}
varCollection.Unlock();
Dts.TaskResult = (int)ScriptResults.Success;
}
Скриншот №1: