如何使用 DAX 在 Power BI 中计算赚取保费?

3

使用Power BI计算已赚保费。

你好,我对Power BI还比较陌生,目前在我的项目中计算已赚保费时遇到了困难。我尝试在网上寻找解决方案,但不知何故它们都无法为我所用。

背景: 保险公司的已赚保费计算如下: 已赚保费 = 已支付金额 * 当前期间天数 / 购买的总天数 例如,如果你支付了100美元购买1年的保险,在3月份你将获得8.49美元的已赚保费:

已赚保费 = 100美元 * 31天(3月份的天数)/ 365天(购买的保险总天数)。

问题: 我已经将我的保费分解为每日保费,并希望可以通过乘以覆盖期间的日期数来计算已赚保费。

Earned prmeium = 
CALCULATE(
   SUM( 'pre_staging scheduled_item_coverage'[Premium per day]
    *
        COUNTROWS(
            DATESBETWEEN(
            Calender[Date],
            IF(
                FIRSTDATE(Calender[Date])>=MIN('pre_staging scheduled_item_coverage'[Premium start date]),
                FIRSTDATE(Calender[Date]),MIN('pre_staging scheduled_item_coverage'[Premium start date])
            ),
            IF(
                LASTDATE(Calender[Date])<=MAX('pre_staging scheduled_item_coverage'[Expiring date]),
                LASTDATE(Calender[Date]),MAX('pre_staging referral_types'[expiry_date])
            )
            )
        )

到目前为止,我不知道我的代码哪里出了问题。

希望有经验的人能够指导我走向正确的方向。

谢谢!

Tom。


你的表格关系是什么,你现在使用这段代码遇到了什么问题? - Luke_0
我的回答解决了你的问题吗? - Luke_0
1个回答

0
Earned prmeium = 

SUMX(
   'Calendar',
    SUMX('pre_staging scheduled_item_coverage',
        IF( 
            AND(
                'pre_staging scheduled_item_coverage'[Premium start date] <= 'Calendar'[Date],
                'pre_staging scheduled_item_coverage'[Expiring Date] > 'Calendar'[Date]
            ),
            'pre_staging scheduled_item_coverage'[Premium per day], BLANK()
        )
    )
)

这将迭代每一天的每项政策。如果那天在政策期内,则添加每日保费。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接