在SSAS表格模型中使用文本字段计算函数DAX

时间:2017-08-16 21:17:20

标签: powerbi dax ssas-tabular

我正在尝试复制以下dax计算,该计算在Power BI中有效但在SSAS表格模型中抛出错误。

Account Warranty Count = CALCULATE(COUNT(dds_repairlogs[Repair Logs]),RELATEDTABLE(dds_repairlogs),filter(dds_repairlogs,dds_repairlogs[Savings Type 2] = "Warranty"))

我得到的错误是count doesn't work with text fields。但是,“计数”功能中的“修复日志”字段是一种uniqueidentifier。有没有人对如何在SSAS表格模型中复制上述度量有任何建议。

2 个答案:

答案 0 :(得分:0)

COUNT功能仅计算数字。您的错误消息表明[修复日志]字段包含非数字值。

尝试将COUNT替换为COUNTROWS

答案 1 :(得分:0)

在Olly的回答中添加一点:

COUNT函数计算包含数字,日期或字符串的行 - 但只有将文本值转换为数字时才会计算文本值。

在SSAS表格模型中,Uniqueidentifier不是受支持的数据类型,因此您的uniqueidentifier值很可能保存为文本(即字符串)。

将公式中的COUNT(dds_repairlogs[Repair Logs])更改为COUNTROWS(dds_repairlogs)可以解决问题。 COUNTROWS计算表中的所有行,而不是列中的数字。