Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Powerbi DAX测量帮助:如何获得计数;“忽略”;关系_Powerbi_Dax_Ssas Tabular - Fatal编程技术网

Powerbi DAX测量帮助:如何获得计数;“忽略”;关系

Powerbi DAX测量帮助:如何获得计数;“忽略”;关系,powerbi,dax,ssas-tabular,Powerbi,Dax,Ssas Tabular,我正在跟踪机器及其开/关状态和服务历史: MachineHistory MachID Branch Status StatusDate ServiceHistory ServiceID MachID ServiceDate Calendar Date Year Month MachineHistory和ServiceHistory与MachId相关。 日历与日期列上的两者都相关 我想要的是ActiveMachineCount(表示Status=“ON”)和ServicedMachineCo

我正在跟踪机器及其开/关状态和服务历史:

MachineHistory
MachID
Branch
Status
StatusDate

ServiceHistory
ServiceID
MachID
ServiceDate

Calendar
Date
Year
Month
MachineHistory和ServiceHistory与MachId相关。 日历与日期列上的两者都相关

我想要的是ActiveMachineCount(表示Status=“ON”)和ServicedMachineCount(表示ServiceHistory表中存在行)的度量。两者都应该可以按日期和分支机构分组

因此,我应该能够有一个excel数据透视,显示

Branch     ActiveMachCnt     ServicedMachCnt
A             50                  13
B             23                   6
我有一个MachIdCnt=distinctcount(machineid)的度量 我的问题是ActiveMachIdCnt=calculate([MachIdCnt],MachineHistory[Status]=“ON”)

无论我如何尝试摆弄ActiveMachIdCnt,我要么得到a)表中的所有机器id,要么b)已服务的机器id计数(由于关系)

我显然没有正确理解ALL、ALLEXCEPT等函数系列:/

如何让ActiveMachIdCnt度量“忽略”与ServiceHistory的关系,但仍然尊重日期和分支上的过滤器

谢谢你的提示,
sff

我认为您遇到了这个问题,因为您的数据模型不正确。历史记录表(机器历史记录和服务历史记录)都是事实表。事实表不能有直接关系,这是禁止的

您需要做的是添加一个维度“Machine”,它将包含MachineId和您机器的其他有用属性。然后,此表将通过MachineID与机器历史记录和服务历史记录关联,与日历表通过日期与它们关联的方式完全相同

通过这种结构,您的DAX非常简单:

Active Machines = DISTINCTCOUNT(MachineHistory[MachineId])
Serviced Machines = DISCTINCTCOUNT(ServiceHistory[MachineId])

如果您想按分支分析这些度量,您需要将分支作为一个单独的维度(这是我的选择),或者作为维度“Machine”中的一个属性(这可以工作,但在概念上是一个低级设计)

谢谢。我想我把事实联系在一起是有原因的,但我记不起现在是什么了:/我会按照你的建议去做-谢谢!但假设我保持了这种关系结构,dax将如何根据需要获得这两种度量?