Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Buenos dias.
Tengo el siguiente problema y no se como resolverlo. A modo de ejemplo seria algo asi:
Hay que calcular el precio final que es el resultado de :
Multiplicar kilos por el rango correspondiente en el que se encuentra , pero si el rango superior da un importe supeior , me tengo que quedar con este último es decir...
KILOS | para calcular el precio final | PRECIO FINAL | RANGO KILOS | PRECIO | ||
2 | el mayor de 2*1 o 2*1,2 | 2,4 | 0-50 | 1 | ||
75 | el mayor de 75*1,2 o 75*1,5 | 112,5 | 50-100 | 1,2 | ||
100-500 | 1,5 |
Gracias por anticipado
Hola,
En la tabla solo te sale el rango al que corresponde.
Si te creas una pivot o una straight le tendrás que crear expresiones que calculen lo que necesites (Precio * Kilos) en el caso del precio del siguiente rango (Precio * Kilos de su Rango ID + 1).
De todas maneras tal y como me lo explicaste ayer:
"Me piden que multiplique los kilos por el rango en que se encuentra y también por el siguiente rango y que de ambas cantidades de precio calculadas me quede con la mayor."
siempre será mayor el Primer rango (ya que se supone que multiplicas los mismo kilos?) y eso no lo acabo de entender o creo que no ha quedado claro para los demás.
Si prefieres subir el ejemplo y lo miramos mejor....
Saludos,
Antes de nada gracias Jordi por tu paciencia. Te pongo un caso:
RANGO | PRECIO APLICABLE |
0 A 5 | 1 |
6 A 10 | 0,5 |
10 A 15 | 2 |
16 A 20 | 3 |
CALCULO RANGO EN QUE SE ENCUENTRA | CALCULO RANGO SIGUIENTE | AL FINAL | |
PARA 4 KG | 4*1 | 4*0,5 | 4>2 POR LO QUE ME QUEDO CON 4 |
PARA 7 KG | 7*0,5 | 7*2 | 3,5<14 POR LO QUE ME QUEDO CON 14 |
PARA 12 KG | 12*2 | 12*3 | 24<36 POR LO QUE ME QUEDO CON 36 |
Es decir por ejemplo 4kg se encuentra en el rando de [0 - 5]. Por eso multiplico 4*1 (que es el precio aplicable a este rango) y ahora hago 4 por el precio del rango siguiente , es decir 4*0.5 (que es el precio aplicable al rango siguiente). De ambos valores resultantes, es decir de 4*1=4 y de 4*0.5=2 me quedo con el 4 que es el precio mayor.
Para el siguiente caso, por ejemplo 7kg , que se encuentra en el rando de [6 - 10]. Por eso multiplico 7*2 (que es el precio aplicable a este rango) y ahora hago 7 por el precio del rango siguiente , es decir 7*2 (que es el precio aplicable al rango siguiente). De ambos valores resultantes, es decir de 7*0.5=3.5 y de 7*2=14 me quedo con el 14 que es el precio mayor.
No se si es mucho lio y espero que esta vez quede algo mas claro.
Hola,
Tranquilo, pero ya te dije ayer lo que haría, partiendo de la base que es una opinión personal y seguro que hay otras maneras de hacerlo. Con los datos que te pasé Tienes un ID Rango. Ese ID te sirve para saber en que rango te encuentras y cual es el siguiente (ID + 1). De la misma manera también sabes, gracias al Interval los kilos en que rango estan y que ID tienen junto a su precio.
Tienes que crearte una tabla o hacer lo que creas mas conveniente que te calculen los precios finales:
Ejemplo:
4 Kilos ---> Rango 0-5 ----> Precio Rango: 1 ---> Precio Rango1: 4 ---> Precio Siguiente Rango: (precio de ID+1 * Kilos) --> Con que me quedo: Si Precio Rango1 > Precio Siguiente Rango..........
Esto es lo que haría, dale una vuelta a ver que te parece.....
Saludos,
Hola Jordi, una ultima pregunta. Com le digo al sistema que me calcule Precio Siguiente Rango: (precio de ID+1 * Kilos))???
Hola,
Para que no te lies, haz lo siguiente... añade el Precio del siguiente Rango en el INLINE como campo Precio2
Test: (Llámale Tabla de Rangos mejor)
LOAD * Inline [
Minimo, Maximo, Rango, ID Rango, Precio1,Precio2
0, 25, 0-25,1,19,18
26, 50, 26-50,2,18,16
50, 100, 50-100,3,16,14
100,200, 100-200,4,14,12
200,500, 200-500,5,12,10
500,1000, 500-1000,6,10,10
];
Así solo tendrás que multiplicar Kilos * Precio1 y Kilos * Precio2 para sacar el mejor precio de los 2.
Creo que es una solución más sencilla.
Ya me dirás que te parece y si te soluciona el problema. Es mucha mas sencillo.
Saludos
Gracias Jordi funciona correctamente . Gracias por todo de verdad y perdona las molestias. NO controlo demasiado y a veces me pierdo en este mundo....
Tranquilo que yo estoy igual poco a poco....