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

Learn from the best! Meet the four finalists headed to the FINALS of the Power BI Dataviz World Championships! Register now

Reply
Syndicate_Admin
Administrator
Administrator

Calcular las ventas del fin de semana en días laborables (día laborable más cercano del mes en curso)

Hola

Tengo una columna de ventas con las ventas diarias. Quiero mover las ventas del fin de semana al día hábil más cercano del mes en curso.

Por ejemplo:

Si las ventas de los sábados y domingos son en el mismo mes, las ventas deben agregarse a las ventas del viernes anterior.

Si las rebajas del 30 de noviembre son sábado, quiero que las rebajas se añadan al 29 de noviembre, que es viernes. Si las ventas del 1 de diciembre son en domingo, quiero que las ventas se agreguen al 2 de diciembre, que es el lunes. Por lo tanto, lo ideal es que las ventas de fin de semana se añadan al día laborable más cercano del mismo mes. Espero que quede claro.

Medida de ventas ajustada:

Ventas ajustadas =SUMX(VALUES('Date'[Date]), CALCULATE(
SUM('Ventas reales'[Ventas(MT)]),
TREATAS(VALUES('Date'[ClosestWorkingDay]),
'Ventas reales'[Date_Date])))

Shravan133_0-1733982680533.png

Resultado esperado en la tabla:

2/12/2024 = Ventas del 1º dic (domingo) + 2º dic (lunes)(169,49 + 6,85)

29/11/2024 = Ventas del 29 de noviembre (viernes) + 30 de noviembre (sábado) (102,87 + 32,87)

Las filas de fin de semana deben estar vacías y agregarse al día laborable más cercano.

Espero haber sido claro. Cualquier ayuda es muy apreciada.

6 REPLIES 6
Syndicate_Admin
Administrator
Administrator

Hola @Shravan133,

Gracias por ponerse en contacto con nosotros a través del foro de la comunidad de Microsoft Fabric.

En referencia a su consulta y la respuesta proporcionada por @Prathamesh_29, se adjunta la captura de pantalla y el archivo PBIX para ayudar a resolver el problema.

xy665423_0-1734034491568.png

Si encuentra útil esta publicación, le solicitamos amablemente que la marque como la solución y brinde felicitaciones para ayudar a otros miembros a localizarla fácilmente.

Saludos
Pavan

Syndicate_Admin
Administrator
Administrator

Hola @Shravan133 ,

Suponiendo que tiene una tabla de fechas y una tabla de ventas reales, ambas relacionadas, cree una nueva medida con el siguiente DAX:

AdjustedSalesMeasure = 
VAR vDate = SELECTEDVALUE('Date'[ClosestWorkingDay])
VAR IsWeekend = WEEKDAY(SELECTEDVALUE('Date'[Date]), 2) > 5  -- 6 is Saturday, 7 is Sunday

VAR total = 
    CALCULATE(
        SUM('Actual Sales'[Sales(MT)]),
        FILTER(
            ALLSELECTED('Date'),
            'Date'[ClosestWorkingDay] = vDate
        )
    )

RETURN
    IF(IsWeekend, BLANK(), total)

Ahora tu salida debería verse así:
Bibiano_Geraldo_0-1733998501135.png

Asegúrese de reemplazar los nombres de las columnas y tablas por los suyos propios.

@Bibiano_Geraldo , gracias por su solución. Funciona. ¿Pero no puedo hacer que el total se muestre en el objeto visual de la tabla?

Shravan133_0-1734044665911.png

Hola @Shravan133 ,

Esta es la medida actualizada:

AdjustedSalesMeasure = 
VAR vDate = SELECTEDVALUE('Date'[ClosestWorkingDay])
VAR IsWeekend = WEEKDAY(SELECTEDVALUE('Date'[Date]), 2) > 5  -- 6 is Saturday, 7 is Sunday

VAR total = 
    CALCULATE(
        SUM('Actual Sales'[Sales(MT)]),
        FILTER(
            ALLSELECTED('Date'),
            'Date'[ClosestWorkingDay] = vDate
        )
    )


RETURN
    IF(
        NOT ISINSCOPE('Date'[Date]),
        SUM('Actual Sales'[Sales (MT)]),
        IF(
            IsWeekend, 
            BLANK(), 
            total
        )
    )
Syndicate_Admin
Administrator
Administrator

Primera asignación No a la semana
DayOfWeek = WEEKDAY('Ventas'[Fecha], 2)

luego cambie el valor de sat ton vie y sunday a lun
2) DíaLaborable Más Cercano =
INTERRUPTOR(
VERDADERO(),
WEEKDAY('Ventas'[Fecha], 2) = 6, 'Ventas'[Fecha] - 1,
WEEKDAY('Ventas'[Fecha], 2) = 7, 'Ventas'[Fecha] + 1,
'Sales'[Date] -- Mantenga la fecha para los días de la semana
)
3) Ventas ajustadas =
SUMX(
FILTRO(
ALL('Ventas'),
'Sales'[ClosestWorkingDay] = ANTES('Ventas'[Fecha])
),
'Ventas'[Ventas]
)


Syndicate_Admin
Administrator
Administrator

Como siempre, proporcione una muestra de datos viables y no una imagen.

Helpful resources

Announcements
Join our Fabric User Panel

Join our Fabric User Panel

Share feedback directly with Fabric product managers, participate in targeted research studies and influence the Fabric roadmap.

February Power BI Update Carousel

Power BI Monthly Update - February 2026

Check out the February 2026 Power BI update to learn about new features.

FabCon Atlanta 2026 carousel

FabCon Atlanta 2026

Join us at FabCon Atlanta, March 16-20, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.