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

Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.

Reply
Syndicate_Admin
Administrator
Administrator

Mostrando la tendencia en el consumo de artículos

Hola.

Tengo una tabla que contiene los cambios de inventario del grupo de artículos (libro mayor) a lo largo del tiempo. Contiene datos de todos los cambios en el inventario a lo largo del tiempo a nivel de artículo.

Necesitaría obtener una tendencia de consumo de artículos por semana durante los últimos 18 meses en el nivel de la semana. ¿Cómo debo abordar eso?

Tengo una tabla de calendario para hacer coincidir las fechas en semanas y tengo los cambios de inventario del artículo por fechas. Ejemplo a continuación. Un solo artículo puede tener cambios de inventario positivos y negativos y aquí solo me interesan los cambios negativos (consumo). Así que si tengo:

Artículo | Fecha | Cambiar | Inventario

001 | 1/4/2021 | -2 | 48

001 | 5/4/2021 | -3 | 45

001 | 12/4/2021 | -1 | 44

001 | 13/4/2021 | 6 | 50

001 | 14/4/2021 | -4 | 46

001 | 20/4/2021 | -2 | 44

Así que el consumo ha sido:

Semana 13: 2

Semana 14: 3

Semana 15: 5

Semana 16: 2

Si obtengo esos valores por semana, entonces es fácil poner esa medida (?) en imágenes con el tiempo.

La ayuda para abordar esto es muy apreciada 🙂

2 ACCEPTED SOLUTIONS

@vpsoini ,

Una de las formas es usar las siguientes medidas (los ejemplos son por 7 días. Supongo que tiene una tabla de fecha separada conectada a su tabla de datos a través de la columna Fecha):

last7days = 
CALCULATE (
    [ChangeAmt],
    DATESINPERIOD ( 'Date'[Date], MAX ( 'T'[Date] ), -7, DAY )
)
prev7days = 
CALCULATE(
    [ChangeAmt],
    DATESINPERIOD ( 'Date'[Date], MAX ( 'T'[Date] ) - 7, -7, DAY )
) 
compare7days = 
VAR a = [last7days]
VAR b = [prev7days]
RETURN
    IF ( HASONEVALUE ( T[Item] ), ( a - b ) / b )

ERD_0-1635436942691.png

Si esta publicación ayuda, considere Aceptarla como la solución ✔️para ayudar a los otros miembros a encontrarla más rápidamente.

View solution in original post

Syndicate_Admin
Administrator
Administrator

Allí, @vpsoini

@ERD ha proporcionado una solución, y se me ocurrió otra solución que espero que también ayude.

Ofrezco otra solución para su referencia, que no requiere que tenga una tabla de fechas separada.

últimos 7 días:

last 7 days = 
var _maxDate=CALCULATE(MAX('Table'[Date]),ALL('Table'))
var _sum=
    CALCULATE(
        SUM('Table'[Change]),
        FILTER(
            ALL('Table'),
            'Table'[Change]<=0&&
            'Table'[Item]=MAX('Table'[Item])&&
            'Table'[Date]<=_maxDate&&
            'Table'[Date]>_maxDate-7
            )
        )
var _abs=ABS(_sum)

return _abs

para cambiar el _maxDate-N para obtener otras medidas:
últimos 7(30) días, 7(30) días anteriores:

vangzhengmsft_0-1635487175398.png

contras. cambio:

CMP_30days = DIVIDE([last 30 days]-[previous 30days],[previous 30days])

Resultado:

vangzhengmsft_1-1635487485807.png

Consulte el archivo adjunto a continuación para obtener más detalles. Espero que esto ayude.

Saludos
Equipo de apoyo a la comunidad _ Zeon Zheng


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

View solution in original post

7 REPLIES 7
Syndicate_Admin
Administrator
Administrator

Allí, @vpsoini

@ERD ha proporcionado una solución, y se me ocurrió otra solución que espero que también ayude.

Ofrezco otra solución para su referencia, que no requiere que tenga una tabla de fechas separada.

últimos 7 días:

last 7 days = 
var _maxDate=CALCULATE(MAX('Table'[Date]),ALL('Table'))
var _sum=
    CALCULATE(
        SUM('Table'[Change]),
        FILTER(
            ALL('Table'),
            'Table'[Change]<=0&&
            'Table'[Item]=MAX('Table'[Item])&&
            'Table'[Date]<=_maxDate&&
            'Table'[Date]>_maxDate-7
            )
        )
var _abs=ABS(_sum)

return _abs

para cambiar el _maxDate-N para obtener otras medidas:
últimos 7(30) días, 7(30) días anteriores:

vangzhengmsft_0-1635487175398.png

contras. cambio:

CMP_30days = DIVIDE([last 30 days]-[previous 30days],[previous 30days])

Resultado:

vangzhengmsft_1-1635487485807.png

Consulte el archivo adjunto a continuación para obtener más detalles. Espero que esto ayude.

Saludos
Equipo de apoyo a la comunidad _ Zeon Zheng


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

