Поделиться через


Задача «Выполнение процесса»

Задача «Выполнение процесса» запускает приложение или пакетный файл как часть потока операций пакета служб SQL ServerIntegration Services. Хотя задача «Выполнение процесса» может использоваться для выполнения любого стандартного приложения, такого как Microsoft Excel или Microsoft Word, обычно она применяется для запуска бизнес-приложений или командных файлов, работающих с источником данных. Например, задачу «Выполнение процесса» можно использовать для развертывания сжатого текстового файла. Потом пакет сможет использовать текстовый файл в качестве источника данных для потока данных в пакете. Или, например, задача «Выполнение процесса» может использоваться для запуска приложения Visual Basic, создающего ежедневный отчет о продажах. Затем можно присоединить отчет к задаче «Отправка почты» и разослать отчет по списку распространения.

Если задача «Выполнение процесса» запускает пользовательское приложение, она предоставляет входные данные для приложения с помощью одного или обоих следующих методов.

При передаче нескольких аргументов в пользовательское приложение в одной задаче «Выполнение процесса» используйте пробелы для разделения аргументов. Аргумент не может содержать пробел, иначе задача не будет выполняться. Можно использовать выражение для передачи значения переменной в качестве значения аргумента. В следующем примере выражение передает два значения переменных в качестве аргументов и использует пробел для разделения аргументов:

@variable1 + " " + @variable2

Можно использовать выражение, чтобы задать различные свойства задачи «Выполнение процесса».

При использовании свойства StandardInputVariable для настройки задачи «Выполнение процесса» на предоставление входных данных, вызовите метод Console.ReadLine из приложения, чтобы считать входные данные. Дополнительные сведения см. в разделе Console.ReadLine Method, в библиотеке классов платформы Microsoft.NET Framework.

При использовании свойства Аргументы для настройки задачи «Выполнение процесса» на предоставление входных данных выполните одно из следующих действий, чтобы получить аргументы.

  • Если для подготовки приложения используется Microsoft Visual Basic 2005, задайте свойство My.Application.CommandLineArgs. В следующем примере устанавливается свойство My.Application.CommandLineArgs, чтобы получить два аргумента.

    Dim variable1 As String = My.Application.CommandLineArgs.Item(0)
    Dim variable2 As String = My.Application.CommandLineArgs.Item(1) 
    

    Дополнительные сведения см. в разделе My.Application.CommandLineArgs Property, в справочнике Visual Basic.

  • Если для подготовки приложения используется Microsoft Visual C#, используйте метод Main.

    Дополнительные сведения см. в разделе Command-Line Arguments (C# Programming Guide) в руководстве по программированию на C#.

Задача «Выполнение процесса» также содержит свойства StandardOutputVariable и StandardErrorVariable, чтобы указать переменные, которые используют стандартное устройство вывода и вывод ошибок приложения соответственно.

Кроме того, задача «Выполнение процесса» может быть настроена для указания рабочего каталога, времени ожидания или значения, указывающего, что исполняемый объект был запущен успешно. Задача также может быть настроена на завершение со сбоем, если код возврата исполняемого объекта не соответствует значению успешного выполнения или если исполняемый объект не найден в указанном месте.

Другие связанные задачи

Службы Integration Services содержат другие задачи, которые выполняют операции потока операций, такие как исполнение пакетов.

Дополнительные сведения об этих задачах см. в следующих разделах:

Пользовательские записи журнала, доступные в задаче «Выполнение процесса»

В следующей таблице перечислены пользовательские записи в журнале для задачи «Выполнение процесса». Дополнительные сведения см. в разделах Реализация ведения журналов в пакетах и Пользовательские сообщения для ведения журнала.

Запись журнала

Описание

ExecuteProcessExecutingProcess

Предоставляет сведения о процессе, для запуска которого настроена задача.

В журнале формируются две записи. Одна из них предоставляет сведения об имени и месте выполнения исполняемого объекта, на запуск которого настроена задача, другая фиксирует выход из исполняемого объекта.

ExecuteProcessVariableRouting

Предоставляет сведения о том, какие переменные направляются на вход и выходы исполняемого объекта. Данные журнала записываются для потоков stdin (вход), stdout (выход) и stderr (вывод ошибок на выходе).

Настройка задачи «Выполнение процесса»

Свойства задаются через конструктор служб SSIS или программно.

Дополнительные сведения о свойствах, которые можно задать в конструкторе служб SSIS, см. в следующих разделах:

Дополнительные сведения об установке этих свойств в конструкторе служб SSIS см. в следующем разделе:

Настройка задачи «Выполнение процесса» программно

Дополнительные сведения об установке этих свойств программным способом см. в следующем разделе.

Значок служб Integration Services (маленький)Будьте в курсе новых возможностей cлужб Integration Services

Чтобы загружать новейшую документацию, статьи, образцы и видеоматериалы от корпорации Майкрософт, а также лучшие решения от участников сообщества, посетите страницу служб Integration Services на сайтах MSDN или TechNet:

Чтобы получать автоматические уведомления об этих обновлениях, подпишитесь на RSS-каналы, предлагаемые на этой странице.

Журнал изменений

Обновленное содержимое

  • Приведены следующие данные об установке свойства Аргументы.

    • Пример, который показывает использование выражения для задания свойства.

    • Пример кода, который показывает, как задать свойство My.Application.CommandLineArgs в приложении, чтобы вернуть аргумент.