Integration Services Tasks
Tasks are control flow elements that define units of work that are performed in a package control flow. An SQL Server Integration Services package is made up of one or more tasks. If the package contains more than one task, they are connected and sequenced in the control flow by precedence constraints.
You can also write custom tasks using a programming language that supports COM, such as Visual Basic, or a .NET programming language, such as C#.
The SSIS Designer, the graphical tool in SQL Server Integration Services for working with packages, provides the design surface for creating package control flow, and provides custom editors for configuring tasks. You can also program the SQL Server Integration Services object model to create packages programmatically.
Integration Services includes the following types of tasks.
Data Flow Task
The task that runs data flows to extract data, apply column level transformations, and load data.
Data Preparation Tasks
These tasks do the following processes: copy files and directories; download files and data; run Web methods; apply operations to XML documents; and profile data for cleansing.
The tasks that communicate with other processes to run packages, run programs or batch files, send and receive messages between packages, send e-mail messages, read Windows Management Instrumentation (WMI) data, and watch for WMI events.
SQL Server Tasks
The tasks that access, copy, insert, delete, and modify SQL Server objects and data.
The tasks that extend package functionality by using scripts.
Analysis Services Tasks
The tasks that create, modify, delete, and process Analysis Services objects.
The tasks that perform administrative functions such as backing up and shrinking SQL Server databases, rebuilding and reorganizing indexes, and running SQL Server Agent jobs.
Backward Compatibility Tasks
The tasks that Integration Services provides for backward compatibility with SQL Server Data Transformation Services (DTS).
Additionally, you can write custom tasks using a programming language that supports COM, such as Visual Basic, or a .NET programming language, such as C#. If you want to access your custom task in the SSIS Designer, you can create and register a user interface for the task. For more information, see Developing a Custom Task.
Adding and Configuring Tasks
An Integration Services package can contain a single task, such as an Execute SQL task that deletes records in a database table when the package runs. However, packages typically contain several tasks, and each task is set to run within the context of the package control flow. Event handlers, which are workflows that run in response to run-time events, can also have tasks.
For more information about adding a task to a package using SSIS Designer, see How to: Add or Delete a Task or a Container in a Control Flow.
For more information about adding a task to a package programmatically, see Adding Tasks Programmatically.
Each task can be configured individually using the custom dialog boxes for each task that SSIS Designer provides, or the Properties window included in Business Intelligence Development Studio. A package can include multiple tasks of the same type—for example, six Execute SQL tasks—and each task can be configured differently. For more information, see How to: Set the Properties of a Task or Container.
Connecting and Grouping Tasks
If the task contains more than one task, they are connected and sequenced in the control flow by precedence constraints. For more information, see Precedence Constraints.