Skip to content

Latest commit

 

History

History
79 lines (55 loc) · 6.05 KB

File metadata and controls

79 lines (55 loc) · 6.05 KB
title Integration Services Developer Documentation
description Integration Services Developer Documentation
author chugugrace
ms.author chugu
ms.date 03/06/2017
ms.service sql
ms.subservice integration-services
ms.topic reference
helpviewer_keywords
Integration Services, programming
SSIS, programming
SQL Server Integration Services, programming
packages [Integration Services], programming
dev_langs
VB
CSharp

Integration Services Developer Documentation

[!INCLUDEsqlserver-ssis]

[!INCLUDEssISnoversion] includes a completely rewritten object model, which has been enhanced with many features that make extending and programming packages easier, more flexible, and more powerful. Developers can extend and program almost every aspect of [!INCLUDEssISnoversion] packages.

As an [!INCLUDEssISnoversion] developer, there are two fundamental approaches that you can take to [!INCLUDEssISnoversion] programming:

  • You can extend packages by writing components that become available within [!INCLUDEssIS] Designer to provide custom functionality in a package.

  • You can create, configure, and run packages programmatically from your own applications.

If you find that the built-in components in [!INCLUDEssISnoversion] do not meet your requirements, you can extend the power of [!INCLUDEssISnoversion] by coding your own extensions. In this approach, you have two discrete options:

  • For ad hoc use in a single package, you can create a custom task by writing code in the Script task, or a custom data flow component by writing code in the Script component, which you can configure as a source, transformation, or destination. These powerful wrappers write the infrastructure code for you and let you focus exclusively on developing your custom functionality; however, they are not easily reusable elsewhere.

  • For use in multiple packages, you can create custom [!INCLUDEssISnoversion] extensions such as connection managers, tasks, enumerators, log providers, and data flow components. The managed [!INCLUDEssISnoversion] object model contains base classes that provide a starting point and make developing custom extensions easier than ever.

If you want to create packages dynamically, or to manage and run [!INCLUDEssISnoversion] packages outside the development environment, you can manipulate packages programmatically. You can load, modify, and run existing packages, or you can create and run entirely new packages programmatically. In this approach, you have a continuous range of options:

  • Load and run an existing package without modification.

  • Load an existing package, reconfigure it (for example, specify a different data source), and run it.

  • Create a new package, add and configure components, making changes object by object and property by property, save it, and then run it.

These approaches to [!INCLUDEssISnoversion] programming are described in this section and demonstrated with examples.

In This Section

Integration Services Programming Overview
Describes the roles of control flow and data flow in [!INCLUDEssISnoversion] development.

Understanding Synchronous and Asynchronous Transformations
Describes the important distinction between synchronous and asynchronous outputs and the components that use them in the data flow.

Working with Connection Managers Programmatically
Lists the connection managers that you can use from managed code, and the values that the connection managers return when the code calls the AcquireConnection method.

Extending Packages with Scripting
Describes how to extend the control flow by using the Script task, or the data flow by using the Script component.

Extending Packages with Custom Objects
Describes how to create and program custom tasks, data flow components, and other package objects for use in multiple packages.

Building Packages Programmatically
Describes how to create, configure, and save [!INCLUDEssISnoversion] packages programmatically.

Running and Managing Packages Programmatically
Describes how to enumerate, run, and manage [!INCLUDEssISnoversion] packages programmatically.

Reference

Integration Services Error and Message Reference
Lists the predefined [!INCLUDEssISnoversion] error codes, together with their symbolic names and descriptions.

Related Sections

Troubleshooting Tools for Package Development
Describes the features and tools that [!INCLUDEssISnoversion] provides for troubleshooting packages during development.

See Also

SQL Server Integration Services