Compartilhar via


Classe PipelineComponent

Defines the base class that is used when developing managed data flow components.

Hierarquia de herança

System.Object
  Microsoft.SqlServer.Dts.Pipeline.PipelineComponent
    Microsoft.SqlServer.Dts.Pipeline.ScriptComponentHost

Namespace:  Microsoft.SqlServer.Dts.Pipeline
Assembly:  Microsoft.SqlServer.PipelineHost (em Microsoft.SqlServer.PipelineHost.dll)

Sintaxe

'Declaração
Public Class PipelineComponent
'Uso
Dim instance As PipelineComponent
public class PipelineComponent
public ref class PipelineComponent
type PipelineComponent =  class end
public class PipelineComponent

O tipo PipelineComponent expõe os membros a seguir.

Construtores

  Nome Descrição
Método público PipelineComponent Initializes a new instance of the PipelineComponent class.

Início

Propriedades

  Nome Descrição
Propriedade pública BufferManager Gets the IDTSBufferManager100 of the pipeline component.
Propriedade pública ComponentMetaData Gets the IDTSComponentMetaData100 for a component.
Propriedade pública ErrorSupport Returns an ErrorSupport object that lets the component raise errors, warnings, or other information events based on HRESULTs returned by Integration Services components written in native code.
Propriedade pública EventInfos Gets the IDTSEventInfos100 collection of the PipelineComponent object.
Propriedade pública LogEntryInfos Gets an IDTSLogEntryInfos100 collection of logging events that the component has registered.
Propriedade pública ReferenceTracker Gets the IDTSObjectReferenceTracker100 associated with the component.
Propriedade pública VariableDispenser Gets the IDTSVariableDispenser100 of the data flow component.

Início

Métodos

  Nome Descrição
Método público AcquireConnections Establishes a connection to a connection manager.
Método público AddErrorOutput Adds an IDTSOutput100 object and marks it as an error output by setting the IsErrorOut property to true.
Método protegidoMembro estático BufferTypeToDataRecordType Returns a managed data type based on an Integration Services data type.
Método público Cleanup Frees resources and finishes the execution of the component.
Método protegidoMembro estático ConvertBufferDataTypeToFitManaged Gets the appropriate Integration Services DataType from managed code.
Método protegidoMembro estático DataRecordTypeToBufferType Gets the Integration Services DataType that corresponds to a managed type.
Método público DeleteExternalMetadataColumn Deletes the external metadata column at the specified index from the collection of external metadata columns.
Método público DeleteInput Deletes an IDTSInput100 object from the IDTSInputCollection100 collection.
Método público DeleteOutput Deletes an IDTSOutput100 object from the IDTSOutputCollection100 collection.
Método público DeleteOutputColumn Deletes an IDTSOutputColumn100 object from the IDTSOutputColumnCollection100 collection.
Método público DescribeRedirectedErrorCode Provides error code information for a PipelineBuffer row added to an output buffer.
Método público Equals (Herdado de Object.)
Método protegido Finalize (Herdado de Object.)
Método público GetDependentInputs Returns a collection of the input IDs of inputs that are waiting for more data, and thus are blocking the specified input.
Método público GetErrorOutputInfo Returns the index and ID of the error output of the component.
Método público GetHashCode (Herdado de Object.)
Método público GetType (Herdado de Object.)
Método protegidoMembro estático idxOfBufferType Infraestrutura. Specifies the type of the buffer index.
Método protegidoMembro estático idxOfDataRecordType Infraestrutura. Specifies the type of the data record index.
Método público Initialize When overridden in a derived class, initializes a new instance of a custom data flow component.
Método público InsertExternalMetadataColumnAt Inserts a new external metadata column into the collection of external metadata columns at the specified index.
Método público InsertInput Adds an IDTSInput100 object to the IDTSInputCollection100.
Método público InsertOutput Adds a new IDTSOutput100 object
Método público InsertOutputColumnAt Creates a new IDTSOutputColumn100 object and inserts it into the IDTSOutputColumnCollection100.
Método protegidoMembro estático IsCompatibleNumericTypes Determines whether two numeric data types are compatible to support a conversion from one type to the other.
Método público IsInputReady Determines which of the inputs attached to a component are waiting for more data, and which have enough data to process and are blocked.
Método público MapInputColumn Establishes a relationship between an input column and a corresponding external metadata column.
Método público MapOutputColumn Establishes a relationship between an output column and a corresponding external metadata column.
Método protegido MemberwiseClone (Herdado de Object.)
Método público OnDeletingInputColumn Deletes an IDTSInputColumn100 object from the IDTSInputColumnCollection100.
Método público OnInputPathAttached Called when an IDTSInput100 object is connected to the component through the IDTSPath100 interface.
Método público OnInputPathDetached Called when an IDTSInput100 object is disconnected from the component through the IDTSPath100 interface.
Método público OnOutputPathAttached Called when an IDTSOutput100 object of the component is attached to a downstream component.
Método público PerformUpgrade Upgrades the component metadata to the version of the component installed on the local computer.
Método público PostExecute Called at the end of component execution, but before Cleanup.
Método público PreExecute Called after PrepareForExecute, and before PrimeOutput and ProcessInput.
Método público PrepareForExecute Called before PreExecute.
Método público PrimeOutput Called at run time for source components and transformation components with asynchronous outputs to let these components add rows to the output buffers.
Método público ProcessInput Called at run time when a PipelineBuffer from an upstream component is available to the component to let the component process the incoming rows.
Método público ProvideComponentProperties Called when a component is first added to the data flow task, to initialize the ComponentMetaData of the component.
Método público RegisterEvents When you are developing a custom data flow component, you override this method to create custom events.
Método público RegisterLogEntries Registers the events that the component will log.
Método público ReinitializeMetaData Repairs any errors identified during validation that cause the component to return VS_NEEDSNEWMETADATA at design time.
Método público ReleaseConnections Frees the connections established during AcquireConnections. Called at design time and run time.
Método público RemoveAllInputsOutputsAndCustomProperties Deletes each IDTSInput100 and IDTSOutput100 object from the component.
Método público SetComponentProperty Assigns a value to a IDTSCustomProperty100 of the component.
Método público SetExternalMetadataColumnDataTypeProperties Sets the data type properties of the specified external metadata column.
Método público SetExternalMetadataColumnProperty Sets an individual property of an external metadata column.
Método público SetInputColumnProperty Assigns a value to the IDTSCustomProperty100 of an IDTSInputColumn100 object.
Método público SetInputProperty Assigns a value to the IDTSCustomProperty100 of an IDTSInput100 object.
Método público SetOutputColumnDataTypeProperties Sets the data type properties of an IDTSOutputColumn100 object.
Método público SetOutputColumnProperty Sets the value of an IDTSCustomProperty100 for an IDTSOutputColumn100 object.
Método público SetOutputProperty Sets the value of an IDTSCustomProperty100 on an IDTSOutput100 object.
Método público SetUsageType Creates an IDTSInputColumn100 object in the IDTSInputColumnCollection100 of the component and sets the UsageType property of the column.
Método público ToString (Herdado de Object.)
Método público Validate Verifies that the component is correctly configured.

