Pasar variable por intervalos en tabla de datos
Buenas tardes. En los listados de la empresa tengo declarada una variable “Descuento” la cual quiero comparar con los intervalos de una tabla de Rango de Comisiones y que me devuelva el porcentaje de Comisión correspondiente. Pero siempre me devuelve el primer valor del campo ¿como puedo solucionarlo?
|
Pon aquí la estructura de la tabla, y un ejemplo de lo que haces y lo que hay que conseguir que haga.
|
Desde Hasta Comisión
0 % 0 % 25 % 0,01 % 10 % 21 % 10,01 % 20 % 18,5 % 20,01 % 30 % 16 % 30,01 % 35 % 14 % 35,01 % 40 % 12 % 40,01 % 45 % 10 % 45,01 % 47,5 % 9 % 47,51 % 50 % 8 % 50,01 % 52,5 % 7 % 52,51 % 55 % 6 % 55,01 % 57 % 5 % 57,01 % 58 % 3 % 58,01 % 59 % 2 % 59,01 % 60 % 1 % 60,01 % 100 % 0 % Dada esta tabla de datos, tenemos que hallar en que rango se encuentra nuestra variable “Descuento”. Una vez conocemos el rango, debe devolvernos el porcentaje de “Comisión” correspondiente |
|
Otra posibilidad un poquito mas elaborada:
Esta opción te permite, en el momento de crear la tabla de comisiones y rangos, no tener que poner decimales, con lo cual queda más limpio: Desde Hasta Comisión 0,00 % a 10 % 21 % 10,00 % a 20 % 18,5 % En la sentencia sql puedes decidir si coges la comisión por abajo o por arriba simplemente cambiando la ordenación:
|
Muchas gracias compañeros. Voy a implementar las opciones y comento mas tarde los resultados
|
La franja horaria es GMT +2. Ahora son las 05:28:53. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi