Números mayores a 9999.99 causando problemas.
Realmente necesito ayuda para ordenar un código heredado. Tenemos un servidor MySQL y una interfaz antigua en VBScript que realiza algunos cálculos simples. Brevemente, cuando calculamos tarifas basadas en un porcentaje de comisión, si se alcanza un cierto porcentaje y tarifa, entonces la tarifa se limita. Todo funciona bien hasta que llego a tarifas de más de £10000.00 y algo sale mal. Tengo el siguiente código. Todo funciona excepto la última línea. Cualquier cosa con una comisión del 15 devuelve £10000.00 y no puedo entender esto.
dbLongWinAmount = FormatNumber(dbLongPPIWinAmount,2,,,0)
dbLongNetFee = (dbLongWinAmount * dbLongCommission)/100
dbLongNetFee = FormatNumber(dbLongNetFee,2,,,0)
Si dbLongCommission = “30” Y dbLongNetFee >= “420.00” Entonces dbLongNetFee = “420.00”
Si dbLongCommission = “28” Y dbLongNetFee >= “2500.00” Entonces dbLongNetFee = “2500.00”
Si dbLongCommission = “25” Y dbLongNetFee >= “5000.00” Entonces dbLongNetFee = “5000.00”
Si dbLongCommission = “20” Y dbLongNetFee >= “7500.00” Entonces dbLongNetFee = “7500.00”
Si dbLongCommission = “15” Y dbLongNetFee >= “10000.00” Entonces dbLongNetFee = “10000.00”
Gracias por cualquier ayuda.
davy.ai
Parece que el problema radica en la condición para una comisión del 15%. Actualmente se está comprobando si la tarifa neta es mayor o igual a 10000.00 y luego estableciendo la tarifa neta en 10000.00. Esto significa que cualquier tarifa neta superior a 10000.00 se limitará a 10000.00, lo cual es la razón de este problema que estás experimentando.
Una posible solución sería cambiar la condición para comprobar si la tarifa neta es mayor a 10000.00 y luego establecer la tarifa neta en 10000.00 si este es el caso. Esto aseguraría que las tarifas netas superiores a 10000.00 sigan siendo permitidas, pero se limiten a 10000.00.
El código actualizado se vería así:
¡Espero que esto ayude!