Сохранить результат в задаче «Выполнение SQL» - PullRequest
2 голосов
/ 15 июня 2019

Я написал хранимую процедуру, которая будет возвращать столбцы BEID, Date_of_txn, Txn_Amount в результате после выполнения. Я получаю результат вручную при запуске хранимой процедуры в SQL Server Management Studio. Но я хочу выполнить эту хранимую процедуру с задачей «Выполнить SQL» в SSIS и хочу сохранить результат в переменной. Как я могу это сделать?

Я не знаю, как сохранить результат в наборе результатов, так как при запуске пакета каждый раз происходил сбой пакета.

  • Результат: Single Row
  • Тип подключения: OLE DB
  • Соединение: LocalHost.Fino_Detail
  • SQLStatement: Exec sp_HighAmount 02, 2019

Хранимая процедура:

CREATE PROCEDURE [dbo].[sp_HighAmount]
    (@Month INT,
     @Year INT)
AS
BEGIN
    SELECT
        BEID, DATE_OF_TXN, SUM(Txn_amount) AS Txn_Amount 
    FROM 
        Fino_Sales
    WHERE
        SUBSTRING(Date_of_txn, 6, 2) = @Month
        AND SUBSTRING(Date_of_txn, 1, 4) = @Year
    GROUP BY
        BEID, Date_of_txn
    HAVING 
        SUM(Txn_Amount) BETWEEN 35001 AND 50000
        AND SUM(commission_paid) > 350
END

1 Ответ

2 голосов
/ 15 июня 2019
... 
group by BEID, Date_of_txn
...

Существует высокая вероятность того, что такой запрос возвращает несколько строк, поэтому набор результатов должен быть переключен на: " Полный набор результатов ", а выходные данные должны быть сопоставлены с переменной с типом: Объект , с последующей задачей foreach для обхода каждой строки.

Хороший пошаговый пошаговое руководство может прочитать: Выполнение задачи SQL в полном наборе строк SSIS

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...