Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

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.

Reply
laracenac
Frequent Visitor

Medida Cálculo de porcentaje con valores unicos

Hola Comunidad, 

 

Es mi primer post probando ayuda en este portal.

Les comento, quisiera calcular como medida el % entre las primeras 2 columnas, pero con la siguiente particularidad:

 

laracenac_0-1660752395772.png

Ejemplo:

 

[%] Total Name 2 - 2018:

(168+384)/2196

 

Como ven, para el Name 2, necesito consolidar el total de horas pero sobre un valor unico que serían sus horas planificadas las cuales se van repitiendo a medida que se va teniendo el tipo de Ausencia en la columna Att/abs. type text

Entendiendo que después podré abrir dicho porcentaje en la visualización por la cuarta columna (Att/abs. type text), me gustaría tenerlo como una medida en donde pueda seleccionar por año también.

 

Saludos!

1 ACCEPTED SOLUTION
PaulDBrown
Community Champion
Community Champion

Muchas gracias por la muestra y explicación. Para empezar, he creado tablas de dimension para Trabajador, Año, y tipo de ausencia. El modelo queda así:

model.png

 Para las horas ausentes, la medida es una simple suma:

Sum Abs/attendance = 
SUM(FTable[Abs./attendance hours])

Para las horas planificadas la medida es algo más compleja. Hay que hacer el promedio por trabjador y año, y luego la suma de este valor. Esto permite que el cálculo refleje las horas tanto a nivel trabajador como total por año. La medida es la siguiente:

Planned Hours por trabajador =
SUMX (
    SUMMARIZE ( FTable, 'Dim Año'[dAño], 'Dim Trabajador'[dID Trabajador] ),
    CALCULATE ( AVERAGE ( FTable[Planned hours] ) )
)

Finalmente, el % es una simple división:

% Abs/Attendance = 
DIVIDE([Sum Abs/attendance], [Planned Hours por trabajador])

y este es el resultado:

Final.gif

Te adjunto el archivo PBIX de muestra





Did I answer your question? Mark my post as a solution!
In doing so, you are also helping me. Thank you!

Proud to be a Super User!
Paul on Linkedin.






View solution in original post

5 REPLIES 5
PaulDBrown
Community Champion
Community Champion

Muchas gracias por la muestra y explicación. Para empezar, he creado tablas de dimension para Trabajador, Año, y tipo de ausencia. El modelo queda así:

model.png

 Para las horas ausentes, la medida es una simple suma:

Sum Abs/attendance = 
SUM(FTable[Abs./attendance hours])

Para las horas planificadas la medida es algo más compleja. Hay que hacer el promedio por trabjador y año, y luego la suma de este valor. Esto permite que el cálculo refleje las horas tanto a nivel trabajador como total por año. La medida es la siguiente:

Planned Hours por trabajador =
SUMX (
    SUMMARIZE ( FTable, 'Dim Año'[dAño], 'Dim Trabajador'[dID Trabajador] ),
    CALCULATE ( AVERAGE ( FTable[Planned hours] ) )
)

Finalmente, el % es una simple división:

% Abs/Attendance = 
DIVIDE([Sum Abs/attendance], [Planned Hours por trabajador])

y este es el resultado:

Final.gif

Te adjunto el archivo PBIX de muestra





Did I answer your question? Mark my post as a solution!
In doing so, you are also helping me. Thank you!

Proud to be a Super User!
Paul on Linkedin.






Muy agradecido por tu ayuda.

 

Me queda solamente una duda,

Son necesarias las 3 tablas de dimensión? o puedo usar la formula solamente con la tabla "FTable"?

 

Saludos!

Se puede hacer sin tablas de dimensión. Sin embargo es recomendable (mejores prácticas en PBI) usar tablas de dimensión. 





Did I answer your question? Mark my post as a solution!
In doing so, you are also helping me. Thank you!

Proud to be a Super User!
Paul on Linkedin.






PaulDBrown
Community Champion
Community Champion

Puedes por favor publicar una muestra de datos (no confidenciales) o un PBIX para poder trabajarlo?

Por cierto, las 2196 horas son constantes o variables?





Did I answer your question? Mark my post as a solution!
In doing so, you are also helping me. Thank you!

Proud to be a Super User!
Paul on Linkedin.






Hola!

 

Muchas gracias por responderme! te adjunto el mismo Excel de la imagen y te doy un poco de Contexto sobre los nombres de las columnas y las nuevas añadidas:

 

Abs./attendance hours: Horas ausentes de un trabajador en el año por algun tipo de ausencia.

Planned hours: Horas planificadas para un trabajador en el año.

Name of employee or applicant: Nombre Trabajdor.

Att./abs. type text: Tipo de Ausencia.

Año: Año.

ID Trabajador: ID Trabajdor.

laracenac_0-1660764334131.png

Respondiendo a tu duda, las horas planificadas son para cada trabajador en el año constantes, por ejemplo, en la imagen el trabajador "Name 1", en el 2018, tiene 60 horas ausentes de 2184 horas planificadas por Ausencia del tipo "Annual Leave".

En cambio, el trabajador "Name 2", en el 2018, tiene 168 horas ausentes de 2196 horas planificadas por Ausencia del tipo "Annual Leave" y tiene 384 horas ausentes de 2196 horas planificadas por Ausencia del tipo "Sick Leave".

 

Lo que yo quisiera saber, es el % sobre horas ausentas / horas planificadas en el año por cada trabajador y luego podré obtener el mismo % pero por tipo de Ausencia.

 

Acá la Data de muestra:

 

Abs./attendance hoursPlanned hoursName of employee or applicantAtt./abs. type textAñoID Trabajador
602184Name 1Annual Leave20181
1682196Name 2Annual Leave20182
3842196Name 2Sick Leave20182
2362180Name 3Annual Leave20183
682228Name 4Annual Leave20184
5882228Name 4Sick Leave20184
602196Name 5Sick Leave20185
122196Name 5Paid Absence20185
1842164Name 6Annual Leave20186
1802196Name 7Annual Leave20187
1202092Name 8Annual Leave20188
1042204Name 9Annual Leave20189
1842184Name 1Ds2820191
1802196Name 2Annual Leave20192
1202196Name 2Sick Leave20192
1042180Name 3Annual Leave20193
2362228Name 4DS2820194
682228Name 4Sick Leave20194
5882196Name 5Sick Leave20195
602196Name 5Paid Absence20195
2362164Name 6Annual Leave20196
682196Name 7Annual Leave20197
5882092Name 8DS2820198
602204Name 9Annual Leave20199

 

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

Find out what's new and trending in the Fabric Community.