PipelineComponent Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Define la clase base que se utiliza al desarrollar componentes gestionados de flujo de datos.
public ref class PipelineComponent
public class PipelineComponent
type PipelineComponent = class
Public Class PipelineComponent
- Herencia
-
PipelineComponent
- Derivado
Ejemplos
El siguiente ejemplo de código muestra un componente que implementa el DtsPipelineComponentAttribute y hereda de la PipelineComponent clase.
using System;
using Microsoft.SqlServer.Dts.Pipeline.Wrapper;
namespace Microsoft.Samples.SqlServer.Dts
{
[DtsPipelineComponent(DisplayName="SampleComponent")]
public class SampleComponent : PipelineComponent
{
public override ProvideComponentProperties()
{
// TODO: Implement component intialization.
}
public override DTSValidationStatus Validate()
{
// TODO: Implement component validation.
}
public override void ProcessInput( int inputID, PipelineBuffer buffer)
{
// TODO: For transformation and destination components,
// implement code to process incoming rows.
}
}
}
Imports System
Imports Microsoft.SqlServer.Dts.Pipeline.Wrapper
Namespace Microsoft.Samples.SqlServer.Dts
<DtsPipelineComponent(DisplayName="SampleComponent")> _
Public Class SampleComponent
Inherits PipelineComponent
Public Overrides Sub ProvideComponentProperties()
' TODO: Implement component intialization.
End Sub
Public Overrides Function Validate() As DTSValidationStatus
' TODO: Implement component validation.
End Function
Public Overrides Sub ProcessInput(ByVal inputID As Integer, ByVal buffer As PipelineBuffer)
' TODO: For transformation and destination components,
' implement code to process incoming rows.
End Sub
End Class
End Namespace
Comentarios
Hereda de esta clase para crear tu propio componente de flujo de datos. Esta clase implementa las interfaces de componentes requeridas, IDTSDesigntimeComponent100 y IDTSRuntimeComponent100. Sobrescribes la implementación de clase base de estos métodos para proporcionar la funcionalidad de tu componente. PipelineComponent Proporciona métodos auxiliares además de los métodos de las interfaces de componentes para ayudarte a desarrollar tu componente.
Constructores
| Nombre | Description |
|---|---|
| PipelineComponent() |
Inicializa una nueva instancia de la clase PipelineComponent. |
Campos
| Nombre | Description |
|---|---|
| s_STOCKPROPNAME_COMPFLAGS |
Contiene el nombre de la propiedad ComparisonFlags de los componentes de flujo de datos. |
| s_STOCKPROPNAME_DELOUTPUTONPATHDETACHED |
Contiene el nombre de la propiedad DeleteOutputOnPathDetached de los componentes de flujo de datos. |
| s_STOCKPROPNAME_EXCLGROUP |
Contiene el nombre de la propiedad ExclusionGroup de los componentes de flujo de datos. |
| s_STOCKPROPNAME_HASSIDEEFFECTS |
Contiene el nombre de la propiedad HasSideEffects de los componentes de flujo de datos. |
| s_STOCKPROPNAME_ISDISTRIBUTABLE |
Contiene el nombre de la propiedad IsDistributable de los componentes de flujo de datos. |
| s_STOCKPROPNAME_ISERROROUT |
Contiene el nombre de la propiedad IsErrorOut de los componentes de flujo de datos. |
| s_STOCKPROPNAME_ISSORTED |
Contiene el nombre de la propiedad IsSorted de los componentes de flujo de datos. |
| s_STOCKPROPNAME_REFMETADATAID |
Contiene el nombre de la propiedad ReferenceMetaDataID de los componentes de flujo de datos. |
| s_STOCKPROPNAME_SORTKEYPOS |
Contiene el nombre de la propiedad SortKeyPosition de los componentes de flujo de datos. |
| s_STOCKPROPNAME_SYNCINPUTID |
Contiene el nombre de la propiedad SynchronousInputID de los componentes de flujo de datos. |
Propiedades
| Nombre | Description |
|---|---|
| BufferManager |
Obtiene el IDTSBufferManager100 del componente de la pipeline. |
| ComponentMetaData |
Obtiene el IDTSComponentMetaData100 para un componente. |
| ErrorSupport |
Devuelve un ErrorSupport objeto que permite al componente generar errores, advertencias u otros eventos de información basados en los HRESULT devueltos por los componentes de Integration Services escritos en código nativo. |
| EventInfos |
Obtiene la IDTSEventInfos100 colección del PipelineComponent objeto. |
| LogEntryInfos |
Recibe una IDTSLogEntryInfos100 colección de eventos de registro que el componente ha registrado. |
| ReferenceTracker |
Obtiene el IDTSObjectReferenceTracker100 componente asociado. |
| VariableDispenser |
Obtiene el IDTSVariableDispenser100 de la componente de flujo de datos. |
Métodos
| Nombre | Description |
|---|---|
| AcquireConnections(Object) |
Establece una conexión con un gestor de conexiones. |
| AddErrorOutput(String, Int32, Int32) |
Añade un IDTSOutput100 objeto y lo marca como salida de error poniendo la IsErrorOut propiedad en true. |
| BufferTypeToDataRecordType(DataType) |
Devuelve un tipo de dato gestionado basado en un tipo de dato de Integration Services. |
| Cleanup() |
Libera recursos y finaliza la ejecución del componente. |
| ConvertBufferDataTypeToFitManaged(DataType, Boolean) |
Obtiene los Servicios DataType de Integración adecuados a partir de código gestionado. |
| DataRecordTypeToBufferType(Type) |
Obtiene los Servicios DataType de Integración que corresponden a un tipo gestionado. |
| DeleteExternalMetadataColumn(Int32, Int32) |
Elimina la columna de metadatos externos en el índice especificado de la colección de columnas de metadatos externas. |
| DeleteInput(Int32) |
Elimina un IDTSInput100 objeto de la IDTSInputCollection100 colección. |
| DeleteOutput(Int32) |
Elimina un IDTSOutput100 objeto de la IDTSOutputCollection100 colección. |
| DeleteOutputColumn(Int32, Int32) |
Elimina un IDTSOutputColumn100 objeto de la IDTSOutputColumnCollection100 colección. |
| DescribeRedirectedErrorCode(Int32) |
Proporciona información de código de error para una PipelineBuffer fila añadida a un búfer de salida. |
| GetDependentInputs(Int32) |
Devuelve una colección de los IDs de entrada de las entradas que están esperando más datos y, por tanto, bloquean la entrada especificada. |
| GetErrorOutputInfo(Int32, Int32) |
Devuelve el índice y el ID de la salida de error del componente. |
| idxOfBufferType(DataType) |
Especifica el tipo del índice de búfer. |
| idxOfDataRecordType(Type) |
Especifica el tipo de índice de registro de datos. |
| Initialize() |
Cuando se sobrescribe en una clase derivada, se inicializa una nueva instancia de un componente personalizado de flujo de datos. |
| InsertExternalMetadataColumnAt(Int32, Int32, String, String) |
Inserta una nueva columna de metadatos externos en la colección de columnas externas de metadatos en el índice especificado. |
| InsertInput(DTSInsertPlacement, Int32) |
Agrega un IDTSInput100 objeto a .IDTSInputCollection100 |
| InsertOutput(DTSInsertPlacement, Int32) |
Añade un nuevo IDTSOutput100 objeto |
| InsertOutputColumnAt(Int32, Int32, String, String) |
Crea un nuevo IDTSOutputColumn100 objeto e inserta en el IDTSOutputColumnCollection100archivo . |
| IsCompatibleNumericTypes(DataType, DataType) |
Determina si dos tipos de datos numéricos son compatibles para soportar una conversión de un tipo a otro. |
| IsInputReady(Int32[], Boolean[]) |
Determina cuáles de las entradas conectadas a un componente están esperando más datos, cuáles tienen suficientes datos para procesar y están bloqueados. |
| MapInputColumn(Int32, Int32, Int32) |
Establece una relación entre una columna de entrada y una columna externa de metadatos correspondiente. |
| MapOutputColumn(Int32, Int32, Int32, Boolean) |
Establece una relación entre una columna de salida y una columna externa de metadatos correspondiente. |
| OnDeletingInputColumn(Int32, Int32) |
Elimina un IDTSInputColumn100 objeto de la IDTSInputColumnCollection100serie . |
| OnInputPathAttached(Int32) |
Se llama cuando un IDTSInput100 objeto está conectado al componente a través de la IDTSPath100 interfaz. |
| OnInputPathDetached(Int32) |
Se llama cuando un IDTSInput100 objeto se desconecta del componente a través de la IDTSPath100 interfaz. |
| OnOutputPathAttached(Int32) |
Se llama cuando un IDTSOutput100 objeto del componente está conectado a un componente posterior. |
| PerformDowngrade(Int32, DTSTargetServerVersion) |
Por defecto, PerformDowngrade no debería lanzar ComponentDowngradeFailedException porque el tiempo de ejecución solo puede determinar si llamar a este método mediante targetServerVersion; no puede comprobar la versión del componente porque no sabe si la versión del componente ha cambiado entre dos versiones de SSIS, mientras que el método PerformUpgrade comprueba si la versión del componente en el xml del paquete es menor que la versión actual antes de ser llamada. |
| PerformUpgrade(Int32) |
Actualiza los metadatos del componente a la versión del componente instalada en el ordenador local. |
| PostExecute() |
Llamado al final de la ejecución de componentes, pero antes Cleanup()de . |
| PreExecute() |
Llamado después PrepareForExecute()de , y antes PrimeOutput(Int32, Int32[], PipelineBuffer[]) de y ProcessInput(Int32, PipelineBuffer). |
| PrepareForExecute() |
Llamó antes PreExecute()de . |
| PrimeOutput(Int32, Int32[], PipelineBuffer[]) |
Llamado en tiempo de ejecución para componentes fuente y componentes de transformación con salidas asíncronas para permitir que estos componentes añadan filas a los búferes de salida. |
| ProcessInput(Int32, PipelineBuffer) |
Se llama en tiempo de ejecución cuando un PipelineBuffer componente de un upstream está disponible para el componente para que este procese las filas entrantes. |
| ProvideComponentProperties() |
Se llama cuando un componente se añade por primera vez a la tarea de flujo de datos, para inicializar el ComponentMetaData de dicho componente. |
| RegisterEvents() |
Cuando desarrollas un componente de flujo de datos personalizado, anulas este método para crear eventos personalizados. |
| RegisterLogEntries() |
Registra los eventos que el componente registrará. |
| ReinitializeMetaData() |
Reparar cualquier error identificado durante la validación que haga que el componente regrese VS_NEEDSNEWMETADATA en el momento del diseño. |
| ReleaseConnections() |
Libera las conexiones establecidas durante AcquireConnections(Object). Llamado en tiempo de diseño y de ejecución. |
| RemoveAllInputsOutputsAndCustomProperties() |
Elimina cada IDTSInput100 objeto IDTSOutput100 y objeto del componente. |
| SetComponentProperty(String, Object) |
Asigna un valor a IDTSCustomProperty100 del componente. |
| SetExternalMetadataColumnDataTypeProperties(Int32, Int32, DataType, Int32, Int32, Int32, Int32) |
Establece las propiedades del tipo de dato de la columna externa de metadatos especificada. |
| SetExternalMetadataColumnProperty(Int32, Int32, String, Object) |
Establece una propiedad individual de una columna externa de metadatos. |
| SetInputColumnProperty(Int32, Int32, String, Object) |
Asigna un valor a la IDTSCustomProperty100 de un IDTSInputColumn100 objeto. |
| SetInputProperty(Int32, String, Object) |
Asigna un valor a la IDTSCustomProperty100 de un IDTSInput100 objeto. |
| SetOutputColumnDataTypeProperties(Int32, Int32, DataType, Int32, Int32, Int32, Int32) |
Establece las propiedades del tipo de dato de un IDTSOutputColumn100 objeto. |
| SetOutputColumnProperty(Int32, Int32, String, Object) |
Establece el valor de un IDTSCustomProperty100 para un IDTSOutputColumn100 objeto. |
| SetOutputProperty(Int32, String, Object) |
Establece el valor de un IDTSCustomProperty100 en un IDTSOutput100 objeto. |
| SetUsageType(Int32, IDTSVirtualInput100, Int32, DTSUsageType) |
Crea un IDTSInputColumn100 objeto en el IDTSInputColumnCollection100 de el componente y establece la UsageType propiedad de la columna. |
| Validate() |
Verifica que el componente esté correctamente configurado. |