在 PowerPivot 中计算每月员工人数

问题描述 投票:0回答:1

我已经到处寻找这个问题的答案,但似乎没有什么完全符合我的需要,或者它对我不起作用:(

我正在尝试计算每月的员工数量(使用 FTE 数字字段 - 不仅仅是计算行数)。

我的数据目前是:

Master Worker 表:员工 ID(唯一)、开始日期、终止日期。

日历表。

Master Worker 和雇佣日期日历之间存在关系(但不确定这是否正确)。

我已经尝试过:

Workers employed:=VAR currentDate =
    MAX ( 'DimDate'[Date] )
RETURN
    CALCULATE (
        COUNTROWS ('Master Worker'),
        FILTER (
            'Master Worker',
            ('Master Worker'[Start Date USE]<= currentDate
                && 'Master Worker'[Termination Date USE] >= currentDate )
                        )
    ) 

但这会返回在前端切片时在相关月份开始(即开始日期)的人。

我需要的输出是一个可以按月切片的表格(或放在带有月和年轴的图表上),显示该期间雇用的员工总数 - 而不是雇用或解雇。

我完全不知所措,似乎没有任何作用!非常感谢任何帮助! :)

编辑添加:如果可能的话,如果无法进行测量,则此输出在单独的表中会很好:

日期 总全职工作时间
2022年1月1日 2500
2022年1月2日 2510
2022年1月3日 2505
2022年1月4日 2501
2022年1月5日 2500
2022年1月6日 2530
2022年1月7日 2532
2022年1月8日 2501
2022年1月9日 2501
2022 年 1 月 10 日 2500
2022年1月11日 2530
2022年1月12日 2510
2023年1月1日 2505
2023年1月2日 2501
excel dax powerpivot
1个回答
0
投票

您的关系基于雇用日期,这是这里的技巧,因为间接按月计算就业状态可能就足够了,而无需进行此计算的直接关系。我会操作日历表并循环数月,同时根据条件进行过滤。 (尝试回顾一下你们的关系)

尝试按如下方式更新您的测量值:

Employees Employed:= 
VAR currentDate = MAX('Calendar'[Date])
RETURN
    CALCULATE(
        SUM('Master Worker'[FTE]), 
        FILTER(
            'Master Worker', 
            'Master Worker'[Start Date] <= currentDate && 
            (ISBLANK('Master Worker'[Termination Date]) || 'Master Worker'[Termination Date] >= currentDate)
        )
    )
© www.soinside.com 2019 - 2024. All rights reserved.