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.
Teniendo en cuenta los siguientes datos de ejemplo, donde las primeras 4 columnas están en una tabla y se calcula la última columna (Cust_RecID_Count):
Cliente | RecID | SecID | PosID | Cust_RecID_Count |
A | 1 | 12 | 1 | 2 |
A | 1 | 15 | 1 | 2 |
A | 2 | 12 | 1 | 1 |
B | 2 | 17 | 1 | 3 |
B | 2 | 19 | 2 | 3 |
B | 2 | 55 | 1 | 3 |
B | 3 | 19 | 1 | 1 |
C | 1 | 52 | 1 | 1 |
¿Cómo calcularía Cust_RecID_Count, el recuento de filas para cada par Cliente/RecID? Los filtros que se puedan aplicar en la página del informe no deben afectar al valor. Cada vez que aparece Customer/RecID A/1, el resultado siempre debe ser 2. Para B/2 sería 3, y todos los demás son 1.
He estado usando Power BI durante un tiempo, pero no he hecho mucho con CALCULATE, me he estado arrancando el pelo tratando de hacerlo bien. ¿Comienza a preguntarse si una expresión CALCULATE es incluso el camino a seguir frente a un método completamente diferente, como la construcción dinámica de una tabla separada de Customer / RecID / Count? El rendimiento es bastante importante ya que mi tabla de origen tiene más de 12 millones de registros.
Solved! Go to Solution.
Puede filtrar la medida en lugar de la visual:
Cust_RecID_Count = IF(ISBLANK([Customer Count]), BLANK(), CALCULATE([Customer Count], ALLEXCEPT('Table', 'Table'[Customer], 'Table'[RecID ])) )
Si el rendimiento es importante, debe hacerlo como una medida, no como una columna.
Prueba esto:
Gracias por la solución. La buena noticia es que funciona perfectamente en base a lo que te dije, y pude hacer que funcionara en mis datos de producción. La mala noticia es que descubrí que hay otra tabla y relación involucrada, y cuando agrego eso hace un desastre de los resultados, agregando muchas filas que no deberían estar allí. Aunque puedo filtrar el visual para eliminar el "Recuento de clientes" en blanco que me parece un truco.
Agregué la tabla Clientes al modelo, relación, etc. Aquí están las capturas de pantalla, no estoy seguro de por qué no puedo cargar el archivo PBIX actualizado aquí ... Recibo un error "El tipo de archivo (.pbix) no es compatible".
@Believer Volver a cargar archivos .pbix: debe ser un superusuario para tener ese permiso, por lo que puede cargar en OneDrive y compartir el vínculo.
Puede filtrar la medida en lugar de la visual:
Cust_RecID_Count = IF(ISBLANK([Customer Count]), BLANK(), CALCULATE([Customer Count], ALLEXCEPT('Table', 'Table'[Customer], 'Table'[RecID ])) )
Si elimino "Cliente" (abreviatura) de la tabla, los recuentos son incorrectos. Entiendo que esto se debe a que eliminé "Cliente" del contexto de la fila, por lo que ahora estoy viendo el recuento de cada período de RecID. ¿Cómo puedo hacer que el cliente vuelva al contexto de la fila sin que se muestre? (Dada la relación entre las tablas, pensé que el contexto se habría visto afectado). Podría dejar la columna y establecer el ancho a cero, pero de nuevo eso se siente como un truco ...
¡Muchas gracias, una solución tan simple! Seguro que esta es también la respuesta a otra pregunta que he tenido abierta durante un tiempo sin respuestas...
Pensé que podría haber habido algo más extravagante en el trabajo aquí. Todavía estoy tratando de absorber el matiz de los filtros CALCULATE. Recientemente vi que los filtros de cálculo siempre son tablas (¡gracias SQLBI!) y pensé que de alguna manera esto estaba multiplicando la tabla de manera significativa (dadas todas las filas adicionales que aparecen) y que estaba usando el enfoque incorrecto.
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 |