Find everything you need to get certified on Fabric—skills challenges, live sessions, exam prep, role guidance, and more.
Get startedGrow your Fabric skills and prepare for the DP-600 certification exam by completing the latest Microsoft Fabric challenge.
Hola a todos,
Permítanme comenzar con una tabla de ejemplo:
Número de trabajo | Hora | Categoría |
150 | 0,25 | Con el tiempo |
300 | 0,065 | Con el tiempo |
500 | 0,3 | Con el tiempo |
580 | 1 | Con el tiempo |
150 | 1 | Con el tiempo |
300 | 0,25 | Con el tiempo |
912 | 0,1 | Con el tiempo |
300 | 0 | Sin tiempo |
Como se puede ver en la columna JobNumber tengo algunos valores repetidos, actualmente me interesa mantener la tabla de esta manera pero quiero hacer un gráfico circular que muestre el número de JobNumbers sin repetirse, si se repiten se debe sumar el tiempo para definir la categoría (mayor que 0 con tiempo y menor o igual a 0 sin tiempo).
He probado DISTINCTCOUNT para la columna JobNumber para los valores del gráfico circular y la columna Category para las categorías, pero no funciona, la suma de las dos categorías termina siendo mayor de lo que debería.
También intenté crear una tabla idéntica solo con esos valores, pero como tengo filtros basados en otra columna de esa misma tabla en el mismo panel, estos dejan de funcionar cuando cambio la fuente de datos a la nueva tabla para el gráfico circular.
Cualquier ayuda será bienvenida, muchas gracias de antemano.
Hola @v-huijiey-msft
Una vez más, ¡muchas gracias! Con esa función para la columna calculada, el gráfico circular funcionó perfectamente, reflejando los datos reales. 😘
Hola @GJE ,
No se puede clasificar por una base repetidamente y por otra base sin repetición. Solo se puede clasificar por una base al mismo tiempo.
Cree una medida:
Num = DISTINCTCOUNT('Table'[JobNumber])
Esto se clasifica según la categoría:
Esto se clasifica según el tiempo:
Esto se clasifica según JobNumber:
PBIX está conectado.
Si tiene más preguntas, no dude en ponerse en contacto conmigo.
Saludos
Yang
Equipo de apoyo a la comunidad
Si hay alguna publicación que ayude, considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.
Si no entiendo sus necesidades o aún tiene problemas al respecto, no dude en hacérnoslo saber. ¡Muchas gracias!
Hola @v-huijiey-msft ,
¡Gracias por tu respuesta!
Inicialmente esto es lo que busco, pero lo que no entiendo es por qué si agregas una tarjeta a la que agregas la métrica, el resultado es 5 en lugar de 6. ¿No debería obtener el mismo valor? Básicamente este es mi problema, pero con una tabla mucho más grande donde la diferencia se ve así:
¿Será que no estoy entendiendo cómo funciona DISTINCTCOUNT y el resultado es correcto?
Saludos.-
Hola @GJE ,
¿Por qué el resultado de la carta debe ser 6?
Como se muestra en los datos de muestra, hay 5 datos "150 500 300 580 912". Arrastre Num al objeto visual de la tarjeta y el resultado será 5.
Si desea obtener más información sobre DISTINCTCOUNT, consulte:
Función DISTINCTCOUNT (DAX) - DAX | Microsoft Learn
Si tiene más preguntas, no dude en ponerse en contacto conmigo.
Saludos
Yang
Equipo de apoyo a la comunidad
Si hay alguna publicación que ayude, considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.
Si no entiendo sus necesidades o aún tiene problemas al respecto, no dude en hacérnoslo saber. ¡Muchas gracias!
Hola @v-huijiey-msft
bien, ahora lo entiendo.
Una última pregunta: ¿podría hacer que el gráfico circular sea un recuento distinto pero generar la categoría dinámicamente en función de la suma de tiempo? Es decir, si tengo 3 filas de JobNumber 300, sumo sus tiempos y los clasifíquelos en función de ese resultado.
Muchas gracias de nuevo.
Hola @GJE ,
¿Así?
¿Intentar colocar los campos así?
Si tiene más preguntas, no dude en ponerse en contacto conmigo.
Saludos
Yang
Equipo de apoyo a la comunidad
Si hay alguna publicación que ayude, considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.
Si no entiendo sus necesidades o aún tiene problemas al respecto, no dude en hacérnoslo saber. ¡Muchas gracias!
Hola @v-huijiey-msft
Para este caso en particular, el resultado solo debe ser "Con tiempo", ya que la suma de Tiempo para el JobNumber 300 diferente es mayor que 0.
Por ejemplo, si tuviéramos varios registros del mismo número de trabajo y todos con tiempo 0, la suma sería 0 y por lo tanto se mostraría bajo la categoría "Sin tiempo".
Espero haber aportado un poco más de claridad a mi problema.
Hola @GJE ,
Modifique la sintaxis de la medida de la siguiente manera:
Num = IF(MAX('Table'[Time]) <> 0, DISTINCTCOUNT('Table'[JobNumber]),0)
El efecto de página es el siguiente:
Si tiene más preguntas, no dude en ponerse en contacto conmigo.
Saludos
Yang
Equipo de apoyo a la comunidad
Si hay alguna publicación que ayude, considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.
Si no entiendo sus necesidades o aún tiene problemas al respecto, no dude en hacérnoslo saber. ¡Muchas gracias!
Hola @v-huijiey-msft
¡Gracias de nuevo!
Me pasa lo siguiente y pido disculpas por no mencionarlo antes, la columna Categoría es una columna condicional cuya función es la siguiente:
TimeCategory = IF(DETAILOTS[TotalTheoreticalTimeHours] > 0, "Con tiempos teóricos", "Sin tiempos teóricos")
Al aplicar el cambio que ha mencionado, los datos del gráfico circular no se ajustan completamente. ¿Se debe a esta columna condicional?
Saludos.-
Hola @GJE ,
Estos son los datos de origen modificados:
Número de trabajo |
TotalTheoreticalTimeHours |
150 |
25 |
300 |
65 |
500 |
3 |
580 |
1 |
150 |
1 |
300 |
25 |
912 |
1 |
300 |
0 |
De acuerdo con la clasificación temporal de cada número de trabajo, si la suma del tiempo de un mismo número de trabajo es >0, es con tiempos teóricos, de lo contrario es sin tiempos teóricos.
Cree una columna calculada:
TimeCategory =
VAR_IF =
SUMX (
FILTER (
ALL ( 'DETAILOTS' ),
'DETAILOTS'[JobNumber] = EARLIER ( 'DETAILOTS'[JobNumber] )
),
[TotalTheoreticalTimeHours]
)
RETURN
IF ( _IF >= 0, "With theoretical times", "Without theoretical times" )
Cree una medida para contar:
Num = DISTINCTCOUNT('DETAILOTS'[JobNumber])
El efecto de la página del gráfico circular es el siguiente:
Se adjunta el archivo PBIX.
Si tiene más preguntas, no dude en ponerse en contacto conmigo.
Saludos
Yang
Equipo de apoyo a la comunidad
Si hay alguna publicación que ayude, considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.
Si no entiendo sus necesidades o aún tiene problemas al respecto, no dude en hacérnoslo saber. ¡Muchas gracias!
Join the community in Stockholm for expert Microsoft Fabric learning including a very exciting keynote from Arun Ulag, Corporate Vice President, Azure Data.
Ask questions in Eventhouse and KQL, Eventstream, and Reflex.
User | Count |
---|---|
3 | |
1 | |
1 | |
1 | |
1 |