Вызов usp, проверка количества строк, использование результатов usp в SSIS

У меня есть пакет SSIS, в котором мне нужно выполнить usp, проверить количество строк, возвращаемых от usp, а затем использовать результаты usp, если количество строк не равно 0 в цикле For Each. Я хотел бы сделать это, вызвав БД только один раз, но я не могу понять, как это сделать. Прямо сейчас я использую задачу потока данных с источником OLE DB для ВЫПОЛНЕНИЯ usp. Затем у меня есть задача подсчета строк, чтобы получить счет и присвоить его переменной. Затем в моем потоке управления я использую эту переменную как выражение для каждого цикла, который работает, но тогда я не знаю, как на самом деле перебирать результаты запроса, поскольку в настоящее время он ни на что не назначен. Я думал назначить источник OLE DB переменной, но я не уверен, как это сделать, поэтому я открыт для других вариантов.

Вот что у меня сейчас есть:

Поток управления: введите описание изображения здесь

Поток данных:

введите описание изображения здесь


person mameesh    schedule 27.03.2014    source источник
comment
что такое usp? хранимая процедура?   -  person Justin    schedule 28.03.2014
comment
да, пользовательская хранимая процедура.   -  person mameesh    schedule 31.03.2014


Ответы (1)


вероятно, есть лучшие решения, но я не знаю вашего приложения и следуя вашему пытающемуся решению, что я могу вам предложить, это использование места назначения набора записей:

введите описание изображения здесь

вам нужно будет создать переменную типа object, чтобы сохранить набор записей. Вы можете прочитать эту переменную в цикле for, установленном для каждого перечисления ADO:

введите описание изображения здесь

введите описание изображения здесь

person Jayvee    schedule 27.03.2014