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

Be one of the first to start using Fabric Databases. View on-demand sessions with database experts and the Microsoft product team to learn just how easy it is to get started. Watch now

Reply
Syndicate_Admin
Administrator
Administrator

Porcentaje total acumulado basado en el día

Hola, necesito obtener una columna de medida/calculada que haga lo siguiente.

Estos son los valores:

Lunes = .09, también conocido como 9%

Martes = .11

Miércoles = .12

Jueves = .13

Viernes = .18

Sábado = .19

Domingo = .18

Esto suma el 100%

Digamos que mi promoción comienza un miércoles, primero tengo que comenzar con el 12%, luego agregar el 13%, etc. hasta el martes, que sería el último 11%. Luego, cuando llegue el miércoles de nuevo, necesito reiniciar ese total acumulado. Si una promoción comienza un viernes, entonces el primer número debe ser el 18% y luego etc. hasta el jueves. Avísame si necesitas otra información también. Estoy atascado en este punto y busco ayuda.

5 REPLIES 5
Syndicate_Admin
Administrator
Administrator

Hola @Brady-Linnebur Crea una medida para esto a continuación

RunningTotalPercentage =
VAR StartDay = SELECTEDVALUE('Promotions'[StartDay])
VAR DayIndex = WEEKDAY(StartDay, 2) // 2 = La semana comienza el lunes
Días VAR = {0.09, 0.11, 0.12, 0.13, 0.18, 0.19, 0.18}
VAR TotalDays = COUNTROWS(Días)
VAR DayList = GENERATESERIES(1, TotalDays)

DEVOLUCIÓN
SUMX(
DayList,
VAR CurrentIndex = DayIndex + [Valor] - 1
VAR AdjustedIndex = IF(CurrentIndex > TotalDays, CurrentIndex - TotalDays, CurrentIndex)
Días de REGRESO[Índice ajustado]
)

Cámbielo por los nombres de tabla y columna requeridos.

El cálculo anterior funciona de manera que el total acumulado se calculará en este orden, y cuando llegue el miércoles nuevamente, se reiniciará desde 0.12.

¿He respondido a tu pregunta? ¡Marca mi publicación como una solución! ¡Esto ayudará a otros en el foro!
¡Agradezco sus felicitaciones!

Esto no resolvió mi problema. Esto, en cambio, solo repetía el número 28 constantemente. No estoy seguro de si se restablece por completo, ya que creo que los está sumando a todos.

Hola @Brady-Linnebur ,

Puede consultar mi archivo de prueba para obtener más detalles. Aquí empiezo mi semana el miércoles, puedes cambiar la parte _SELECTSTART en mi código para cambiar el día de inicio.

DimDate = 
ADDCOLUMNS (
    CALENDAR ( DATE ( 2024, 01, 01 ), DATE ( 2024, 12, 31 ) ),
    "Year", YEAR ( [Date] ),
    "Month", MONTH ( [Date] ),
    "MonthName", FORMAT ( [Date], "MMMM" ),
    "WeekDay", WEEKDAY ( [Date], 2 ),
    "WeekDayName", FORMAT ( [Date], "DDDD" )
)
FY Week Start = 
VAR _SELECTSTART = 3
RETURN
IF(DimDate[WeekDay]>=3, DimDate[Date] - [WeekDay] +_SELECTSTART, DimDate[Date] - [WeekDay] - _SELECTSTART - 1)
FY WeekDay = 
VAR _SELECTSTART = 3
RETURN
IF(DimDate[WeekDay]>=_SELECTSTART,DimDate[WeekDay] - _SELECTSTART +1, DimDate[WeekDay] + 7 - _SELECTSTART + 1)

Medidas:

FY WeekDay = 
VAR _SELECTSTART = 3
RETURN
IF(DimDate[WeekDay]>=_SELECTSTART,DimDate[WeekDay] - _SELECTSTART +1, DimDate[WeekDay] + 7 - _SELECTSTART + 1)
Running Total = 
 SUMX(FILTER(ALLSELECTED(DimDate),DimDate[Date]<=MAX(DimDate[Date])),[Percentage])
Filter = 
IF(MAX(DimDate[Date])<=TODAY() && MAX(DimDate[FY Week Start]) = CALCULATE(MAX(DimDate[FY Week Start]),FILTER(ALLSELECTED(DimDate),DimDate[Date] = TODAY())),1,0)

El resultado es el siguiente.

vrzhoumsft_0-1718006774340.png

Saludos
Rico Zhou

Si esta publicación ayuda, considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

¿Le importaría explicar qué hace el cálculo del filtro? En el mío son todos 0 y para tu archivo lo tienes filtrado a 1. Estoy tratando de averiguar por qué el mío no tiene ningún 1.

BradyLinnebur_0-1718044838253.png

También parece que se está sumando, pero con algunos problemas. El extremo derecho es el total acumulado. Para esta promoción se supone que comienza el sábado, pero comienza a agregarse a partir del lunes. Además, cuando comienza una nueva semana, sigue sumando, pero necesito que comience de nuevo. La columna de la izquierda es el inicio de la semana, necesito decir que la semana comienza en la fecha de inicio de la promoción, que no siempre será un lunes como se muestra ahora.

Helpful resources

Announcements
Las Vegas 2025

Join us at the Microsoft Fabric Community Conference

March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!

Dec Fabric Community Survey

We want your feedback!

Your insights matter. That’s why we created a quick survey to learn about your experience finding answers to technical questions.

ArunFabCon

Microsoft Fabric Community Conference 2025

Arun Ulag shares exciting details about the Microsoft Fabric Conference 2025, which will be held in Las Vegas, NV.

December 2024

A Year in Review - December 2024

Find out what content was popular in the Fabric community during 2024.

Top Solution Authors
Top Kudoed Authors