Forum Discussion
Compra recencia con DirectQuery
Hola a todos,
Estoy tratando de calcular la actualidad de compra por meses utilizando datos de Google BigQuery a través de DirectQuery.
Para ello, he creado esta medida:
Dónde
date_of_last_purchase = MAX(bc_order[order_created_date_time])
Puedo visualizar esto en una tabla de la siguiente manera:
Pero no puedo ver esto en un gráfico circular (ver más abajo) de modo que el pastel se divida en los diferentes contenedores de recencia, que es lo que quiero. En el gráfico circular, no puedo arrastrar la medida de actualidad a los Valores.
¿Tal vez necesitaría reescribir esta medida como una nueva columna? ¿Cómo lo haría? ¿O es otra cosa?
8 Replies
- Syndicate_AdminAdministrator
Para usarlo como una categoría en el visual, debe ser una columna calculada.
Dado que es una columna calculada, puede confiar en el contexto de la fila en lugar de tener que tomar un MAX.
recency = VAR daysDiff = DATEDIFF ( bc_order[order_created_date_time], TODAY (), DAY ) VAR res = SWITCH ( TRUE (), daysDiff <= 30, "R5", daysDiff <= 60, "R4", daysDiff <= 120, "R3", daysDiff <= 180, "R2", daysDiff <= 360, "R1", "R0" ) RETURN res- Syndicate_AdminAdministrator
Hay @AlexisOlson,
muchas gracias por su respuesta. Desafortunadamente, dice
OLE DB or ODBC error: [Expression.Error] We couldn't fold the expression to the data source. Please try a simpler expression.¿Debería más bien dividir esta expresión o hay una manera más simple? Lo siento si estas preguntas son tontas, todavía estoy muy al comienzo de aprender Power BI.
- Syndicate_AdminAdministrator
No es una pregunta tonta, diferentes fuentes de datos tienen diferentes limitaciones de DirectQuery. Lo probé con un DirectQuery a un servidor Sql Server y funcionó, pero BigQuery es aparentemente diferente.
Pruebe cada uno de estos para ver cuál es el factor de ruptura:
TodayFunction = TODAY ()DateDifference = DATEDIFF ( DATE ( 2021, 1, 1 ), DATE ( 2021, 10, 29 ), DAY )SwitchFunction = SWITCH ( TRUE (), bc_order[order_created_date_time] < DATE ( 2020, 1, 1 ), "Prev Years", bc_order[order_created_date_time] < DATE ( 2021, 1, 1 ), "2020", "2021" )
- Syndicate_AdminAdministrator
Hay @rgjiang ,
¿Podría compartirme con su archivo pbix después de eliminar datos confidenciales?
Saludos
Eyelyn Qin- Syndicate_AdminAdministrator
Hola Evelyn,
gracias por ofrecer su ayuda!
No estoy seguro de cómo lo haría porque no tengo permiso para importar los datos, y la importación de los datos también frustraría el propósito de usar DirectQuery de todos modos. Por lo tanto, el comportamiento sería diferente. DirectQuery, por otro lado, requiere un acceso mediante una clave privada. ¿O quiere decir que debo crear un duplicado estático y modificado?