DAX 取消度量(取消日期与预订日期)
DAX Measure for Cancellations (Cancel Date vs. Book Date)
我有一个 'Reservations' table 看起来像这样;
Reservation ID
Book Date
Status
Cancel Date
Booking Flag
1234
2021-01-01
Active
1
5678
2021-01-01
Active
1
9101
2021-01-01
Cancelled
2021-01-02
1
1121
2021-01-02
Cancelled
2021-01-04
1
3141
2021-01-02
Active
1
'Book Date' 列与日历 table 通过处于活动关系。日期列。目前的措施是这样的;
Gross Bookings:SUM(Booking Flag)
Cancellations:CALCULATE([Gross Bookings],'Reservations'[Status]="Cancelled")
Net Bookings:[Gross Bookings]-[Cancellations]
我希望能够制作出这样的table;
Date
Gross Bookings
Cancellations
Net Bookings
2021-01-01
3
0
3
2021-01-02
2
1
1
2021-01-03
0
0
0
2021-01-01
0
1
-1
但我得到的是这样的,因为 'Cancel Date' 在措施中没有被理解;
Date
Gross Bookings
Cancellations
Net Bookings
2021-01-01
3
1
2
2021-01-02
2
1
1
2021-01-03
0
0
0
2021-01-01
0
0
0
我如何使用 DAX 改变我的取消措施,使其与正确的取消日期相对应,同时仍然尊重我的日期关系?
我相信现在已经解决了,方法是在 'Cancel Date' 和日历日期 table 之间创建一个非活动关系,然后将此 DAX 用于取消措施;
CALCULATE([Gross Bookings],'Reservations'[Status]="Cancelled",USERELATIONSHIP('Reservations'[Cancel Date],'Calendar'[Date]))
这似乎是在做预期的输出,有待进一步测试。值得注意的是,我必须在取消日期空值中填充预订日期,以创建关系。
我有一个 'Reservations' table 看起来像这样;
Reservation ID | Book Date | Status | Cancel Date | Booking Flag |
---|---|---|---|---|
1234 | 2021-01-01 | Active | 1 | |
5678 | 2021-01-01 | Active | 1 | |
9101 | 2021-01-01 | Cancelled | 2021-01-02 | 1 |
1121 | 2021-01-02 | Cancelled | 2021-01-04 | 1 |
3141 | 2021-01-02 | Active | 1 |
'Book Date' 列与日历 table 通过处于活动关系。日期列。目前的措施是这样的;
Gross Bookings:SUM(Booking Flag)
Cancellations:CALCULATE([Gross Bookings],'Reservations'[Status]="Cancelled")
Net Bookings:[Gross Bookings]-[Cancellations]
我希望能够制作出这样的table;
Date | Gross Bookings | Cancellations | Net Bookings |
---|---|---|---|
2021-01-01 | 3 | 0 | 3 |
2021-01-02 | 2 | 1 | 1 |
2021-01-03 | 0 | 0 | 0 |
2021-01-01 | 0 | 1 | -1 |
但我得到的是这样的,因为 'Cancel Date' 在措施中没有被理解;
Date | Gross Bookings | Cancellations | Net Bookings |
---|---|---|---|
2021-01-01 | 3 | 1 | 2 |
2021-01-02 | 2 | 1 | 1 |
2021-01-03 | 0 | 0 | 0 |
2021-01-01 | 0 | 0 | 0 |
我如何使用 DAX 改变我的取消措施,使其与正确的取消日期相对应,同时仍然尊重我的日期关系?
我相信现在已经解决了,方法是在 'Cancel Date' 和日历日期 table 之间创建一个非活动关系,然后将此 DAX 用于取消措施;
CALCULATE([Gross Bookings],'Reservations'[Status]="Cancelled",USERELATIONSHIP('Reservations'[Cancel Date],'Calendar'[Date]))
这似乎是在做预期的输出,有待进一步测试。值得注意的是,我必须在取消日期空值中填充预订日期,以创建关系。