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.
Hola a todos,
Estoy luchando con algunos cálculos con respecto a las cuotas para los clientes.
Tengo una tabla con una lista de clientes y una cantidad máxima (cuota) que pueden beneficiarse de descuentos. Pueden comprar tanto producto como quieran, pero tienen un límite a la cantidad de dicha cantidad tendrá un descuento.
Tengo otra tabla con la lista de todas las facturas emitidas a ese Cliente, donde me gustaría añadir una columna donde calculo la suma cummulative de las ventas por fecha (650 en mi ejemplo) y que, donde el importe cummulative calculado es mayor que la cuota asignada a ese cliente (500), devuelve el recordatorio de la cuota que se deja a ese cliente en esa fecha (50 - calculado como la cuota - suma cummulative de facturas anteriores).
Me las arreglé para calcular la suma cummulative pero no puedo llegar a hacer que la fórmula busque el importe cummulative hasta la fecha justo antes de la última factura.
Pego debajo de las dos tablas que mencioné, con una columna de salida deseada, ya que estoy seguro ayudará a entender mejor la pregunta.
¿Alguna idea de cómo podría calcular esto permanece en la última factura?
¡Muchas gracias en avanzado!
ID de cliente | Cuota máxima |
1 | 500 |
ID de factura | Fecha | ID de cliente | Ingresos | Ingresos acumulados | Salida deseada |
1 | 01/01/2020 | 1 | 100 | 100 | 100 |
2 | 01/02/2020 | 1 | 200 | 300 | 300 |
3 | 01/03/2020 | 1 | 150 | 450 | 450 |
4 | 01/04/2020 | 1 | 200 | 650 | 50 |
Solved! Go to Solution.
@Rate ¡Vaya! Lo siento, estaba releer tu post y me di cuenta de que te extrañaba que querías que no se tomara en cuenta el acumulativo de hoy, sino el anterior. Pruebe esta medida para hacer eso:
Cumulative with Quota Measure =
VAR _c_today = CALCULATE(
sum( 'Table'[Income] ),
filter(
ALLSELECTED( 'Table'[Date] ),
ISONORAFTER( 'Table'[Date], max( 'Table'[Date] ), DESC )
)
)
VAR _c_earlier = CALCULATE(
sum( 'Table'[Income] ),
filter(
ALLSELECTED( 'Table'[Date] ),
ISONORAFTER( 'Table'[Date], max( 'Table'[Date] ) -1, DESC )
)
)
VAR _q = sum( TableQuota[Max Quota] )
VAR _d = _c_today - _q
return if( _d > 0, _q - _c_earlier, _c_today )
Respectfully,
Zoe Douglas (DataZoe)
Follow me on LinkedIn at https://www.linkedin.com/in/zoedouglas-data
See my reports and blog at https://www.datazoepowerbi.com/
@Rate Por favor, pruebe esta medida:
Cumulative with Quota Measure =
VAR _c = CALCULATE(
sum( 'Table'[Income] ),
filter(
ALLSELECTED( 'Table'[Date] ),
ISONORAFTER( 'Table'[Date], max( 'Table'[Date] ), DESC )
)
)
VAR _q = sum( TableQuota[Max Quota] )
VAR _d = _c - _q
return if( _d > 0, _d, _c )
No estaba seguro de si tenías una tabla de fechas configurada o no, así que usé la misma fecha de tabla. También puede cambiarlo a la fecha de la tabla.
Respectfully,
Zoe Douglas (DataZoe)
Follow me on LinkedIn at https://www.linkedin.com/in/zoedouglas-data
See my reports and blog at https://www.datazoepowerbi.com/
@Rate ¡Vaya! Lo siento, estaba releer tu post y me di cuenta de que te extrañaba que querías que no se tomara en cuenta el acumulativo de hoy, sino el anterior. Pruebe esta medida para hacer eso:
Cumulative with Quota Measure =
VAR _c_today = CALCULATE(
sum( 'Table'[Income] ),
filter(
ALLSELECTED( 'Table'[Date] ),
ISONORAFTER( 'Table'[Date], max( 'Table'[Date] ), DESC )
)
)
VAR _c_earlier = CALCULATE(
sum( 'Table'[Income] ),
filter(
ALLSELECTED( 'Table'[Date] ),
ISONORAFTER( 'Table'[Date], max( 'Table'[Date] ) -1, DESC )
)
)
VAR _q = sum( TableQuota[Max Quota] )
VAR _d = _c_today - _q
return if( _d > 0, _q - _c_earlier, _c_today )
Respectfully,
Zoe Douglas (DataZoe)
Follow me on LinkedIn at https://www.linkedin.com/in/zoedouglas-data
See my reports and blog at https://www.datazoepowerbi.com/
Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City
Check out the April 2024 Power BI update to learn about new features.
User | Count |
---|---|
2 | |
1 | |
1 | |
1 | |
1 |