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.
Queridos todos,
Por favor, ayude a hacer una medida DAX para impulsar el % de la plantilla que es la contribución del personal no disponible en la plantilla diaria.
En la tabla anterior quiero el porcentaje de cada día en Power BI.
Tengo dos tablas en Power Bi como:
FACT_Codes
DIM_Headcount
La siguiente captura de pantalla muestra la estructura de datos de cada tabla.
Gracias por su ayuda.
Muchas gracias querido hermano por la explicación detallada.
Déjame intentarlo, te actualizaré.
fact_codes
Fecha | Número de personal | Código |
2022-01-01 | 123456 | ENFERMO |
2022-01-01 | 123457 | COVP |
2022-01-01 | 123458 | COVP |
2022-01-01 | 123459 | COVP |
2022-01-01 | 123460 | COVP |
2022-01-01 | 123461 | ENFERMO |
2022-01-02 | 123462 | ENFERMO |
2022-01-02 | 123463 | ENFERMO |
2022-01-02 | 123464 | ENFERMO |
2022-01-02 | 123465 | ENFERMO |
2022-01-02 | 123466 | ENFERMO |
2022-01-02 | 123467 | ENFERMO |
2022-01-02 | 123468 | ENFERMO |
2022-01-02 | 123469 | ENFERMO |
2022-01-03 | 123470 | COVP |
2022-01-03 | 123471 | COVP |
2022-01-03 | 123472 | COVP |
2022-01-03 | 123473 | COVP |
2022-01-03 | 123474 | COVP |
2022-01-03 | 123475 | ENFERMO |
2022-01-03 | 123476 | ENFERMO |
2022-01-03 | 123477 | ENFERMO |
2022-01-03 | 123478 | ENFERMO |
2022-01-03 | 123479 | ENFERMO |
2022-01-03 | 123480 | ENFERMO |
dim_headcount
Fecha | Plantilla |
2022-01-01 | 423 |
2022-01-02 | 440 |
2022-01-03 | 429 |
fact_codes
Fecha - fecha (no datetime, no datetimezone)
Número de personal - número
Código - texto
= Table.TransformColumnTypes(Source,{{"Date", type date}, {"Staff Number", Int64.Type}, {"Code", type text}})
dim_headcount
Fecha - fecha (no datetime, no datetimezone)
Plantilla - número
= Table.TransformColumnTypes(Source,{{"Date", type date}, {"Headcount", Int64.Type}})
El campo común en ambas tablas son las fechas, por lo que necesitamos calendario para conectarlas correctamente. Puede usar cualquier calendario que desee, pero mi recomendación es crear tablas dim_calendar en DAX usando la opción Modelado > Nueva tabla.
dim_calendar =
CALENDAR(
MIN(FIRSTDATE(fact_code[Date]),FIRSTDATE(dim_headcount[Date])),
MAX(LASTDATE(fact_code[Date]),LASTDATE(dim_headcount[Date]))
)
Este DAX crea una tabla que contiene todas las fechas entre la fecha mínima y máxima en fact_core o fact_headcount tabla. Con este enfoque, evitará la situación, cuando lleguen nuevas fechas, por ejemplo, dim_headcount tabla que no aparecerá en el fact_code y viceversa.
¡Nota importante! Asegúrese de seleccionar la nueva columna creada "Fecha" y cambie Tipo de Datetime a Date.
Aviso: para mostrar datos estoy usando el formato aaaa-mm-dd, pero puede cambiarlo como prefiera.
En la vista del modelo, conéctese:
Bono # 1: puede desactivar las fechas en fact_table y dim_headcount tabla haciendo clic en "ojo" junto a ellas. Recuerde usar siempre la columna Fecha de dim_calendar tabla. Desactivar la visibilidad de otras fechas le evita cometer errores. Estos cambios están marcados como azules en la captura de pantalla.
Bono # 2 - Antes del siguiente paso: Siempre creo una nueva tabla que contiene mis medidas en un solo lugar. Puede usar código para crear una tabla ficticia como esta:
DAX = ROW("DAX","DAX")
Consejo: Después de crear al menos una medida en esa tabla, puede hacer que esta columna "DAX" sea invisible como las fechas anteriores.
Captura de pantalla antes de crear medidas:
Total not avaliable Staff = COUNT(fact_code[Staff Number])
Headcount measure = SUM(dim_headcount[Headcount])
No es que no pueda hacer una medida con el nombre Headcount, porque ya tenemos una columna con ese nombre. Debe cambiar ese nombre en la tabla de origen o cambiar el nombre de una medida que satisfaga sus necesidades.
% of not available = DIVIDE([Total not avaliable Staff],[Headcount measure])
¡En esta medida no multiplicamos esto por 100! Si queremos porcentaje, solo estamos cambiando el formato. Puede cambiar el formato haciendo clic en la medida y haciendo clic en el icono de % o seleccionando Formato de porcentaje de la lista.
Cree una tabla y coloque allí las medidas que ha creado y una fecha de dim_calendar tabla.
Resultado final:
ARCHIVO PBIX: https://we.tl/t-yf6SecDkCD
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 |