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
Syndicate_Admin
Administrator
Administrator

Contar subconjuntos de filas

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.

1 ACCEPTED SOLUTION

@Believer

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 ])) )

View solution in original post

6 REPLIES 6
Syndicate_Admin
Administrator
Administrator

@Believer

Si el rendimiento es importante, debe hacerlo como una medida, no como una columna.

Prueba esto:

Cust_RecID_Count = CALCULATE([Customer Count], ALLEXCEPT('Table', 'Table'[Customer], 'Table'[RecID ]))

AllisonKennedy_0-1634357369107.png

@AllisonKennedy ,

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_0-1634572604548.png

Believer_1-1634572623628.png

@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.

@Believer

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 ])) )

@AllisonKennedy ,

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 ...

Believer_2-1634651836263.png

@AllisonKennedy

¡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.

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.