Поделиться через


PipelineComponent Класс

Определение

Определяет базовый класс, используемый при разработке управляемых компонентов потока данных.

public ref class PipelineComponent
public class PipelineComponent
type PipelineComponent = class
Public Class PipelineComponent
Наследование
PipelineComponent
Производный

Примеры

В следующем примере кода показан компонент, реализующий DtsPipelineComponentAttribute и наследующий от PipelineComponent класса.

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  

Комментарии

Наследуется от этого класса для создания собственного компонента потока данных. Этот класс реализует необходимые интерфейсы IDTSDesigntimeComponent100 компонентов и IDTSRuntimeComponent100. Вы переопределяете реализацию этих методов базового класса, чтобы обеспечить функциональность компонента. PipelineComponent предоставляет вспомогательные методы в дополнение к методам интерфейсов компонентов, которые помогут вам в разработке компонента.

Конструкторы

PipelineComponent()

Инициализирует новый экземпляр класса PipelineComponent.

Поля

s_STOCKPROPNAME_COMPFLAGS

Содержит имя свойства ComparisonFlags компонентов потока данных.

s_STOCKPROPNAME_DELOUTPUTONPATHDETACHED

Содержит имя свойства DeleteOutputOnPathDetached компонентов потока данных.

s_STOCKPROPNAME_EXCLGROUP

Содержит имя свойства ExclusionGroup компонентов потока данных.

s_STOCKPROPNAME_HASSIDEEFFECTS

Содержит имя свойства HasSideEffects компонентов потока данных.

s_STOCKPROPNAME_ISDISTRIBUTABLE

Содержит имя свойства IsDissource компонентов потока данных.

s_STOCKPROPNAME_ISERROROUT

Содержит имя свойства IsErrorOut компонентов потока данных.

s_STOCKPROPNAME_ISSORTED

Содержит имя свойства IsSorted компонентов потока данных.

s_STOCKPROPNAME_REFMETADATAID

Содержит имя свойства ReferenceMetaDataID компонентов потока данных.

s_STOCKPROPNAME_SORTKEYPOS

Содержит имя свойства SortKeyPosition компонентов потока данных.

s_STOCKPROPNAME_SYNCINPUTID

Содержит имя свойства SynchronousInputID компонентов потока данных.

Свойства

BufferManager

Возвращает объект IDTSBufferManager100 компонента конвейера.

ComponentMetaData

Возвращает IDTSComponentMetaData100 для компонента.

ErrorSupport

Возвращает объект, позволяющий компоненту ErrorSupport вызывать ошибки, предупреждения или другие события информации на основе hrESULT, возвращаемых компонентами служб Integration Services, написанными в машинном коде.

EventInfos

Возвращает коллекцию IDTSEventInfos100 объектов PipelineComponent.

LogEntryInfos

Возвращает коллекцию IDTSLogEntryInfos100 событий журнала, зарегистрированных компонентом.

ReferenceTracker

Возвращает объект IDTSObjectReferenceTracker100, связанный с компонентом.

VariableDispenser

Возвращает IDTSVariableDispenser100 компонента потока данных.

Методы

AcquireConnections(Object)

Устанавливает соединение с диспетчером соединений.

AddErrorOutput(String, Int32, Int32)

IDTSOutput100 Добавляет объект и помечает его как вывод ошибок, задав IsErrorOut для свойства значение true.

BufferTypeToDataRecordType(DataType)

Возвращает управляемый тип данных на основе типа данных Служб Integration Services.

Cleanup()

Высвобождает ресурсы и завершает работу компонента.

ConvertBufferDataTypeToFitManaged(DataType, Boolean)

Возвращает соответствующие службы Integration Services DataType из управляемого кода.

DataRecordTypeToBufferType(Type)

Возвращает службы Integration Services DataType , соответствующие управляемому типу.

DeleteExternalMetadataColumn(Int32, Int32)

Удаляет внешний столбец метаданных по указанному индексу из коллекции столбцов внешних метаданных.

DeleteInput(Int32)

Удаляет объект IDTSInput100 из коллекции IDTSInputCollection100.

DeleteOutput(Int32)

Удаляет объект IDTSOutput100 из коллекции IDTSOutputCollection100.

DeleteOutputColumn(Int32, Int32)

Удаляет объект IDTSOutputColumn100 из коллекции IDTSOutputColumnCollection100.

DescribeRedirectedErrorCode(Int32)

Предоставляет данные кода ошибки для строки PipelineBuffer, добавленной в выходной буфер.

GetDependentInputs(Int32)

Возвращает коллекцию идентификаторов потоков входа, которые ожидают дополнительные данные и поэтому блокируют заданный поток входа.

GetErrorOutputInfo(Int32, Int32)

Возвращает индекс и идентификатор выходной ошибки компонента.

idxOfBufferType(DataType)

Задает тип индекса буфера.

idxOfDataRecordType(Type)

Задает тип индекса записи данных.

Initialize()

Если переопределен в производном классе, инициализирует новый экземпляр пользовательского компонента потока данных.

InsertExternalMetadataColumnAt(Int32, Int32, String, String)

Вставляет новый внешний столбец метаданных в коллекцию столбцов внешних метаданных по указанному индексу.

InsertInput(DTSInsertPlacement, Int32)

