2016-07-05 70 views
0

我在SharePoint 2010中使用SSRS报告。我需要让我的报告在StartDate和StopDate之间生成信息。目前它只给我在准确截止日期输入的内容。我在哪里放>>以及如何?我试过把它放在过滤器中,但我得到一个错误,说我不能混合字段和参数。我有参数,所以用户可以输入日期,我有Start_Date和Stop_Date字段。两个日期之间的SSRS报告

我提前道歉。我是SSRS报告的新手。

<FieldRef Name="Drug_x0020_Name" /> 
<FieldRef Name="Inmate_x0020_Last_x0020_Name" /> 
<FieldRef Name="Start_x0020_Date" /> 
<FieldRef Name="Stop_x0020_Date" /> 
<FieldRef Name="ID" /> 
<FieldRef Name="DiscontinuedDate" /> 
<FieldRef Name="Prescription_x0020_Type" /> 
<FieldRef Name="Created" /> 
<FieldRef Name="InmateID" /> 
<FieldRef Name="Inmate_x0020_First_x0020_Name" /> 
<FieldRef Name="Ordered_x0020_Date" /> 
<FieldRef Name="DrugClassification" /> 

在此先感谢! Tara

+0

如果您可以编辑您的问题以包含SQL报告,那可以让我们更快地为您提供帮助。 –

+0

我希望这就是你正在寻找的。 :) – TYOzzy

+0

不完全。我正在寻找的是报告中主数据集的SQL代码或查询。您可以通过右键单击报表设计器中的数据集并选择查询来查看它...代码通常以“SELECT ...”子句开始。我需要看到所有这些。 –

回答

0

以下是过滤器在设计器中的样子。我不使用Report Builder,但它应该与Tablix属性对话框类似。 当然,表达式字段和参数名称会因您而异。通常情况下,Between过滤器包含开始日期和结束日期,因此这可能会得到与您现在获得的结果类似的结果。如果想在开始日期之后获得所有内容,可以随时删除过滤器的第二部分。

Tablix Properties

如果你想覆盖RDL中筛选合适的,这里要说的是看起来像基于图像的上方。我已经更改了名称以匹配您在评论中发布的内容。

<Filters> 
    <Filter> 
    <FilterExpression>=Fields!Start_Date.Value</FilterExpression> 
    <Operator>GreaterThanOrEqual</Operator> 
    <FilterValues> 
     <FilterValue>=Parameters!StartDate.Value</FilterValue> 
    </FilterValues> 
    </Filter> 
    <Filter> 
    <FilterExpression>=Fields!Start_Date.Value</FilterExpression> 
    <Operator>LessThanOrEqual</Operator> 
    <FilterValues> 
     <FilterValue>=Parameters!StopDate.Value</FilterValue> 
    </FilterValues> 
    </Filter> 
</Filters> 

直接编辑RDL并不是最好的方式去做这件事,但你可以做到这一点。只要小心,就是一切。

祝你好运!

+0

非常感谢您的帮助。我曾尝试过这个查询,但由于某种原因不起作用。逻辑上它应该。我最终得到了这个工作: – TYOzzy

+0

啊,好吧,它不会让我张贴剪报。我把开始和结束日期放在同一个过滤器行中并用于之间。问题是我没有得到第一个和最后一个日期。我即将把我的头发拉出来,所以我想我只需要让用户在他们真正想看到的日期和日期之前提供日期。 – TYOzzy

+0

这应该工作,他们改变日期。机会是数据中的日期还包括时间,参数的日期没有时间。这可能会导致查询排除一整天。我通常会更改SQL来弥补这一点。如果您可以将默认结束日期更改为现在的任何日期,再加上一天,这可能会使最终用户更容易一点。 –

相关问题