【问题标题】:Passing value from one parameter to another将值从一个参数传递到另一个参数
【发布时间】:2020-01-14 11:07:35
【问题描述】:

我正在 SSRS 中创建报告。查询工作正常。如果我对输入值进行硬编码,我会得到结果。

现在我添加了三个参数:

  1. 年月
  2. SUG 名称
  3. 收藏

 


  1. YearMonths - 数据直接来自 SQL 查询。没有问题。
  2. SUGName -

    select cia.AssignmentID,CIA.Collectionid, concat(grp.Title,' -- ', CIA.CollectionName) as deploymentName from
        v_CIAssignment cia
              inner join v_CIAssignmentToGroup  atg on cia.AssignmentType=5 and atg.AssignmentID=cia.AssignmentID
              inner join v_AuthListInfo grp on cia.AssignmentType=5 and grp.CI_ID=atg.AssignedUpdateGroup
     where concat(datepart(yyyy, grp.DateCreated), '-', RIGHT('0' + RTRIM(MONTH(grp.DateCreated)), 2)) = @YearMonths
      Order By grp.Title desc
    

    这也有效。

  3. 收藏-

    select cia.AssignmentID,CIA.Collectionid, concat(grp.Title,' -- ', CIA.CollectionName) as deploymentName from
        v_CIAssignment cia
              inner join v_CIAssignmentToGroup  atg on cia.AssignmentType=5 and atg.AssignmentID=cia.AssignmentID
              inner join v_AuthListInfo grp on cia.AssignmentType=5 and grp.CI_ID=atg.AssignedUpdateGroup
      where cia.AssignmentID = @SUGName
      Order By grp.Title desc
    

    它不工作并给出错误。查询工作正常。我通过手动输入 SUGName 进行了检查。

    以下是我遇到的错误。

    System.Web.Services.Protocols.SoapException: 查询参数“@SUGName”的值表达式引用了一个不存在的报告参数“SUGname”。参数名称中的字母必须使用正确的大小写。

【问题讨论】:

  • 错误消息暗示您没有在 ssrs 参数或数据集中(参数映射选项卡或类似的东西)中声明 @SUGName 参数。或者,您的查询或参数定义中的 @SUGName 可能有错字。

标签: sql reporting-services ssrs-2012


【解决方案1】:

SSRS 中的参数引用区分大小写。当您在查询中引用参数时,请确保 SUGName 在主查询中的大小写相同。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-03-27
    • 1970-01-01
    • 1970-01-01
    • 2017-03-26
    • 2019-02-05
    • 2017-11-17
    • 1970-01-01
    相关资源
    最近更新 更多