PipelineComponent.SetUsageType Method
Creates an IDTSInputColumn90 object in the IDTSInputColumnCollection90 of the component and sets the UsageType property of the column. This method is not CLS-compliant.
Namespace: Microsoft.SqlServer.Dts.Pipeline
Assembly: Microsoft.SqlServer.PipelineHost (in microsoft.sqlserver.pipelinehost.dll)
Syntax
'Declaration
<CLSCompliantAttribute(False)> _
Public Overridable Function SetUsageType ( _
inputID As Integer, _
virtualInput As IDTSVirtualInput90, _
lineageID As Integer, _
usageType As DTSUsageType _
) As IDTSInputColumn90
[CLSCompliantAttribute(false)]
public virtual IDTSInputColumn90 SetUsageType (
int inputID,
IDTSVirtualInput90 virtualInput,
int lineageID,
DTSUsageType usageType
)
[CLSCompliantAttribute(false)]
public:
virtual IDTSInputColumn90^ SetUsageType (
int inputID,
IDTSVirtualInput90^ virtualInput,
int lineageID,
DTSUsageType usageType
)
/** @attribute CLSCompliantAttribute(false) */
public IDTSInputColumn90 SetUsageType (
int inputID,
IDTSVirtualInput90 virtualInput,
int lineageID,
DTSUsageType usageType
)
CLSCompliantAttribute(false)
public function SetUsageType (
inputID : int,
virtualInput : IDTSVirtualInput90,
lineageID : int,
usageType : DTSUsageType
) : IDTSInputColumn90
Parameters
- inputID
The ID of the IDTSInput90 object.
- virtualInput
The IDTSVirtualInput90 object that is used to map the IDTSInputColumn90 object.
- lineageID
The LineageID of the IDTSVirtualInputColumn90 object.
- usageType
A value from the DTSUsageType enumeration.
Return Value
The IDTSInputColumn90 object whose UsageType is set.
Remarks
If usageType is UT_READONLY or UT_READWRITE, the base class adds the column to the input column collection of the component; if it is UT_IGNORED, the existing column is removed. Override this method to restrict the columns that are added to the component based on the data type, or usage type, of the column.
Example
The following example prevents users of the component from setting the usage type of a column to read-only.
public override IDTSInputColumn90 SetUsageType(int inputID, IDTSVirtualInput90 virtualInput, int lineageID, DTSUsageType usageType)
{
// Prevent columns from being set to Read Only.
if ( usageType == DTSUsageType.UT_READONLY )
throw new Exception( "The UsageType must be set to ReadWrite.");
// Otherwise let the base class add or remove the column.
return base.SetUsageType (inputID, virtualInput, lineageID, usageType);
}
Public Overrides Function SetUsageType(ByVal inputID As Integer, ByVal virtualInput As IDTSVirtualInput90, ByVal lineageID As Integer, ByVal usageType As DTSUsageType) As IDTSInputColumn90
If usageType = DTSUsageType.UT_READONLY Then
Throw New Exception("The UsageType must be set to ReadWrite.")
End If
Return MyBase.SetUsageType(inputID, virtualInput, lineageID, usageType)
End Function
Thread Safety
Any public static (Shared in Microsoft Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Platforms
Development Platforms
For a list of the supported platforms, see Hardware and Software Requirements for Installing SQL Server 2005.
Target Platforms
For a list of the supported platforms, see Hardware and Software Requirements for Installing SQL Server 2005.
See Also
Reference
PipelineComponent Class
PipelineComponent Members
Microsoft.SqlServer.Dts.Pipeline Namespace