ScriptComponent Class
Serves as the base class for the read-only UserComponent class generated by the Script component in the ComponentWrapper project item in a Script component project.
Inheritance Hierarchy
System.Object
Microsoft.SqlServer.Dts.Pipeline.ScriptComponent
Namespace: Microsoft.SqlServer.Dts.Pipeline
Assembly: Microsoft.SqlServer.TxScript (in Microsoft.SqlServer.TxScript.dll)
Syntax
'Declaration
Public Class ScriptComponent
'Usage
Dim instance As ScriptComponent
public class ScriptComponent
public ref class ScriptComponent
type ScriptComponent = class end
public class ScriptComponent
The ScriptComponent type exposes the following members.
Constructors
Name | Description | |
---|---|---|
ScriptComponent | Initializes a new instance of the ScriptComponent class. |
Top
Properties
Name | Description | |
---|---|---|
ComponentMetaData | Returns a reference to the component definition. | |
EvaluatorContext | Gets the script component evaluator context. | |
InputIDToNameMap | Gets the input identifier to name map. | |
OutputNameMap | Gets the output name map. | |
ReadOnlyVariables | Returns the collection of ReadOnlyVariables available to the component. | |
ReadWriteVariables | Returns the collection of ReadWriteVariables available to the component. | |
VariableDispenser | Returns an object that the data flow uses internally to work with variables. |
Top
Methods
Name | Description | |
---|---|---|
AcquireConnections | Obtains a connection or connection information by using a connection manager. | |
Equals | (Inherited from Object.) | |
Finalize | (Inherited from Object.) | |
GetColumnIndexes | Infrastructure. Gets the collection of column index for the script component. | |
GetHashCode | (Inherited from Object.) | |
GetOutputID | Returns the output ID that has a specified output name. | |
GetType | (Inherited from Object.) | |
Log | Writes a log entry. | |
MemberwiseClone | (Inherited from Object.) | |
PostExecute | Executes custom code that must run after the Script component has processed its inputs and outputs. | |
PreExecute | Executes custom code that must run before the Script component has processed its inputs and outputs. | |
PrimeOutput | Prepares the outputs in Script components, such as sources and transformations with asynchronous outputs, that add new rows to the output buffers. | |
ProcessInput(Int32, PipelineBuffer) | Processes the inputs in Script components, such as transformations and destinations, that receive inputs from upstream components. | |
ProcessInput(Int32, String, PipelineBuffer, OutputNameMap) | Processes inputs in the script components. | |
ReleaseConnections | Releases a connection to a connection manager. | |
SetBufferColumnIndexes | Infrastructure. Sets the index of the buffer columns. | |
ToString | (Inherited from Object.) |
Top
Remarks
The ScriptComponent class serves as the base class for the read-only UserComponent class, which is generated by the Script component in the ComponentWrapper project item in a Script component project. The UserComponent class serves as the base class for the ScriptMain class, in which the developer writes custom code, and provides the developer with a set of methods for working with the component's inputs and outputs. It also provides strongly-typed accessor properties for variables and connection managers available to the component.
The Script component developer does not use the ScriptComponent class directly, but indirectly, by coding the methods and properties of the ScriptMain class, which inherits from ScriptComponent through the UserComponent class.
For more information, see Coding and Debugging the Script Component and Understanding the Script Component Object Model.
Examples
The following code sample demonstrates all the code that a developer has to write to create a transformation with synchronous outputs by using the Script component. For more information on this sample, see Creating a Synchronous Transformation with the Script Component.
Public Class ScriptMain
Inherits UserComponent
Public Overrides Sub MyAddressInput_ProcessInputRow(ByVal Row As MyAddressInputBuffer)
Row.City = UCase(Row.City)
End Sub
End Class
Thread Safety
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.