IDTSOutput90.HasSideEffects Property

Gets or sets a value that indicates whether a data flow component should be removed or remain in the execution plan of a data flow task when its input is not attached to an upstream component and when the RunInOptimizedMode property of the Data Flow task is true.

Namespace: Microsoft.SqlServer.Dts.Pipeline.Wrapper
Assembly: Microsoft.SqlServer.DTSPipelineWrap (in microsoft.sqlserver.dtspipelinewrap.dll)

Syntax

'Declaration
<DispIdAttribute(107)> _
Property HasSideEffects As Boolean
[DispIdAttribute(107)] 
bool HasSideEffects { get; set; }
[DispIdAttribute(107)] 
property bool HasSideEffects {
    bool get ();
    void set ([InAttribute] bool pbHasSideEffects);
}
/** @property */
/** @attribute DispIdAttribute(107) */ 
boolean get_HasSideEffects ()

/** @property */
/** @attribute DispIdAttribute(107) */ 
void set_HasSideEffects (/** @attribute InAttribute() */ boolean pbHasSideEffects)
DispIdAttribute(107) 
function get HasSideEffects () : boolean

DispIdAttribute(107) 
function set HasSideEffects (pbHasSideEffects : boolean)

Property Value

true if the component performs custom actions that are not visible to the data flow engine; otherwise, false.

Remarks

When you set the HasSideEffects property of an IDTSOutput90 to true, you are indicating to the data flow engine that the component to which the output belongs performs custom actions that are not visible to the engine. As a result, the component will not be removed from the execution plan when the RunInOptimizedMode property of the Data Flow task is true.

For example, a source component does not have an input, so if the HasSideEffects property of its output was not true, the data flow engine could conclude that the source performed no action, and remove it from the execution plan.

The HasSideEffects property of an IDTSInput90 will always be true on a destination component (which has no output), and the HasSideEffects property of an IDTSOutput90 will always be true on a source component (which has no input). Both properties will usually be false on a transformation component.

However the HasSideEffects property of the input of the RowCount transformation is set to true. As a result, the RowCount does not require that its output be attached to a downstream component. Thus it can be used during package debugging as a temporary destination without the need to save any data.

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

IDTSOutput90 Interface
IDTSOutput90 Members
Microsoft.SqlServer.Dts.Pipeline.Wrapper Namespace