ssrs :参数与查找相结合

ssrs : parameter combined with a lookup

我遇到了以下问题

我是运行下面的存储过程。它有一个参数,@choix_de_l_adresse,作为输入

CREATE PROCEDURE Adresse1 
@choix_de_l_adresse VARCHAR(38)
AS 
BEGIN
    SELECT John_Jack.Siren,
            CASE 
                WHEN John_Jack.Adresse1_Eco IS NULL THEN ''
                WHEN John_Jack.Adresse1_Post IS NULL THEN ''
                WHEN (John_Jack.Adresse1_Eco IS NOT NULL 
                OR John_Jack.Adresse1_Post IS NOT NULL)
                AND @choix_de_l_adresse = 'Adresse Postale' THEN Adresse1_Post
                ELSE Adresse1_Eco
            END AS adresse1
    FROM John_Jack
END 

当我使用管理工作室控制台时,存储过程运行很好。

我已经在ssrs中设置了参数

但是,在将存储过程设置为数据集时,我 运行 遇到了一些问题:

1) 这个window 正在弹出

我正在尝试在参数值,但它给了我这个

2) 我正在尝试暴力破解我在互联网上看到的参数,但无济于事

最后,但同样重要的是,我正在做一个 lookup 结合下面的参数

=Lookup(Fields!Siren.Value,Fields!Siren.Value,Parameters!adresse1.Value,"adresse1")

然而它给了我致命的子弹Report item expressions can only refer to fields within the current datascope [...]

你知道为什么吗?

更新:请在下面找到我的数据集查询的屏幕截图

我没有找到解决问题的方法。但是,我找到了一个不错的解决方法。

我没有创建存储过程,而是将部分代码放入 ssrs

现在的代码是这样的

DECLARE @choix_de_l_adresse VARCHAR(38)
    SELECT John_Jack.Siren,
            CASE 
                WHEN John_Jack.Adresse1_Eco IS NULL THEN ''
                WHEN John_Jack.Adresse1_Post IS NULL THEN ''
                WHEN (John_Jack.Adresse1_Eco IS NOT NULL 
                OR John_Jack.Adresse1_Post IS NOT NULL)
                AND @choix_de_l_adresse = 'Adresse Postale' THEN Adresse1_Post
                ELSE Adresse1_Eco
            END AS adresse1
    FROM John_Jack

然后设置合适的数据集(见下文)

和select正确的参数(见下文)

一旦完成,一切都在工作