H ребята. Я разрабатываю настраиваемый компонент для SSIS. У меня возникают проблемы при обработке входных данных. Проблема заключается в том, что метод «ProcessInput» выполняется несколько раз. Два раза в этом случае.SSIS - ProcessInput в PipelineComponent вызывается более одного раза
Это входной процесс сниппет:
public override void ProcessInput(int inputID, PipelineBuffer buffer)
{
IDTSInput90 input = ComponentMetaData.InputCollection.GetObjectByID(inputID);
if (input.InputColumnCollection.Count > 0)
{
while (buffer.NextRow())
{
try
{
for (int columnIndex = 0; columnIndex < input.InputColumnCollection.Count; columnIndex++)
{
ColumnInfo columnInfo = _columnInfos[input.InputColumnCollection[columnIndex].ID];
IDTSInputColumn90 inputColumn = input.InputColumnCollection[columnIndex];
try
{
//write to destination
}
catch (Exception writeEx)
{
throw new Exception("Couldn't write to destination");
}
}
}
catch (Exception ex)
{
throw ex;
}
}
}
else
{
throw new Exception("There is no columns in the input collection");
}
}
Я понятия не имею, почему его вызывается дважды. Это поток данных:
Dataflow http://img371.imageshack.us/img371/3001/dataflowprocessinputrb6.png
И это окно отображения: Mapping window http://img78.imageshack.us/img78/3772/mappingprocessinputzs2.png