PipelineBuffer.SetEndOfRowset Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Notifica al PipelineBuffer que un componente ha terminado de agregar filas al búfer.
public:
void SetEndOfRowset();
public void SetEndOfRowset ();
member this.SetEndOfRowset : unit -> unit
Public Sub SetEndOfRowset ()
Ejemplos
En el ejemplo siguiente se muestra un componente de origen que llama SetEndOfRowset a para indicar que ha terminado de agregar filas a PipelineBuffer.
using System;
using Microsoft.SqlServer.Dts.Pipeline;
using Microsoft.SqlServer.Dts.Pipeline.Wrapper;
using Microsoft.SqlServer.Dts.Runtime.Wrapper;
namespace Microsoft.Samples.SqlServer.Dts
{
[DtsPipelineComponent(DisplayName = "SampleComponent")]
public class SampleSourceComponent: PipelineComponent
{
public override void ProvideComponentProperties()
{
IDTSOutput100 output = ComponentMetaData.OutputCollection.New();
output.Name = "SourceOutput";
IDTSOutputColumn100 column = output.OutputColumnCollection.New();
column.Name = "Column1";
column.SetDataTypeProperties(DataType.DT_R8, 0, 0, 0, 0);
}
public override void PrimeOutput(int outputs, int[] outputIDs, PipelineBuffer[] buffers)
{
double d = 123.5;
buffers[0].AddRow();
buffers[0].SetDouble(0, d);
buffers[0].SetEndOfRowset();
}
}
}
Imports System
Imports Microsoft.SqlServer.Dts.Pipeline
Imports Microsoft.SqlServer.Dts.Pipeline.Wrapper
Imports Microsoft.SqlServer.Dts.Runtime.Wrapper
Namespace Microsoft.Samples.SqlServer.Dts
<DtsPipelineComponent(DisplayName="SampleComponent")> _
Public Class SampleSourceComponent
Inherits PipelineComponent
Public Overrides Sub ProvideComponentProperties()
Dim output As IDTSOutput100 = ComponentMetaData.OutputCollection.New
output.Name = "SourceOutput"
Dim column As IDTSOutputColumn100 = output.OutputColumnCollection.New
column.Name = "Column1"
column.SetDataTypeProperties(DataType.DT_R8, 0, 0, 0, 0)
End Sub
Public Overrides Sub PrimeOutput(ByVal outputs As Integer, ByVal outputIDs As Integer(), ByVal buffers As PipelineBuffer())
Dim d As Double = 123.5
buffers(0).AddRow
buffers(0).SetDouble(0, d)
buffers(0).SetEndOfRowset
End Sub
End Class
End Namespace
Comentarios
Los componentes de flujo de datos llaman a este método cuando han terminado de agregar filas a .OutputPipelineBuffer Al llamar a SetEndOfRowset , se notifica al motor de flujo de datos que un componente ha terminado de agregar filas a PipelineBuffer. A SetEndOfRowset continuación, el método establece el valor de la EndOfRowset propiedad true
en en el búfer final.
PipelineBuffer genera un NotOutputBufferException objeto cuando se llama al Mode objeto de PipelineBuffer y Input a este método.