asp-classic - for - vbscript if
Error clásico de la aplicación ASP CINT-twitpocalypse v2 (3)
Debido a un valor de cantidad que excede lo que puede almacenar un VBScript INT, recibo un mensaje de error bastante desagradable (en realidad los usuarios son) ... Este es totalmente un caso de twitpocalypse .
Como CINT () no funcionará en esta situación, ¿cuál es la mejor solución?
requestqty = 40200
CInt() max = 32767
CInt(requestqty)
EDITAR
CLng () parece ser el truco, cualquier riesgo para el código para cambiar todo CInt () a CLng (). De lo que he leído a continuación y elsehwere en la web, parece que realmente hay muy pocas razones para usar CInt (). No escribí esta aplicación en particular y no sé por qué se usó una sobre la otra, pero preferiría no bloquear el problema y solucionarlo por completo en la aplicación para que no vuelva a ocurrir ...
Aways usa long en lugar de int en VBScript (a menos que específicamente desee limitar el valor al rango int).
No hay beneficio en el rendimiento para usar el tipo más pequeño, y no hay beneficio de tamaño de almacenamiento porque todas las variables son variantes, por lo que todos los tipos simples usan la misma cantidad de memoria.
Use la función CLng
lugar de la función CInt
.
CLng () y utilizando un Long en lugar de un Int?
CLng o CDec o CDbl