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

Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.

Reply
Syndicate_Admin
Administrator
Administrator

Contar líneas en la tabla Historial y sumar con la tabla actual

Hola

Tengo 2 tablas de hechos en mi modelo. fact1 que tiene una línea por uniqueid para un proyecto y fact2 que tiene una línea por cambio de fase en cada proyecto, por lo que el historial del proyecto. Se ven como se muestra a continuación y están conectados por una relación inactiva en el identificador de proyecto único (1 a muchos) como las relaciones activas son a todas las tablas de dimensiones compartidas entre ellos.

Me gustaría contar cuántas comprobaciones hay por ID de proyecto único en la tabla de historial de fact2 y traerlo de vuelta como un recuento en la tabla de hechos 1 como se muestra a continuación.

Por el momento he creado una tabla resumida que filtra en la tabla de historial donde el estado de comprobación no está en blanco, luego cuenta las filas y lo suma contra los projectuniqueids. Creo que vincule esta tabla a la tabla fact1 y busque el valor usando related().

Me pregunto si hay una función dax que pueda hacer todo esto de una sola vez para no tener tablas resumidas duplicadas en el modelo.

Intenté crear la tabla calculada como una variable, pero luego no puedo averiguar cómo acceder a una columna en una variable de tabla en el dax

Gracias

fact1project

ProjectuniqeidFecha de inicioFecha de finalización

Recuentos totales de cheques

Conteo de cheques externos

Recuento de cheques internos

1 211
2 220
3

Fatct2projecthistory

ProjecthistoryuniqiueidProjectuniqueidProjectTransitionIDProjectcheckingstatus
A11Comprobación externa
B12Comprobación interna
C13
D21Comprobación externa
E23
F24Comprobación externa
2 REPLIES 2
Syndicate_Admin
Administrator
Administrator

Gracias @123abc exactamente lo que necesitaba

Syndicate_Admin
Administrator
Administrator

Para lograr esto en Power BI con DAX, puede crear una columna calculada en la tabla "fact1project" que cuente el número de comprobaciones de la tabla "fact2projecthistory" para cada identificador de proyecto único. Puede utilizar las funciones SUMX y FILTER para realizar este cálculo. Esta es la fórmula de DAX para crear la columna calculada:

''DAX
Recuentos totales de cheques =
VAR ProjectUniqueID = 'fact1project'[Projectuniqueid]
DEVOLUCIÓN
COUNTROWS(
FILTRO(
'fact2projecthistory',
'fact2projecthistory'[Projectuniqueid] = ProjectUniqueID
&& NOT ISBLANK('fact2projecthistory'[Projectcheckingstatus])
)
)
```

Esta fórmula hace lo siguiente:

1. Primero captura el ID único del proyecto actual en la variable 'ProjectUniqueID'.

2. Luego, utiliza la función 'FILTER' para filtrar la tabla "fact2projecthistory" para las filas donde el ID único del proyecto coincide con el proyecto actual (''fact2projecthistory'[Projectuniqueid] = ProjectUniqueID') y donde el estado de verificación no está en blanco ('NOT ISBLANK('fact2projecthistory'[Projectcheckingstatus])').

3. Finalmente, cuenta las filas devueltas por la función 'FILTER' usando 'COUNTROWS', que le da los recuentos totales de verificación para el proyecto.

Después de crear esta columna calculada en la tabla "fact1project", puede usarla en sus imágenes para mostrar los recuentos totales de cheques para cada proyecto. De esta manera, no necesitará tablas resumidas duplicadas, y el cálculo se realizará sobre la marcha en función de las relaciones de su modelo de datos.

Helpful resources

Announcements
PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

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