Подобная проблема вывела меня сегодня вверх по стене.Отображение параметров легко, но тогда получение суммированного значения может вызвать реальные проблемы.Итак, вот настройки, которые я использовал в SSIS 2008. Ключевые моменты, которые я нашел:
- Ваши выходные столбцы зависят от значений, которые вы используете на вкладке Соединение.Поэтому напишите свой SELECT, но не беспокойтесь о предложении WHERE.
- Ваши входные параметры отображаются на вкладке "Дополнительно"
- Должны использоваться столбцы, доступные для параметров на вкладке "Дополнительно".на вкладке «Столбцы», но фактическое сопоставление на вкладке «Столбцы» будет игнорироваться, поэтому просто рассмотрите возможность получения полей, доступных для параметров, на вкладке «Дополнительно».
Это похоже на взлом, но я смогиспользовать один и тот же входной столбец дважды для двух условий в моем предложении WHERE и получить обратно столбец на основе SUM и столбец на основе COUNT.
Вкладка «Общие»: Режим кэширования: нет кэша(поэтому я могу использовать пользовательский запрос на вкладке «Дополнительно») Тип подключения: диспетчер соединений OLE DB
Вкладка «Соединение»: Использовать результаты SQL-запроса: проверено Запрос: (есть мои функции суммдля получения выходных данных, но не моих входных параметров. Запрос будет перезаписан на вкладке «Дополнительно», но мне нужно было указать свои выходные данные здесь, чтобы отобразить мои итоговые значенияполя)
SELECT
MIN(Company) CompanyFromSecurityNumber
,COUNT(OLIFundId) FundCountForSecurityNumber
FROM [db].[dbo].[table]
Вкладка «Столбцы»: Отобразите столбцы, которые нужно использовать в качестве параметров из вашего ввода, чтобы они были доступны в вашем списке параметров.Также проверьте суммированные значения для доступных столбцов поиска, чтобы получить выходные данные.То, как вы ссылаетесь, не имеет значения, хотя вкладка «Дополнительно» перезапишет
Вкладка «Дополнительно»: Изменить проверенный оператор SQL.(Необходимо было отключить кэширование на вкладке «Общие»)
SELECT
MIN(Company) CompanyFromSecurityNumber
,COUNT(OLIFundId) FundCountForSecurityNumber
FROM
[db].[dbo].[table]
WHERE
CUSIP = ?
OR
ISIN = ?
Кнопка «Параметры»: нажмите и отобразите параметры.Были доступны только те, которые я использовал на вкладке «Столбцы».Опять же, то, что я отобразил на вкладке столбцов, не имело ничего общего с их использованием, пока я использовал их здесь правильно.
Так что это было все, и я смог использовать параметры для ввода иполучить мои обобщенные поля (MIN и COUNT) в полях с именами "CompanyFromSecurityNumber" и "FundCountForSecurityNumber"