Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Grow your Fabric skills and prepare for the DP-600 certification exam by completing the latest Microsoft Fabric challenge.

Reply
Syndicate_Admin
Administrator
Administrator

Ventas acumuladas basadas en el mes mínimo de un mes MAX

Estimado lector,

Tengo una pregunta confusa para ti. En primer lugar, permítanme darles un poco de contexto de datos:

CanalAñoMesVentas
Tienda2024-0110
Tienda2024-0211
Teléfono2024-025
Teléfono2024-0110
Teléfono2024-0220
Tienda web2023-1215
Tienda web2024-0130

Tengo una tabla de ventas que extrae sus datos de un servidor SQL. El problema es que no todos los canales están actualizados. La mayoría de las veces uno de los canales tiene 1 mes de retraso en los datos, en comparación con el resto.

Lo que quiero lograr es escribir una parte de la lógica de DAX, para filtrar automáticamente el mes MAX para una medida de ventas acumulativa, basada en el mes MIN de la selección filtrada.

Por ejemplo, la página del informe tiene una segmentación de datos para [Canal] y tengo seleccionado Teléfono, quiero que acumule las ventas hasta su mes máximo (2024-02).

Esto cambia cuando tengo varios [Canales] seleccionados, por ejemplo, cuando tengo seleccionado Teléfono Y tienda web (mes máximo = 2024-01), quiero que calcule las ventas acumuladas (para todos los canales filtrados) hasta el mes MÁXIMO del mes MIN = 2024-01.

Hasta ahora he creado una medida de indicador de nivel visual que hace lo que necesito. Pero preferiblemente quiero incluir la lógica necesaria en la medida [Ventas acumuladas]. Lamentablemente, todavía no he conseguido que eso funcione. ¿Algún consejo/idea?

Me gustaría saber de ti,

Daniel

5 REPLIES 5
Syndicate_Admin
Administrator
Administrator

@Foxxon28 Pruebe esto. PBIX se adjunta debajo de la firma:

Min Month Cumulative Sales = 
    VAR __Table = SUMMARIZE( 'Table', [Channel], "__MaxMonth", MAX( 'Table'[YearMonth] ) )
    VAR __MinMonth = MINX( __Table, [__MaxMonth] )
    VAR __Result = SUMX( FILTER( 'Table', [YearMonth] <= __MinMonth ), [Sales] )
RETURN
    __Result

@Greg_Deckler ¡Gracias por la rápida respuesta!

Sin embargo, esto no funciona en un gráfico de líneas, donde esperaría que culminara en enero, ya que seleccioné Webshop (que solo tiene datos hasta 2024-01).

Foxxon28_0-1713967839890.png

Sin embargo, el 55 es correcto, pero no debería mostrar el valor de febrero de 2024 aquí.

¿Alguna sugerencia?

¡Gracias!

@Foxxon28 Debería ser una solución fácil:

Min Month Cumulative Sales Line Chart = 
    VAR __Max = MAX( 'Table'[YearMonth] )
    VAR __Table = SUMMARIZE( 'Table', [Channel], "__MaxMonth", MAX( 'Table'[YearMonth] ) )
    VAR __MinMonth = MINX( __Table, [__MaxMonth] )
    VAR __Result = IF( __Max > __MinMonth, BLANK(), SUMX( FILTER( 'Table', [YearMonth] <= __MinMonth ), [Sales] ) )
RETURN
    __Result

@Greg_Deckler ¿Alguna idea de por qué no parece funcionar?

@Greg_Deckler Desafortunadamente, esto todavía no obtiene el resultado deseado.
La tarjeta ahora está en blanco y el gráfico de líneas:

- No se acumula

- Todavía muestra 2024-02, donde espero que se limite a 2024-01, ya que se selecciona Webshop.

Foxxon28_0-1714029660162.png

Helpful resources

Announcements
Europe Fabric Conference

Europe’s largest Microsoft Fabric Community Conference

Join the community in Stockholm for expert Microsoft Fabric learning including a very exciting keynote from Arun Ulag, Corporate Vice President, Azure Data.

RTI Forums Carousel3

New forum boards available in Real-Time Intelligence.

Ask questions in Eventhouse and KQL, Eventstream, and Reflex.

MayPowerBICarousel1

Power BI Monthly Update - May 2024

Check out the May 2024 Power BI update to learn about new features.

Top Kudoed Authors