Добавляет объект IDTSInput100 в коллекцию IDTSInputCollection100.

InsertOutput(DTSInsertPlacement, Int32)

Добавляет новый объект IDTSOutput100.

InsertOutputColumnAt(Int32, Int32, String, String)

Создает новый объект IDTSOutputColumn100 и вставляет его в коллекцию IDTSOutputColumnCollection100.

IsCompatibleNumericTypes(DataType, DataType)

Определяет, совместимы ли два числовых типа данных для поддержки преобразований из одного в другой.

IsInputReady(Int32[], Boolean[])

Определяет, какие потоки входа, присоединенные к компоненту, ожидают дополнительных данных и какие потоки заблокированы, но имеют достаточно данных для обработки.

MapInputColumn(Int32, Int32, Int32)

Устанавливает связь между входным столбцом и соответствующим столбцом внешних метаданных.

MapOutputColumn(Int32, Int32, Int32, Boolean)

Устанавливает связь между выходным столбцом и соответствующим столбцом внешних метаданных.

OnDeletingInputColumn(Int32, Int32)

Удаляет объект IDTSInputColumn100 из коллекции IDTSInputColumnCollection100.

OnInputPathAttached(Int32)

Вызывается, когда объект IDTSInput100 присоединяется к компоненту с помощью интерфейса IDTSPath100.

OnInputPathDetached(Int32)

Вызывается, когда объект IDTSInput100 отсоединяется от компонента через интерфейс IDTSPath100.

OnOutputPathAttached(Int32)

Вызывается, когда объект IDTSOutput100 компонента присоединяется к нижестоящему компоненту.

PerformDowngrade(Int32, DTSTargetServerVersion)

По умолчанию PerformDowngrade не должен вызывать ComponentDowngradeFailedException, так как среда выполнения может только определить, следует ли вызывать этот метод с помощью targetServerVersion; Не удается проверить версию компонента, так как она не знает, была ли изменена версия компонента между двумя версиями служб SSIS, а метод PerformUpgrade проверит, меньше ли версия компонента в xml-файле пакета до вызова.

PerformUpgrade(Int32)

Обновляет метаданные компонента до версии компонента, установленного на локальном компьютере.

PostExecute()

Вызывается в конце выполнения компонента перед вызовом метода Cleanup().

PreExecute()

Вызывается после вызова метода PrepareForExecute(), но перед вызовом методов PrimeOutput(Int32, Int32[], PipelineBuffer[]) и ProcessInput(Int32, PipelineBuffer).

PrepareForExecute()

Вызывается перед вызовом метода PreExecute().

PrimeOutput(Int32, Int32[], PipelineBuffer[])

Вызывается во время выполнения компонентов источника и компонентов преобразования с асинхронными выходными данными для того, чтобы позволить этим компонентам добавлять строки в выходной буфер.

ProcessInput(Int32, PipelineBuffer)

Вызывается во время выполнения, когда PipelineBuffer из вышестоящего компонента доступен компоненту для обработки поступивших строк.

ProvideComponentProperties()

Вызывается при первом добавлении компонента в задачу потока данных для инициализации метаданных ComponentMetaData компонента.

RegisterEvents()

При разработке пользовательского компонента потока данных этот метод переопределяется для создания пользовательских событий.

RegisterLogEntries()

Регистрирует события, записываемые компонентом в журнал.

ReinitializeMetaData()

Исправляет любые ошибки, найденные во время проверки, в результате которой компонент вернул VS_NEEDSNEWMETADATA во время разработки.

ReleaseConnections()

Освобождает соединения, установленные во время вызова метода AcquireConnections(Object). Вызывается во время разработки и во время выполнения.

RemoveAllInputsOutputsAndCustomProperties()

Удаляет каждый объект IDTSInput100 и IDTSOutput100 из компонента.

SetComponentProperty(String, Object)

Присваивает значение свойству IDTSCustomProperty100 компонента.

SetExternalMetadataColumnDataTypeProperties(Int32, Int32, DataType, Int32, Int32, Int32, Int32)

Устанавливает свойства типа данных для указанного столбца внешних метаданных.

SetExternalMetadataColumnProperty(Int32, Int32, String, Object)

Устанавливает отдельное свойство для столбца внешних метаданных.

SetInputColumnProperty(Int32, Int32, String, Object)

Присваивает значение свойству IDTSCustomProperty100 объекта IDTSInputColumn100.

SetInputProperty(Int32, String, Object)

Присваивает значение свойству IDTSCustomProperty100 объекта IDTSInput100.

SetOutputColumnDataTypeProperties(Int32, Int32, DataType, Int32, Int32, Int32, Int32)

Устанавливает свойства типа данных объекта IDTSOutputColumn100.

SetOutputColumnProperty(Int32, Int32, String, Object)

Задает значение IDTSCustomProperty100 для объекта IDTSOutputColumn100.

SetOutputProperty(Int32, String, Object)

Задает значение IDTSCustomProperty100 для объекта IDTSOutput100.

SetUsageType(Int32, IDTSVirtualInput100, Int32, DTSUsageType)

Создает объект IDTSInputColumn100 в коллекции IDTSInputColumnCollection100 этого компонента и устанавливает свойство UsageType для столбца.

Validate()

Проверяет, правильно ли настроен компонент.

Применяется к