SSIS Package

In SSIS Package are a combination of Connection Managers, Control Flow Tasks, Data Flow Elements, Parameters, and Event Handlers that you use to perform ETL operations.

The SSIS Package is all about extracting data from various sources, transforming it, and loading it totally different destinations.

Create an SSIS Package

When you create a New Project, BIDS automatically creates a new one. However, you have a choice to create a new package in SSIS.

Open BIDS 1

To do so, right-click on the SSIS Packages folder, and select the New option from the context menu.

Create SSIS Package 2

It will create a new package, as shown in the below screenshot

SSIS Package Work Environment 3

SSIS Package Development

If you observe the below screenshot, each package has six different tabs.

Connection Managers

We need a connection manager to establish the connection between the package, source, and destination. 

I suggest you refer to the Introduction to Connection Managers article to understand them.

Control Flow Tasks

A package should contain at least one control flow element. Control Flow is a combination of Containers, Tasks, and Precedence Constraints.

Containers

For Loop and Foreach Loop containers works similarly to For Loop and Foreach loop in any programming language. The sequence container helps to group multiple tasks.

Tasks

Control Flow Tasks are used to work with local files, FTP files, Web Services, Scripts, etc. You can use these tasks to perform Database administrative tasks as well.

Precedence Constraints

Use Precedence Constraints to control the task flow. For example, you can write qualified expressions you must meet before executing any task.

Precedence Constraints 4

SSIS Package Data Flow Elements

The data Flow tab combines Sources, Transformations, and Destinations. By default, you cannot work in the Data Flow tab. Therefore, before you start working on the SSIS package Data Flow tab, you must add the data Flow Task in the Control Flow tab.

From the below screenshot, you can observe that there are three sections and a Favorite section:

Favorite section

If you do not know the necessary steps to connect with Source or Destination, you can use Source and Destination Asst. These two provide a detailed and easy Wizard. By using this wizard, you can establish a connection with Source and Destination.

Sources

A source is a place where you want to extract data. SSIS package supports a wide variety of sources such as Excel Files, Flat Files, XML Files, Relational databases

Transformations

A list of transformations available under this section is used to transform (slice and dice) data as per your requirement. For example, you can Pivot Data, Merge two tables, Sort tables, etc., within it.

Destinations

A destination is a place where we load the final data (after transformation). An SSIS package supports a wide variety of destinations such as Relational databases, OLE DB, ODBC destinations, Excel Destination, Flat Files Destination, XML Destination, etc.

Sources and Destinations in SSIS Package Data Flow Task 5

Parameters

SSIS Package Parameters help you to modify it without changing the entire dstx and replotting it. There are two types of parameters and they are Project Parameters and Package Parameters. I suggest you refer to the Parameters article to understand the creation of parameters.

Create SSIS Package Parameters 6

Event Handlers

This SSIS package tab is useful for managing the raised events in the run-time. For example, if you want the package to send an email to a manager after the execution, then create a script task for the onPostExecute event. I suggest you refer to Event Handlers to understand the process of configuring events.

Event handlers 7

SSIS Package Explorer

This tab will display all the elements that include: Connection Managers, Tasks, Parameters, Event Handlers, Variables, etc.

Create SSIS Package Explorer 9

About Suresh

Suresh is the founder of TutorialGateway and a freelance software developer. He specialized in Designing and Developing Windows and Web applications. The experience he gained in Programming and BI integration, and reporting tools translates into this blog. You can find him on Facebook or Twitter.