Forum Discussion
Calucate Row con Matrix
Hola
Tengo que crear una tabla/matriz que tenga columnas por mes y un valor que cuente el número de ID. Cada fila tiene su propia lógica que he intentado mostrar en el ejemplo de tabla siguiente.
Pero no estoy seguro de cómo hacer esto. Estaba buscando el uso de medidas, pero a mis muy pocos medidas de conocimiento de BI sólo devuelven un valor, no una lista ? Así que estoy un poco fuera de una pérdida.
Espero que he dado suficiente detalle a mi problema y cualquier ayuda será muy apreciado.
| Lógica de fila | Nombre de la fila | Enero | resto de meses ... |
| Recuento de suscripciones con fecha de inicio en el mes en el que Estado de la suscripción: actual y Empresa B Y Fecha de unión en el mes | B inceptions - número de empresas | ||
| Recuento de miembros con fecha de inicio en el mes en el que Estado de la suscripción: actual y Empresa B Y Fecha de unión en el mes | B inceptions - número de miembros | ||
| Suma (B Premium) + Suma (Una Suscripción) DONDE Fecha de Inicio en Mes | Prima incorporada - total (premium B y suscripción A | ||
| Suma (suscripción B) | prima con cetro - Prima B | ||
| Suma (una suscripción) | Premium incepted - Una suscripción |
Hola @nicole1995 ,
Podemos utilizar los siguientes pasos para cumplir con sus requisitos:
- Cree cinco medidas que cumplan con la lógica de fila.
A subscription = CALCULATE(SUM(SubHeader[Subscription]),FILTER(SubHeader,SubHeader[Company]="A"))B inceptions - number of corporate = CALCULATE(COUNT(SubHeader[Subscription]),FILTER(SubHeader,SubHeader[SubStatus]="Current"&&SubHeader[Company]="B"))B inceptions - number of members = CALCULATE(COUNT(SubHeader[Members]),FILTER(SubHeader,SubHeader[SubStatus]="Current"&&SubHeader[Company]="B"))B premium = CALCULATE(SUM(SubHeader[Premium]),FILTER(SubHeader,SubHeader[Company]="B"))Incepted premium - total (B premium and A subscription) = [B premium] + [A subscription]- A continuación, podemos usar Introducir fecha para crear una nueva tabla que tenga una columna basada en el nombre de las medidas.
- Cree una medida en una tabla nueva,
Row Measure = SUMX( VALUES('Table'[Row]), SWITCH( 'Table'[Row], "A subscription",[A subscription], "B premium",'SubHeader'[B premium], "Incepted premium - total (B premium and A subscription)",'SubHeader'[Incepted premium - total (B premium and A subscription)], "B inceptions - number of corporate",'SubHeader'[B inceptions - number of corporate], "B inceptions - number of members",[B inceptions - number of members]))- Por fin podemos poner la tabla[fila] en la fila y la tabla [Medida de fila] en el valor.
Podemos obtener el resultado de esta manera,
Si no cumple con su requisito, ¿podría mostrar el resultado exacto esperado basado en la tabla que hemos compartido?
Saludos
3 Replies
- amitchandakSuper User
¿Se puede hacer esto usando la medida en la fila?
Hay una propiedad Mostrar en filas. Eso puede hacer
- nicole1995Frequent Visitor
He intentado crear una medida básica que una de mis filas usaría y obtengo esto -
después de mirar en Google sugirió utilizar la fórmula, pero para crear una tabla por lo que hice eso, pero una vez que agrego más de una tabla a la matriz pierde la estructura que necesito
- v-lid-msftCommunity Support
Hola @nicole1995 ,
Podemos utilizar los siguientes pasos para cumplir con sus requisitos:
- Cree cinco medidas que cumplan con la lógica de fila.
A subscription = CALCULATE(SUM(SubHeader[Subscription]),FILTER(SubHeader,SubHeader[Company]="A"))B inceptions - number of corporate = CALCULATE(COUNT(SubHeader[Subscription]),FILTER(SubHeader,SubHeader[SubStatus]="Current"&&SubHeader[Company]="B"))B inceptions - number of members = CALCULATE(COUNT(SubHeader[Members]),FILTER(SubHeader,SubHeader[SubStatus]="Current"&&SubHeader[Company]="B"))B premium = CALCULATE(SUM(SubHeader[Premium]),FILTER(SubHeader,SubHeader[Company]="B"))Incepted premium - total (B premium and A subscription) = [B premium] + [A subscription]- A continuación, podemos usar Introducir fecha para crear una nueva tabla que tenga una columna basada en el nombre de las medidas.
- Cree una medida en una tabla nueva,
Row Measure = SUMX( VALUES('Table'[Row]), SWITCH( 'Table'[Row], "A subscription",[A subscription], "B premium",'SubHeader'[B premium], "Incepted premium - total (B premium and A subscription)",'SubHeader'[Incepted premium - total (B premium and A subscription)], "B inceptions - number of corporate",'SubHeader'[B inceptions - number of corporate], "B inceptions - number of members",[B inceptions - number of members]))- Por fin podemos poner la tabla[fila] en la fila y la tabla [Medida de fila] en el valor.
Podemos obtener el resultado de esta manera,
Si no cumple con su requisito, ¿podría mostrar el resultado exacto esperado basado en la tabla que hemos compartido?
Saludos