Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.
Hola
Estoy tratando de crear una matriz usando dos tablas:
Cuota de cuentas:
ID de cuenta | ID de usuario | Cuota |
1 | 1 | 10 |
2 | 2 | 20 |
Crédito:
ID de cuenta | ID de usuario | Crédito |
1 | 1 | 30 |
1 | 3 | 10 |
2 | 2 | 20 |
Estas tablas tienen una relación de uno a varios mediante el identificador de cuenta
Obtengo la siguiente matriz después de aplicar medidas dax:
ID de cuenta | ID de usuario | Cuota | Crédito |
1 | 1 | 10 | 30 |
1 | 3 | 10 | 10 |
2 | 2 | 20 | 20 |
Quiero mostrar la matriz así:
ID de cuenta | ID de usuario | Cuota | Crédito |
1 | 1 | 10 | 30 |
1 | 3 | 10 | |
2 | 2 | 20 | 20 |
Como puede ver, el usuario 3 no tiene una cuota para la cuenta 1, pero sigue mostrando el valor de la cuota. La cuota replica el valor para todos los usuarios de una cuenta, incluso si el usuario no tiene una. ¿Cómo puedo mostrar que el resultado es como mi tabla de resultados?
Esta es la medida dax que estoy usando para la cuota:
@rkaushik Te recomiendo que combines tus 2 tablas en Power Query de esta manera:
let
Source = Table.NestedJoin(#"Accounts Quota", {"Account id"}, Credit, {"Account id"}, "Credit", JoinKind.LeftOuter),
#"Expanded Credit" = Table.ExpandTableColumn(Source, "Credit", {"Credit"}, {"Credit.Credit"})
in
#"Expanded Credit"
Hola @Greg_Deckler gracias por tu ayuda.
Esto me ayudó, pero noté otro problema. Si en la tabla de créditos, la cuenta existe pero el usuario no existe, entonces no muestra la cuenta por completo. Por ejemplo
Tabla de cuotas de cuentas:
cuenta | usuario | cuota |
3 | 4 | 50 |
Tabla de créditos:
ID de cuenta | ID de usuario | crédito |
3 |
Entonces no veo la cuenta 3 en absoluto en mi matriz de resultados. ¿Sabrías cómo puedo arreglar eso? Todavía me gustaría ver:
ID de cuenta | ID de usuario | cuota | crédito |
3 | 4 | 50 |
@rkaushik Ver PBIX adjunto debajo de la firma.
Quota Measure =
VAR __Account = MAX('Credit'[Account id])
VAR __User = MAX('Credit'[User id])
VAR __Result = MAXX(FILTER('Accounts Quota', [Account id] = __Account && [User id] = __User), [Quota])
RETURN
__Result