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 moreGet certified in Microsoft Fabric—for free! For a limited time, get a free DP-600 exam voucher to use by the end of 2024. Register now
Hola @hsk ,
no estoy seguro de si entiendo correctamente ya que también hay un cuadro 😞 rojo
Sin embargo, estos son mis datos de muestra:
Creo tres medidas que permiten crear estos tres elementos visuales de tarjeta:
Estas son las medidas:
Top 1 de venta:
Top 1 sale =
var top1salserows =
SELECTCOLUMNS(
TOPN(
1
, ALLSELECTED( 'Sales Table' )
, 'Sales Table'[sales]
, DESC
)
, "top" , 'Sales Table'[sales]
)
return
top1salserows
2ª mejor venta:
Top 2 sale =
var top2salserows =
minx(
TOPN(
2
, ALLSELECTED( 'Sales Table' )
, 'Sales Table'[sales]
, DESC
)
, 'Sales Table'[sales]
)
return
top2salserows
Mejor venta anterior:
previous bestsale =
var top3sales =
SUMMARIZE(
TOPN( 3 , ALLSELECTED( 'Sales Table' ) , CALCULATE(SUM( 'Sales Table'[sales] ) ) , desc )
, 'Sales Table'[date]
, 'Sales Table'[sales]
)
var previousbestsales =
SELECTCOLUMNS(
OFFSET( -1, OFFSET( -1, top3sales , ORDERBY( [date] , desc ) , KEEP) , ORDERBY( [date] ) )
, "v" , [sales]
)
return
previousbestsales
¡Con suerte, esto proporciona lo que está buscando!
Saludos
Tom
¡Gracias! Tom
Esto resolvió el problema en gran medida.
Ahora hay que calcular las fechas correspondientes. No se puede obtener la "mejor fecha de venta anterior".
Hola @hsk ,
Aquí están las medidas para calcular las fechas.
Top 1 mejores fechas de ventas:
Top 1 sales date =
var top1salserows =
SELECTCOLUMNS(
TOPN(
1
, ALLSELECTED( 'Sales Table' )
, 'Sales Table'[sales]
, DESC
)
, "topdate" , 'Sales Table'[date]
)
return
top1salserows
Top 2 fecha de ventas:
Top 2 sales date =
var top2salserows =
SELECTCOLUMNS(
TOPN(
1
, TOPN(
2
, ALLSELECTED( 'Sales Table' )
, 'Sales Table'[sales]
, DESC
)
, 'Sales Table'[sales]
, ASC
)
, "date" , [date]
)
return
top2salserows
Mejor fecha de venta anterior:
previous bestsales date =
var top1salesdate =
SELECTCOLUMNS(
TOPN( 1 , ALLSELECTED( 'Sales Table' ) , CALCULATE(SUM( 'Sales Table'[sales] ) ) , desc )
, [date]
)
var prevSales =
SELECTCOLUMNS(
TOPN(
1
, filter(
allselected( 'sales table' )
, 'sales table'[date] < top1salesdate
)
, [sales]
, DESC
)
, "date" , [date]
)
return
prevSales
El informe ahora se ve así:
Con suerte, esto proporciona lo que está buscando.
Saludos
Tom
Muchas gracias Tom.
Hola @hsk ,
Si una o ambas publicaciones responden a tu pregunta, marca una o ambas publicaciones como respuesta. Esto ayudará a otros usuarios a encontrar una solución más rápidamente.
Saludos
Tom
De acuerdo.
Intentaré explicarlo con un ejemplo.
Lo que me interesa son los cuatro resultados en cajas azules.
Hola @hsk ,
El dominio de DAX comienza con una descripción clara de lo que desea lograr, lo que debe calcularse.
Esto: "... mejores ventas y mejores ventas anteriores ..."
No revela nada con respecto a los requisitos comerciales / reglas comerciales, siempre que proporcione más contexto, lo que define "mejor" y "mejor anterior".
Saludos
Tom
Starting December 3, join live sessions with database experts and the Fabric product team to learn just how easy it is to get started.
March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount! Early Bird pricing ends December 9th.