PowerBI 的单一筛选器

Single Filter for PowerBI

我在 powerbi 中有 2 个 tables,一个包含与人之间的所有交易(每个客户端都用一个 id 标识,其中“我”可以是 $ 的接收者或发送者),另一个是每个客户的详细信息。

Table 1 看起来像

| $ | sender id | receiver id |
|---|-----------| ------------|
| 10|     1     |       2     |
| 15|     1     |       3     |
| 20|     1     |       2     |
| 15|     3     |       1     |
| 10|     3     |       1     |
| 25|     2     |       1     |
| 10|     1     |       2     |

第二个 table 包含发件人 ID 和姓名:

| id | name  |
|----|-------|
|  1 | "me"  |
|  2 | John  |
|  3 | Susan |

预期结果类似于(不一定在 table 中,只是为了展示)

| $ sent | $ received | Balance|
|--------|------------|--------|
|   55   |     45     |   +10  |

过滤器中有“John”和“Susan”,所以当我 Select 其中之一时,我可以看到他们每个人的 $ sent、$received 和 balance。

问题当然是我最终得到一个活跃关系和一个不活跃关系,所以如果我应用这样的过滤器,我最终会在 sender/receiver 中得到 0 而在另一个中得到整个值(取决于哪个是激活和非激活),如果我再做一个 table 那是“id sender”+“name sender” 那么我不能一次过滤所有。

这可以吗? 我希望这是可以理解的

您需要为您的用户添加 2 列 table

received = CALCULATE(SUM(T1[$]), Filter(T1, UserTable[id] = T1[reveicer id]))

您可以对发送执行同样的操作。现在在您的视觉对象中,使用新列。

尽情享受吧!

经过一番摸索,我找到了解决这个问题的方法,可能不是最正统的方法,但它确实有效。

我所做的是在我的销售 table 中添加 2 列,其中一列被标记为“运动”,而在 sql 中,它只是一个 'case',其中接收者是 'me' 它的“收费”,当接收者是 'not-me' 它的“付款”时,然后我添加了一个带有案例的列,所以它总是给我带来 'not-me' id,我用它来可能与我的用户有关系 table.

然后我在我的卡中添加了过滤器,使一张成为“支付”卡,另一张成为“收费”卡。

这一切都遵循前面的例子,它实际上有点棘手,因为我实际上可以从我那里得到一笔付款,但这只是 'me-me'[ 的另一个“案例” =10=]

希望这是可以理解的,英语不是我的第一语言,我实际使用的信息是部分机密的,所以我不得不做上面的例子。

谢谢大家,祝你有愉快的一天。