如何从SSRS功能代码执行SQL Server存储的过程

时间:2018-11-12 23:42:11

标签: tsql ssrs-2012

我正在尝试执行以下存储过程

ALTER PROCEDURE [dbo].[sp_zJDEAB_SSID_Update]
    (@BuyerNo INT, @SSCustID INT, @ReturnText VARCHAR(10) OUT)
AS
SET NOCOUNT ON
BEGIN TRY
    UPDATE [dbo].[crp_F0101]
    SET [ABURRF] = CAST(@SSCustID AS CHAR(15))
    WHERE ABAN8 = @BuyerNo

    SELECT 
        @ReturnText = CASE 
                         WHEN CAST(ab.ABURRF AS INT) = @SSCUSTID
                            THEN 'Updated'
                            ELSE 'Update failed'
                      END
    FROM
        dbo.crp_F0101 ab
    WHERE
        ABAN8 = @BuyerNo
END TRY
BEGIN CATCH
    SELECT @ReturnText = 'sp Error'
END CATCH

通过以下SSRS功能:

Public Shared Dim UpdateText as String
Public Function UpdateF0101(JDEBuyerABNo as Integer, SSCustID as Integer) as String
    If (JDEBuyerABNo>0 and SSCustID>0) 
    then
    sp_zJDEAB_SSID_Update(Fields!JDE_BuyerABNo.Value, Fields!SS_CustID.Value, UpdateText output)    
     Else UpdateText = "No"
     End If
     Return UpdateText
End Function

我尝试了几种不同的格式,但是对存储过程的调用始终会导致自定义代码错误BC30451(未声明)。

调用与报表网格的数据提取相同的数据库中存在的存储过程的正确语法是什么?

0 个答案:

没有答案