Starting December 3, join live sessions with database experts and the Microsoft product team to learn just how easy it is to get started
Learn moreShape the future of the Fabric Community! Your insights matter. That’s why we created a quick survey to learn about your experience finding answers to technical questions. Take survey.
Hola
Estoy intentando calcular un parámetro llamado Performance. En la Tabla A, tenemos una columna Tasa de retorno total y Fecha. y por separado, TableClients
La ecuación es:
Performance(en un día determinado) = (TotalReturnRate(en un día determinado) / TotalReturnRate(en el inicio del cliente))-1
Quería tener el rendimiento como una columna calculada, pero estoy usando el modo DirectQuery, por lo que necesito usar medidas (ya que TRT en la fecha de inicio del cliente usa CALCULATE, que no está permitido para las columnas personalizadas en el modo DQ).
El problema es que TotalReturnRate (en un día determinado) no es estático, pero TRT en la fecha de inicio de un cliente seleccionado sí lo es.
Como tengo que usar una medida, no puedo usar la columna Fact.TableA[TotalReturnRate] como está en la medida que calcula el rendimiento.
Estoy buscando una manera de tener una medida, comportarme como una columna normal.
¿Alguien puede ayudar con esto, por favor?
Gracias
PBIAnonUsuario
Dado que TableA[TotalReturnRate] no es estático, sino que se mostrará dinámicamente como la interacción del usuario con él, por lo que no podemos crear una columna calculada para lograrlo. Como el valor de una columna calculada se calcula durante la actualización de datos y utiliza la fila actual como contexto, y no depende de la interacción del usuario en el informe. Puede crear una medida para mostrar los datos de forma dinámica basándose en las interacciones del usuario. Por favor revise los siguientes enlaces para obtener más detalles sobre la diferencia entre la columna calculada y la medida. Cualquier comentario o problema, por favor siéntase libre de hacérmelo saber.
Columnas y medidas calculadas en DAX
Columnas calculadas vs Medidas
Con el fin de darle una solución adecuada, ¿podría proporcionar algunos datos de muestra en sus tablas (excluir datos confidenciales) con formato de texto y su resultado esperado con lógica de backend y ejemplos especiales? Es mejor si puede compartir un archivo pbix simplificado. Gracias.
Saludos
Hola
Gracias por tomarse el tiempo para revisar esto. He agregado una tabla de resultados esperados para el índice y el cliente seleccionados. Desafortunadamente, no puedo encontrar la opción de subir un archivo a la comunidad (¿mencionó en otro hilo que esto podría ser porque soy relativamente nuevo?).
de todos modos, copiaré y pegaré las tablas de releavant en una respuesta debajo de esto.
Mesas:
Hecho.A
IndexKey | Clave de fecha | IndexCode | Fecha | TotalReturnRate |
1 | 20200101 | I1 | 01/01/2020 | 8 |
1 | 20200102 | I1 | 02/01/2020 | 9 |
1 | 20200103 | I1 | 03/01/2020 | 13 |
1 | 20200104 | I1 | 04/01/2020 | 14 |
1 | 20200105 | I1 | 05/01/2020 | 14 |
2 | 20200101 | I2 | 01/01/2020 | 6 |
2 | 20200102 | I2 | 02/01/2020 | 9 |
2 | 20200103 | I2 | 03/01/2020 | 11 |
2 | 20200104 | I2 | 04/01/2020 | 12 |
2 | 20200105 | I2 | 05/01/2020 | 12 |
3 | 20200101 | I3 | 01/01/2020 | 7 |
3 | 20200102 | I3 | 02/01/2020 | 8 |
3 | 20200103 | I3 | 03/01/2020 | 10 |
3 | 20200104 | I3 | 04/01/2020 | 12 |
3 | 20200105 | I3 | 05/01/2020 | 12 |
4 | 20200101 | I4 | 01/01/2020 | 9 |
4 | 20200102 | I4 | 02/01/2020 | 11 |
4 | 20200103 | I4 | 03/01/2020 | 12 |
4 | 20200104 | I4 | 04/01/2020 | 11 |
4 | 20200105 | I4 | 05/01/2020 | 9 |
5 | 20200101 | I5 | 01/01/2020 | 8 |
5 | 20200102 | I5 | 02/01/2020 | 9 |
5 | 20200103 | I5 | 03/01/2020 | 13 |
5 | 20200104 | I5 | 04/01/2020 | 11 |
5 | 20200105 | I5 | 05/01/2020 | 11 |
Dim.Clients
ClientKey | Código de cliente | ClientStartDate | Clave de fecha |
1 | C1 | 04/01/2020 | 20200101 |
2 | C2 | 05/01/2020 | 20200102 |
3 | C3 | 03/01/2020 | 20200103 |
4 | C4 | 01/01/2020 | 20200104 |
5 | C5 | 02/01/2020 | 20200105 |
Dim.Index
IndexKey | IndexCode |
1 | I1 |
2 | I2 |
3 | I3 |
4 | I4 |
5 | I5 |
Dim.Date
Clave de fecha | Fecha |
20200101 | 01/01/2020 |
20200102 | 02/01/2020 |
20200103 | 03/01/2020 |
20200104 | 04/01/2020 |
20200105 | 05/01/2020 |
Creé un archivo pbix de muestra (ver archivo adjunto) para usted, verifique si eso es lo que desea. Puede crear una medida como se muestra a continuación:
Performance =
VAR _selddatekey =
SELECTEDVALUE ( 'Date'[Datekey] )
VAR _selAdatekey =
SELECTEDVALUE ( 'A'[Datekey] )
VAR _selindexcode =
SELECTEDVALUE ( 'A'[IndexCode] )
VAR _returnrate =
CALCULATE (
MAX ( 'A'[TotalReturnRate] ),
FILTER (
ALLSELECTED ( 'A' ),
'A'[IndexCode] = _selindexcode
&& 'A'[Datekey] = _selddatekey
)
)
RETURN
DIVIDE ( SUM('A'[TotalReturnRate]), _returnrate ) - 1
Saludos
Hola
Esto está cerca de lo que quiero. No quiero seleccionar una fecha en la segmentación de datos. Solo quiero seleccionar un cliente, un índice, y que la medida muestre rendimientos para todas las fechas.
Si es posible, me gustaría que la actuación se realizara para todas las fechas sin tener una fecha / clave de fecha seleccionada (o, si se debe seleccionar una fecha, mostrar las actuaciones para las fechas hasta la fecha seleccionada).
Planeo trazar Performance contra 'FactA' [Fecha]. He adjuntado una imagen de ejemplo de lo que estoy buscando como resultado.
Resultados esperados:
Ejemplo | Cliente 1: Inicio = 20200104 | |||
IndexCode | DateKey | TotalReturnRate | TotalReturnRateClientStart | Rendimiento |
I1 | 20200101 | 8 | 14 | -0.428571429 |
I1 | 20200102 | 9 | 14 | -0.357142857 |
I1 | 20200103 | 13 | 14 | -0.071428571 |
I1 | 20200104 | 14 | 14 | 0 |
I1 | 20200105 | 14 | 14 | 0 |