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

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
Syndicate_Admin
Administrator
Administrator

Aplicar costos por 12 meses y obtener los resultados de un período y el impacto del período anterior

Hola expertos,

Tengo el siguiente problema y me quedé atascado aquí:

Creé un objeto visual, que muestra los costos combinados por 12 meses, que solo aparece una vez en mi tabla / conjunto de datos. Por ejemplo:

FechaClienteCostos
01.01.202211
09.02.202228
07.06.2022310


Obtuve un gráfico de barras apiladas como en el siguiente ejemplo, pero sin expandir el conjunto de datos, lo que funciona bien.

Do5779_1-1671460355632.png

Ahora estoy buscando una solución flexible

  • para obtener el resultado de los costos en general en el período mostrado
  • y los costos del período anterior.

    Así que puedo decir, está bien, en 2023 hay costos totales 58 y costos del año anterior de 58 (sin costos adicionales en 2023). Tengo un Slicer para seleccionar año, mes, trimestre, etc. y necesito una forma flexible de seleccionar tal vez trimestre y obtener los resultados para este y el trimestre anterior. Y no tengo idea de cómo puedo obtener una solución adecuada.
    ¿Alguien tiene una idea?


    ¡Muchas gracias!
5 REPLIES 5
Syndicate_Admin
Administrator
Administrator

Lo siento, pero en este foro no tengo posibilidad de cargar un archivo y no tengo acceso y la posibilidad de usar Ondrive u otra cosa.

Déjame explicarlo de otra manera:
Así que aquí está la descripción completa de todo el período (01.01 2020 a 01.01.2024), donde encontrará los costos acumulados por mes. De enero de 2022 a mayo de 2023. Los costos siempre se dividen en 12 meses. Interesante es solo el mes, no la fecha exacta, cuando el costo ocupa.

Do5779_0-1671604242690.png

Entonces, si pones la rebanadora de diciembre de 2021 a marzo de 2023, obtengo estos diagramas:

Do5779_1-1671605537903.png
Los costes totales son la suma del período indicado, en este caso 34. Los costos, que provienen de un período anterior son 0. Entonces, en este caso, todos los costos de cada cliente ocurrieron en el período mostrado.

Costes parciales del período anteriorCostos totales Costes parciales del período real
0 34 34


Siguiente ejemplo:
En este período (febrero de 2022 a marzo de 2022) hay costos totales 28.

Do5779_2-1671606212527.png
El costo parcial calculado del período real es 16. ¿Por qué? En el coste parcial deben figurar únicamente los costes, que se producen en el período por primera vez, que son en este caso los costes del cliente C2 (primera vez en febrero de 2022). Todos los demás costos (5 (C4) *2 +1(C1) *2 = 12) son el impacto de una marca de tiempo anterior.

Costes parciales del período real Costos totales Costes parciales de la marca de tiempo/período anterior
16 ( 2*C2) 28 12 (C1+C4)*2


Ejemplo 3:
En este caso son costos totales 130 y 0 costos, que occours la primera vez. Todos los costos son el impacto de un período anterior.
130 = 3*1 (C1) +4*8(C2)+10*8(C3)+3*5 (C4)

Do5779_4-1671607245027.png

Costes parciales del período real Costos totales Costes parciales de la marca de tiempo/período anterior
0 130
130




Espero que quede más claro?

Tabla con fechas

Do5779_6-1671607395729.png



Syndicate_Admin
Administrator
Administrator

@Ashish_Mathur @v-yangliu-msft gracias por sus consejos. Me gustaría subir mis datos, pero no funciona, así que en este caso podría estar más claro de qué se trata.
Sólo este mensaje ocupa:

El tipo de archivo (.pbix) no es compatible.


Volviendo al tema:
Así que estoy buscando una medida para resumir todos los datos, que se muestra en el visual
y también obtener el impacto de los costos, que originalmente se aplica en el período de tiempo anterior, pero también se muestra en el elegido.

Do5779_2-1671524557111.png

