Crear una tarea personalizada
Los pasos necesarios para crear una tarea personalizada son similares a los pasos para crear cualquier otro objeto personalizado para Integration Services:
Cree una clase nueva que herede de la clase base. En una tarea, la clase base es Task.
Aplique el atributo que identifica el tipo de objeto para la clase. En una tarea, el atributo es DtsTaskAttribute.
Invalide la implementación de los métodos y las propiedades de la clase base. En una tarea, incluyen los métodos Validate y Execute.
Si lo desea, desarrolle una interfaz de usuario personalizada. En una tarea, esto requiere una clase que implemente la interfaz IDtsTaskUI.
Para obtener un ejemplo funcional de una tarea personalizada, vea los ejemplos de Integration Services en Codeplex.
Introducción a una tarea personalizada
Crear proyectos y clases
Dado que todas las tareas administradas se derivan de la clase base Task, el primer paso al crear una tarea personalizada consiste en crear un proyecto de bibliotecas de clase en el lenguaje de programación administrado que prefiera y crear una clase que herede de la clase base. En esta clase derivada se invalidarán los métodos y las propiedades de la clase base para implementar la funcionalidad personalizada.
En la misma solución, cree un segundo proyecto de bibliotecas de clase para la interfaz de usuario personalizada. Se recomienda utilizar un ensamblado independiente para la interfaz de usuario a fin de facilitar la implementación, ya que le permite actualizar y volver a implementar la tarea o su interfaz de usuario de forma independiente.
Configure ambos proyectos para firmar los ensamblados que se generarán en tiempo de compilación mediante un archivo de clave de nombre seguro.
Aplicar el atributo DtsTask
Aplique el atributo DtsTaskAttribute a la clase que ha creado para identificarla como una tarea. Este atributo proporciona información en tiempo de diseño, como el nombre, la descripción y el tipo de tarea de la tarea.
Utilice la propiedad UITypeName para vincular la tarea a su interfaz de usuario personalizada. Para obtener el token de clave pública requerido para esta propiedad, puede utilizar sn.exe -t a fin de mostrar el token de clave pública del archivo de pares de claves (.snk) que desea utilizar para firmar el ensamblado de la interfaz de usuario.
using System;
using Microsoft.SqlServer.Dts.Runtime;
namespace Microsoft.SSIS.Samples
{
[DtsTask
(
DisplayName = "MyTask",
IconResource = "MyTask.MyTaskIcon.ico",
UITypeName = "My Custom Task," +
"Version=1.0.0.0," +
"Culture = Neutral," +
"PublicKeyToken = 12345abc6789de01",
TaskType = "PackageMaintenance",
TaskContact = "MyTask; company name; any other information",
RequiredProductLevel = DTSProductLevel.None
)]
public class MyTask : Task
{
// Your code here.
}
}
Imports System
Imports Microsoft.SqlServer.Dts.Runtime
<DtsTask(DisplayName:="MyTask", _
IconResource:="MyTask.MyTaskIcon.ico", _
UITypeName:="My Custom Task," & _
"Version=1.0.0.0,Culture=Neutral," & _
"PublicKeyToken=12345abc6789de01", _
TaskType:="PackageMaintenance", _
TaskContact:="MyTask; company name; any other information", _
RequiredProductLevel:=DTSProductLevel.None)> _
Public Class MyTask
Inherits Task
' Your code here.
End Class 'MyTask
Generar, implementar y depurar una tarea personalizada
Los pasos para generar, implementar y depurar una tarea personalizada en Integration Services son similares a los pasos necesarios en otros tipos de objetos personalizados. Para obtener más información, vea Generar, implementar y depurar objetos personalizados.
|