Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.
Me falta un bloque de construcción básico para iterar y espero que si la comunidad puede ayudarme a empezar, puedo ir al siguiente nivel donde ver videos no me está llevando allí.
Estamos creando una imagen de la compensación a lo largo del tiempo para los empleados individuales (que puede acumularse para mostrar todo el departamento).
Los datos salariales nos llega cuando hay un cambio.
- por lo que en algunos años hubo dos salarios (por lo que queremos tomar el salario máximo) y
- en algunos años no había información salarial (por lo que queremos tirar hacia atrás hasta la última vez que los datos muestran que se estableció la tasa de compensación).
Tomar un empleado:
ID de posición | Estado de la posición | Salario Anual | Fecha de vigencia del pago regular | Fecha de finalización efectiva del pago regular |
356 | Activo | 59,000.16 | 10/30/2012 | 12/31/2013 |
356 | Activo | 62,280.00 | 01/01/2014 | 12/31/2014 |
356 | Activo | 64,170.47 | 01/01/2015 | 12/31/2016 |
356 | Activo | 65,460.12 | 01/01/2017 | 05/06/2018 |
356 | Activo | 76,500.00 | 05/07/2018 | 08/31/2018 |
356 | Activo | 82,611.84 | 09/01/2018 | 12/31/2019 |
356 | Activo | 86,130.48 | 01/01/2020 |
2013, 2016, 2019 no tienen datos para un cambio de compensación
2018 tiene dos puntos de datos
El gráfico de columnas acumulará todas las partes de la compensación para cada año calendario, por lo que la pieza de salario base aquí sería
ID de posición | Salario Anual | Año salarial |
356 | 59,000.16 | 2012 |
356 | 59,000.16 | 2013 |
356 | 62,280.00 | 2014 |
356 | 64,170.47 | 2015 |
356 | 64,170.47 | 2016 |
356 | 65,460.12 | 2017 |
356 | 82,611.84 | 2018 |
356 | 82,611.84 | 2019 |
356 | 86,130.48 | 2020 |
356 | 86,130.48 | 2021 |
Usando datos antiguos para espacios en blanco (azul) y eligiendo el max (alternativamente, la tasa Dec 31) (no tratando de mezclar) cuando hay múltiples.
¡Muchas gracias!
Hola
Creo que obtendrá los resultados esperados utilizando el siguiente método.
Paso 1: Agregue una "tabla calculada" al modelo de datos. (si aún no tiene uno)
Calendar =
CALENDAR ( DATE ( 2012, 1, 1 ), DATE ( 2021, 12, 31 ) )
Aquí he dado un rango de fechas del 1 de enero de 2012 al 31 de diciembre de 2021.
Tenga en cuenta que NO tiene que crear una relación con su tabla de salarios a la tabla de calendario.
Paso 2:Agregue una "columna calculada" a la tabla de calendario que ha agregado en el Paso 1
Year = YEAR('Calendar'[Date])
Paso 3: Cree una medida llamada "Compensación" o cualquier nombre que desee usar.
Compensation =
VAR DateRange =
VALUES ( 'Calendar'[Date] )
VAR LastEffectiveDate =
MAX ( Salary[Regular Pay Effective Date] )
VAR LastSalary =
SUMX (
FILTER ( Salary, Salary[Regular Pay Effective Date] = LastEffectiveDate ),
Salary[Annual Salary]
)
VAR AnnualSalary =
MAXX (
FILTER (
Salary,
Salary[Regular Pay Effective Date] IN DateRange
|| Salary[Regular Pay Effective End Date] IN DateRange
),
Salary[Annual Salary]
)
VAR Result =
IF ( ISBLANK ( AnnualSalary ), LastSalary, AnnualSalary )
RETURN
Result
Paso 4: Ahora agregue un objeto visual de tabla al modelo de datos y agregue los campos Salary[PositionID] y Calendar[Year] y "Compensation" a la sección values. Obtendrá los siguientes resultados.
Dado que los datos de muestra eran muy menores, no pude probar varios escenarios o cualquier comportamiento inesperado. Pero puede utilizar este enfoque como punto de partida e improvisar aún más según sus necesidades.
Hola @drylemming ,
Puede consultar el enlace:
https://community.powerbi.com/t5/Community-Blog/For-and-While-Loops-in-DAX/ba-p/636314,
Saludos
Amy
Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City
Check out the April 2024 Power BI update to learn about new features.
User | Count |
---|---|
2 | |
2 | |
2 | |
2 | |
1 |