Syndicate_Admin
Administrator
Administrator

Hola @amitchandak y @ERD

Gracias por las sugerencias. Desafortunadamente mi fuente cambió un poco (el inventario muestra ahora solo cero, por lo que no se puede usar) y también mi objetivo cambió un poco, así que si pudieras ayudar a abordar para obtener valores en una tabla visual, así que tendría

Artículo | el consumo dura 7 días | cambio de consumo último 7 días -> últimos 14-7 días en % | consumo último 30 días | cambio de consumo último 30 días -> últimos 60-30 días en %|

Así que estoy buscando

  • Cuántos artículos se consumen durante los últimos 7 días
  • Cuánto ha cambiado el consumo en los últimos 7 días en comparación con los 7 días anteriores en % (tendencia)
  • Cuántos artículos se consumen durante los últimos 30 días
  • Cuánto ha cambiado el consumo en los últimos 30 días en comparación con los 30 días anteriores en % (tendencia)

Gracias por sus valiosas respuestas hasta ahora y lo siento por la inconveniencia para la molestia adicional ...

@vpsoini ,

Ya que tiene algunos cambios, por favor, proporcione sus nuevos requisitos y nuevos datos

1. Datos de muestra como texto, use la herramienta de tabla en la barra de edición
2. Resultado esperado de los datos de la muestra
3. Explicación en palabras de cómo llegar desde 1. a 2.

Si esta publicación ayuda, considere Aceptarla como la solución ✔️para ayudar a los otros miembros a encontrarla más rápidamente.

Hay @ERD

Los datos se ven así (muestra con 2 itms diferentes, uno real tiene alrededor de 50k elementos). Estoy interesado solo en los cambios negativos (consumo), por lo que cualquier cambio positivo (agregar inventario) no está en el alcance aquí.

ArtículoFechaCambio
0011.10.2021-1
0012.10.2021-3
0022.10.2021-2
0015.10.2021-2
0018.10.20216
0029.10.2021-2
00111.10.2021-1
00213.10.2021-2
00116.10.2021-3
00217.10.20215
00120.10.2021-2
00121.10.2021-1
00222.10.2021-1
00125.10.2021-2
00225.10.2021-1
00126.10.2021-1

Así que los datos que estoy buscando son (supongamos, que en septiembre (30 días anteriores) el consumo para el artículo 001 fue de 12 y para el artículo 002 fue de 9)

Artículoconsumo último 7 díasconsumo anterior 7 díasEl cambio dura 7 días en comparación con los 7 días anterioresconsumo último 30 díasconsumo anterior 30 díasContras. cambio último 30 días en comparación con los 30 días anteriores
00163( 3->6 = ) +100%1612(12 -> 16 = ) 33%
00222(2 -> 2= ) 0%89(9 ->8 = ) - 11%

Una vez más, cualquier ayuda para abordar esas medidas (¿o columnas?) es muy apreciada.

@vpsoini ,

Una de las formas es usar las siguientes medidas (los ejemplos son por 7 días. Supongo que tiene una tabla de fecha separada conectada a su tabla de datos a través de la columna Fecha):

last7days = 
CALCULATE (
    [ChangeAmt],
    DATESINPERIOD ( 'Date'[Date], MAX ( 'T'[Date] ), -7, DAY )
)
prev7days = 
CALCULATE(
    [ChangeAmt],
    DATESINPERIOD ( 'Date'[Date], MAX ( 'T'[Date] ) - 7, -7, DAY )
) 
compare7days = 
VAR a = [last7days]
VAR b = [prev7days]
RETURN
    IF ( HASONEVALUE ( T[Item] ), ( a - b ) / b )

ERD_0-1635436942691.png

Si esta publicación ayuda, considere Aceptarla como la solución ✔️para ayudar a los otros miembros a encontrarla más rápidamente.

Syndicate_Admin
Administrator
Administrator

No @vpsoini,

una de las opciones es utilizar esta medida:

consumption =
SUMX ( FILTER ( 'Table', 'Table'[Change] < 0 ), 'Table'[Change] * -1 )

Si esta publicación ayuda, considere Aceptarla como la solución ✔️para ayudar a los otros miembros a encontrarla más rápidamente.

Syndicate_Admin
Administrator
Administrator

@vpsoini , si el cambio es una medida

calculate([Inventario], filter(Valores(Tabla[Semana]), [Cambiar] <0 ))

Si los cambios son columna

calculate([Inventario], filter(Tabla, [Cambiar] <0 ))

Power BI— Semana a semana y DMT
https://medium.com/@amitchandak.1978/power-bi-wtd-questions-time-intelligence-4-5-98c30fab69d3
https://community.powerbi.com/t5/Community-Blog/Week-Is-Not-So-Weak-WTD-Last-WTD-and-This-Week-vs-La...
https://www.youtube.com/watch?v=pnAesWxYgJ8

Helpful resources

Announcements
LearnSurvey

Fabric certifications survey

Certification feedback opportunity for the community.

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.