Início

Campos

  Nome Descrição
Campo públicoMembro estático s_STOCKPROPNAME_COMPFLAGS Contains the name of the ComparisonFlags property of data flow components.
Campo públicoMembro estático s_STOCKPROPNAME_DELOUTPUTONPATHDETACHED Contains the name of the DeleteOutputOnPathDetached property of data flow components.
Campo públicoMembro estático s_STOCKPROPNAME_EXCLGROUP Contains the name of the ExclusionGroup property of data flow components.
Campo públicoMembro estático s_STOCKPROPNAME_HASSIDEEFFECTS Contains the name of the HasSideEffects property of data flow components.
Campo públicoMembro estático s_STOCKPROPNAME_ISDISTRIBUTABLE Contains the name of the IsDistributable property of data flow components.
Campo públicoMembro estático s_STOCKPROPNAME_ISERROROUT Contains the name of the IsErrorOut property of data flow components.
Campo públicoMembro estático s_STOCKPROPNAME_ISSORTED Contains the name of the IsSorted property of data flow components.
Campo públicoMembro estático s_STOCKPROPNAME_REFMETADATAID Contains the name of the ReferenceMetaDataID property of data flow components.
Campo públicoMembro estático s_STOCKPROPNAME_SORTKEYPOS Contains the name of the SortKeyPosition property of data flow components.
Campo públicoMembro estático s_STOCKPROPNAME_SYNCINPUTID Contains the name of the SynchronousInputID property of data flow components.

Início

Comentários

Inherit from this class to create your own data flow component. This class implements the required component interfaces, IDTSDesigntimeComponent100 and IDTSRuntimeComponent100. You override the base class implementation of these methods to provide the functionality of your component. PipelineComponent provides helper methods in addition to the methods of the component interfaces to help you in developing your component.

Exemplos

The following code example shows a component that implements the DtsPipelineComponentAttribute and inherits from the PipelineComponent class.

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

Segurança de thread

Qualquer membro público static (Shared no Visual Basic) desse tipo é seguro para threads. Não há garantia de que qualquer membro de instância seja seguro para threads.

Consulte também

Referência

Namespace Microsoft.SqlServer.Dts.Pipeline