Do5779_3-1671524569226.png

El objeto visual se basa en la siguiente medida:

Monthly_Costs = 


calculate([CostsTotal]/12
    
    ,DATESINPERIOD(caledar[Date], max(caledar[Date]),-1,year)


)

CostsTotal = sum('Tabelle (2)'[Annual Costs])


En realidad no hay Slicer, pero puedes elegir Año, Trimestre, Mes.

¡Muchas gracias por tu ayuda!



Todavía no sé lo que quieres. Mostrar el resultado esperado en un formato de tabla simple. Comparta el enlace de descarga del archivo PBI.

Syndicate_Admin
Administrator
Administrator

Hola

Explore la función SAMEPERIODLASTYEAR().

Syndicate_Admin
Administrator
Administrator

@Do5779 ,

He creado algunos datos:

vyangliumsft_0-1671502497662.png

Estos son los pasos que puede seguir:

1. Crear medida.

now =
var _min=MINX(ALLSELECTED('Table'),[Date])
var _max=MAXX(ALLSELECTED('Table'),[Date])
var _select=SELECTEDVALUE('Slicer_Table'[Slicer])
return
SWITCH(
    TRUE(),
    MAX('Slicer_Table'[Slicer])="year",
    SUMX(FILTER(ALL('Table'),'Table'[Date]<=MAX('Table'[Date])&&'Table'[Year]=MAX('Table'[Year])&&'Table'[Group]=MAX('Table'[Group])),[Value]),
    MAX('Slicer_Table'[Slicer])="month",
    SUMX(FILTER(ALL('Table'),'Table'[Date]<=MAX('Table'[Date])&&'Table'[Year]=MAX('Table'[Year])&&'Table'[Group]=MAX('Table'[Group])&&'Table'[Month]=MAX('Table'[Month])),[Value]),
    MAX('Slicer_Table'[Slicer])="quarter",
    SUMX(FILTER(ALL('Table'),'Table'[Date]<=MAX('Table'[Date])&&'Table'[Year]=MAX('Table'[Year])&&'Table'[Group]=MAX('Table'[Group])&&'Table'[Qu]=MAX('Table'[Qu])),[Value]))
last =
var _min=MINX(ALLSELECTED('Table'),[Date])
var _max=MAXX(ALLSELECTED('Table'),[Date])
var _select=SELECTEDVALUE('Slicer_Table'[Slicer])
return
SWITCH(
    TRUE(),
    MAX('Slicer_Table'[Slicer])="year",
    SUMX(FILTER(ALL('Table'),'Table'[Date]<=DATE(YEAR(MAX('Table'[Date]))-1,MONTH(MAX('Table'[Date])),DAY(MAX('Table'[Date])))&&'Table'[Year]=MAX('Table'[Year])-1&&'Table'[Group]=MAX('Table'[Group])),[Value]),
    MAX('Slicer_Table'[Slicer])="month",
    SUMX(FILTER(ALL('Table'),'Table'[Date]<=DATE(YEAR(MAX('Table'[Date])),MONTH(MAX('Table'[Date]))-1,DAY(MAX('Table'[Date])))&&'Table'[Group]=MAX('Table'[Group])&&'Table'[Year]=MAX('Table'[Year])&&'Table'[Month]=MAX('Table'[Month])-1),[Value]),
    MAX('Slicer_Table'[Slicer])="quarter",
    SUMX(FILTER(ALL('Table'),'Table'[Date]<=MAX('Table'[Date])&&'Table'[Year]=MAX('Table'[Year])&&'Table'[Group]=MAX('Table'[Group])&&'Table'[Qu]=MAX('Table'[Qu])-1),[Value]))

2. Introduzca datos – Crear tabla.

vyangliumsft_1-1671502497664.png

3. Resultado:

vyangliumsft_2-1671502497666.png

Saludos

Liu Yang

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

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

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

April Fabric Community Update

Fabric Community Update - April 2024

Find out what's new and trending in the Fabric Community.