calcular la diferencia porcentual entre dos cheques de pago

Un usuario Pregunto ✅

¡Hola, chicos! tengo una pregunta que no veo una respuesta para…
Estoy tratando de averiguar cómo calcular la diferencia porcentual entre dos cheques de pago.
actualmente tengo:
Porcentaje de cheque de pago sobre cheque de pago =

VAR __ANTERIOR_ =
CALCULAR(
SUM(‘Dólares de nómina'[Dólares]),
DATEADD(‘DateDAX'[Fecha].[ Fecha], –14, DÍA)
)
devolución
DIVIDE(SUM(‘Dólares de nómina'[Dólares]) – __ANTERIOR, __ANTERIOR)
Esto funciona si la diferencia entre dos cheques de pago es de 14 días. pero no siempre lo es.
Mi pregunta es ¿cómo puedo usar la tabla con las fechas en ella para definir ese rango de 14 días en lugar del valor fijo?

for context = mi tabla puede verse así:

1/7/2021

10 dólares estadounidenses

21/01/2021

12 dólares estadounidenses

2/8/2021 9 dólares estadounidenses
22/02/2021 14 dólares estadounidenses

(en teoría, es cada 14 días, pero en realidad algunos de los cheques de pago son bimestrales, lo que significa que la fecha de pago esperada es un fin de semana, y el pago real es el día siguiente, es decir, una brecha de 15 días)

Estoy buscando hacer referencia al valor en dólares en el valor de fecha anterior (como la fecha aparece en la columna)

hágamelo saber si alguna aclaración adicional es útil.

¡gracias!

@sdukes

¿es esto lo que quieres?

Column = 
var last=maxx(FILTER('Table','Table'[DATE]<EARLIER('Table'[DATE])),'Table'[DATE])
return maxx(FILTER('Table','Table'[DATE]=last),'Table'[VALUE])

1 PNG

@sdukes

¿es esto lo que quieres?

Column = 
var last=maxx(FILTER('Table','Table'[DATE]<EARLIER('Table'[DATE])),'Table'[DATE])
return maxx(FILTER('Table','Table'[DATE]=last),'Table'[VALUE])

1 PNG

En respuesta a Syndicate_Admin

Gracias Ryan! eso es muy util.

No estoy seguro de que lo entiendo completamente, pero se mantendrá en él..

¿Hay alguna manera de hacer que este resultado sea filtrado por filtros de la partenada o segmentaciones de datos? actualmente es un valor fijo, pero quiero que cambie en una base ‘por categoría’

En respuesta a Syndicate_Admin

@sdukes

¿podría proporcionar los nuevos datos de muestra y la salida esperada?

En respuesta a Syndicate_Admin

@ryan_mayu,

estos son mis datos actuales con la implementación de la solución anterior:

sdukes_0-1624418516501.png

pero si filtro la columna ‘Facility’ derecha (usando filtro o segmentación de datos) para que sea igual a ‘Be..’, la columna ‘days from before’ mantiene el valor fijo que tiene en la fila:

sdukes_1-1624418668085.png

en lugar de, por ejemplo:

fila 1: en blanco

Fila 2: 22 de enero-8 de enero = 16

Fila 3: 5 de febrero-22 de enero = 14

mi objetivo es que el filtro de instalación se aplique al código que escribió anteriormente y vuelva a crear la columna con la diferencia de fecha actual.

En respuesta a Syndicate_Admin

@sdukes

ya que se trata de una tabla visual, no de datos de ejemplo. Sólo puedo tener una oportunidad.

medida=

VAR lastdate=calculate(max(fecha),filtro(altoexcepto(tabla,tabla[facilities]),fecha

devolver dólares-calcular (suma (dólares), filtro (todo excepto (tabla, tabla[facilities]), fecha = última fecha))

En respuesta a Syndicate_Admin

No pude averiguarlo… Estos son algunos datos de ejemplo

año cuarto mes día dolares facilidad
2020 Trimestre 1 Enero 3 $ 24.708,03 gustar
2020 Trimestre 3 Agosto 14 $ 12.135,85 gustar
2020 Trimestre 3 septiembre dieciséis $ 26.938,38 ser
2020 Trimestre 4 Octubre 14 $ 23.981,89 ser
2020 Trimestre 4 Diciembre 23 $ 31.282,14 ser
2020 Trimestre 4 Diciembre 24 $ 64.00 gustar
2020 Trimestre 4 Diciembre 31 $ 13.276,39 ser
2020 Trimestre 4 Diciembre 31 $ 24.093,37 gustar
2021 Trimestre 1 Febrero 5 $ 96,39 ser
2021 Trimestre 2 Abril 1 $ 217,60 ser
2021 Trimestre 2 Abril 15 $ 56,66 ser
2020 Trimestre 3 Julio 2 $ 29.667,20 gustar
2020 Trimestre 3 Julio 31 $ 26.305,27 gustar
2020 Trimestre 3 Agosto 19 $ 25.385,21 ser
2020 Trimestre 4 Octubre 23 $ 11.167,20 gustar
2020 Trimestre 4 Octubre 28 $ 22.942,42 ser
2021 Trimestre 1 Febrero 12 $ 14.201,05 gustar
2020 Trimestre 1 Enero 17 $ 25.138,17 gustar
2020 Trimestre 1 Enero 31 $ 24.292,56 gustar
2020 Trimestre 1 Febrero 14 $ 24.181,89 gustar
2020 Trimestre 1 Febrero 28 $ 23.609,24 gustar
2020 Trimestre 1 Marzo 13 $ 24.457,29 gustar
2020 Trimestre 1 Marzo 27 $ 26.063,86 gustar
2020 Trimestre 2 Abril 10 $ 26.385,03 gustar
2020 Trimestre 2 Abril 24 $ 28.938,79 gustar
2020 Trimestre 2 Mayonesa 8 $ 29.426,91 gustar
2020 Trimestre 2 Mayonesa 22 $ 29.613,01 gustar
2020 Trimestre 2 Junio 5 $ 28.931,67 gustar
2020 Trimestre 2 Junio 19 $ 28.712,81 gustar
2020 Trimestre 3 Julio 17 $ 28.813,31 gustar
2020 Trimestre 3 Agosto 28 $ 11.461,98 gustar
2020 Trimestre 3 septiembre 11 $ 11.740,76 gustar
2020 Trimestre 3 septiembre 25 $ 12.402,80 gustar
2020 Trimestre 4 Octubre 9 $ 11.513,55 gustar
2020 Trimestre 4 Noviembre 6 $ 11.570,28 gustar
2020 Trimestre 4 Noviembre 20 $ 11.619,56 gustar
2020 Trimestre 4 Diciembre 4 $ 17.094,54 gustar
2020 Trimestre 4 Diciembre 18 $ 20.229,14 gustar
2021 Trimestre 1 Enero 15 $ 12.959,39 gustar
2021 Trimestre 1 Enero 29 $ 13.528,41 gustar
2021 Trimestre 1 Febrero 22 $ 265,91 ser
2021 Trimestre 1 Febrero 26 $ 13.383,48 gustar
2021 Trimestre 1 Marzo 12 $ 12.931,95 gustar
2021 Trimestre 1 Marzo 26 $ 12.629,75 gustar
2021 Trimestre 2 Abril 9 $ 13.202,00 gustar
2021 Trimestre 2 Abril 23 $ 12.465,71 gustar
2021 Trimestre 2 Mayonesa 7 $ 13.447,80 gustar
2021 Trimestre 2 Mayonesa 21 $ 12.533,92 gustar

En respuesta a Syndicate_Admin

@sdukes

Por favor, compruebe el archivo adjunto a continuación

En respuesta a Syndicate_Admin

Gracias Ryan! esto fue muy util.

el siguiente código es mi resultado que me obtiene por tasa de cambio de cheque de pago basado en el informe que compartió:

Cambio porcentual por período =
VAR ÚLTIMO=
MAXX(
FILTRO(
ALL(‘Dólares de nómina’),
‘Dólares de nómina'[date] < MAX('Dólares de Nómina'[date]) && 'Dólares de nómina'[Facility] = MAX('Dólares de nómina'[Facility])),
‘Dólares de nómina'[fecha]
)

VALOR L VAR=
SUMX(
FILTRO(
ALL(‘Dólares de nómina’),
‘Dólares de nómina'[fecha] = ÚLTIMO && ‘Dólares de nómina'[Instalación] = MAX(‘Dólares de nómina'[Instalación])),
‘Dólares de nómina'[Dólares]
)

DIFERENCIA VAR=
SI(
ESEN BLANCO(VALOR L),
EN BLANCO(),
SUM(‘Dólares de nómina'[Dólares])-VALOR L
)

Resultado VAR=
SI(
ESTÁ FILTRADO(
‘Dólares de nómina'[Categorías de dólares]),
EN BLANCO(),
DIVIDIR(
diferencia
SUM(‘Dólares de nómina'[Dólares])
)
)
resultado volver

Todavía estoy luchando para entender cómo los valores MAX funcionan en lo que respeta a mantener el filtro..
¿Qué pasa si hay otro elemento que quería agregar como filtro? es decir, [Categorías de dólares] que actualmente estoy devolviendo un espacio en blanco si se aplica el filtro.


¿Cómo podría agregar otra opción de filtro a mi código?
gracias de nuevo!

En respuesta a Syndicate_Admin

@sdukes

tal vez probar

&& ‘Dólares de nómina'[Instalación] = MAX(‘Dólares de nómina'[Instalación])&&XXXX=MÁX.(XXXX)),

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *