我的2012表格模型基于您在下面看到的图表。我的AgreementRate措施的代码也如下所示。根据Marco的DAX权威指南第130-131页,版权所有2015,第六章,DAX示例,您在我的查询中看到的计算(如下所示)应该在我的查询中显示我的度量。当前行的员工ID。但它显示了返回的每一行的总体价值。我做错了什么?
AgreementRate:=Calculate(Sum('Fact'[AnswerFlag]),'Fact'[PositiveNotOther]=1) / (Calculate(Sum('Fact'[AnswerFlag]),'Fact'[PositiveNotOther]=1) + Calculate(DistinctCount(Fact[FK_CaseId]),'Fact'[NegativeNotOther]=1))
evaluate addcolumns(
filter(Fact,related('Questions'[IsOther]) = 0),
"Name",
related(Employees[Name]),
"FormName",
related(Forms[FormName]),
"StudyName",
related(Studys[StudyName]),
"Question",
related(Questions[QuestionText]),
"Rate",
fact[AgreementRate],
"agree1",
calculate (fact[AgreementRate],
allselected(),-------------------------------------------original filters
--values(Employees[Name])--------------------------------supposed to be current context
values (fact[fk_empid])----------------------------------supposed to be current context
)
)
答案 0 :(得分:0)
我假设您要实现此目的 - 删除除Employees [Name]或fact [fk_empid]之外的所有过滤器。 去做这个 你需要在VALUES()周围包含一个CALCULATETABLE()函数,以便在当前行的上下文中计算它,并保留Employees [Name]或fact [fk_empid]的当前行的值,并删除所有其他过滤器ALLSELECTED()