计算列显示循环依赖(如果没有)。怎么修?

时间:2019-06-05 08:32:10

标签: powerbi dax

表1:“股票历史记录”-我有一些历史每日水平的一些公司/股票的股票市场数据,例如股票名称,代码,当天收盘价等。 表2:“市值”-在另一个表中,我获得了有关截至2019年1月31日的股票市值的信息。

现在我要计算市场上该公司的总股数。公式很简单... NoOfShares = [市值] / [股价]

所以我要做的是: 1.在“市值”表中添加了一个计算列,以获取截至2019年1月31日的公司股价。

SharePriceOnJan31 = 
CALCULATE
(
    SUM('Stocks History'[Close])
    , CROSSFILTER(MarketCap[NSESymbol],'Stocks History'[NSESymbol],Both)
    , 'Stocks History'[Date] = date(2019,01,31)
)
  1. 在“市值”表中添加了另一个计算列,以获取“股份数量”
#OfShares = DIVIDE(MarketCap[Market Cap (INR)],MarketCap[SharePriceOnJan31])

现在,我在第二个公式中遇到循环依赖错误,为什么我无法理解……至少在这里看不到循环连接。 错误:检测到特殊依赖项:MarketCap [SharePriceOnJan31],MarketCap [#OfShares],MarketCap [SharePriceOnJan31]

如果有帮助,下面是数据模型。

Error Screenshot

Data Model

感谢您的帮助或解释。谢谢。

1 个答案:

答案 0 :(得分:0)

我能够通过删除第一个公式中的CROSSFILTER条件来解决此问题。 实际上,在数据模型中已经定义了两个表之间的双向关系。因此,当我尝试在公式中再次建立它时,它建立了循环依赖关系。

一级方程式的新代码(只需删除CROSSFILTER条件)

SharePriceOnJan31 = 
CALCULATE
(
    SUM('Stocks History'[Close])
    , 'Stocks History'[Date] = date(2019,01,31)
)