在SSRS中使用DAX查询的日期范围

时间:2018-01-04 23:43:30

标签: reporting-services ssrs-2012 dax

我正在使用SSRS 2015来创建报告。数据来自表格多维数据集,因此我使用DAX查询来创建共享数据集。我要做的是在我的报告中添加参数,允许用户使用日历选择器根据日期范围过滤数据。我试过了:

EVALUATE
FILTER(
SUMMARIZE(
  'PurchaseTable'
  ,'PurchaseTable'[Invoice Date]
),
  'PurchaseTable'[Invoice Date] >= DATEVALUE(FORMAT(@FromDate, "dd/MM/yyyy"))
  && 'PurchaseTable'[Invoice Date] <= DATEVALUE(FORMAT(@ToDate, "dd/MM/yyyy"))
)

但它产生了一个错误: 发生以下系统错误:类型不匹配

我也尝试过:

  'PurchaseTable'[Invoice Date] >= @FromDate
  && 'PurchaseTable'[Invoice Date] <= @ToDate

并收到以下错误: DAX比较操作不支持将Date类型的值与Text

类型的值进行比较

我的PurchaseTable [发票日期]列是日期类型,格式为dd / MM / yyyy。提前感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

如果您习惯在使用SSRS后向DAX添加参数,则以下内容应该是您最终DAX的代码。

public static function filter($params)
{
    return self::wherePublish(1)
        ->whereIn_special(1)
        ->latest()
        ->first();
]

确保您的参数始终为日期类型。

希望这有帮助吗?