代码之家  ›  专栏  ›  技术社区  ›  BuddyJoe

SQL Reporting Services 2005-未查询的报表参数

  •  2
  • BuddyJoe  · 技术社区  · 16 年前

    我正在尝试获取当前年份,并已尝试:

    =YEAR(TODAY())    
    =DATEPART("yyyy",TODAY())    
    

    我今天也试过了,而不是今天

    有什么想法吗?文章?


    更新2:
    请参阅所有评论

    5 回复  |  直到 16 年前
        1
  •  2
  •   Scott Ivey    16 年前
    =DateTime.Today.Year
    

    也应该有效。

    我可以用两种方法解决这个问题:第一种方法是在我的第一个参数中添加默认值=String.Empty,第二种方法是更改参数的顺序。

    我不确定这种行为是出于设计还是一个bug——但正如你所说,直到今天你在问题中指出它时,我才注意到它。

        2
  •  2
  •   Gerrie Schenck    16 年前

    =Year(Now)
    

    我不确定这是否是你所需要的,但它对我起了作用。我使用它来形成一个日期字符串,所以我使用了=Year(Now).ToString()。

        3
  •  2
  •   Sophia    16 年前

    SSRS会按顺序处理报告参数-如果参数之间存在依赖关系,则顺序可能很重要。

    当您使用级联时,这一点很重要 用户选择一个的默认值 参数,然后再选择值 其他参数。”

    因此,在处理下一个参数之前,它将始终等待您为第一个参数设置默认值或输入第一个参数的值,依此类推。

    http://msdn.microsoft.com/en-us/library/cc281392.aspx

        4
  •  0
  •   Kevin Kevin    16 年前

        5
  •  0
  •   Dan Dan    15 年前

    由于参数的评估顺序而导致Def。

    简单的解决办法;在参数选项卡中,您可以更改参数的顺序-这将把日期选择器移动到列表的顶部,然后立即启用,至少在我的服务器上是这样。

    有人提出了根据查询到的默认值进行日期筛选的问题-如果这样做,您将注意到一个非常恼人的连锁反应,即在您有机会重新查询报告之前,在任何时间更改日期时都会刷新屏幕。