Por ASP clásico / 06/05/2016 @ 12:07:03 / 1385 visitas
Err.Raise() es útil para el manejo de errores en tiempo de ejecución de una aplicación desarrollada en ASP clásico. Veremos la captura de errores con Err.Number> 0, limpiar el objeto Err con Err.Clear () y personalizar tus propios errores con Err.Raise ().
VBScript también permite personalizar los errores utilizando el método Err.Raise() de la siguiente forma:
Call Err.Raise(number, source, description)
en el cual:
"number" es un número entero en el rango de 0 y 65535 para especificar una condición de error específica, pero valores bajos ya son utilizados por VBScript para denotar erroes predefinidos. Por lo tanto, deberías usar valores altos como 60000 o más.
"source" es un texto para identificar donde ocurrió el error
"description" es un texto para describir la condición del error
A continuación un ejemplo de como utilizar Err.Raise()
<html>
<body>
<%
On Error Resume Next
response.write("Validar ""1999-12-31""...")
Call ValidateIsoDate("1999-12-31")
Call CheckError()
'===
response.write("Validar ""Year-12-31""...")
Call ValidateIsoDate("Year-12-31")
Call CheckError()
'===
response.write("Validar ""2006-15-31""...")
Call ValidateIsoDate("2006-15-31")
Call CheckError()
'===
response.write("Validar ""1999/12/31""...")
Call ValidateIsoDate("1999/12/31")
Call CheckError()
' Validar cadena de fecha en formato ISO: yyyy-mm-dd
'===
Sub ValidateIsoDate(sString)
If Len(sString) <> 10 Then
Call Err.Raise(60001, "Verificar", "La longitud debe ser 10")
Exit Sub
End If
sYear = Mid(sString, 1, 4) If Not IsNumeric(sYear) Then
Call Err.Raise(60002, "Verificar", "Año debe ser numérico")
Exit Sub
End If
sDash = Mid(sString, 5, 1) If sDash <> "-" Then
Call Err.Raise(60003, "Verificar", "Falta primer guión")
Exit Sub
End If
sMonth = Mid(sString, 6, 2)
If Not IsNumeric(sMonth) Then
Call Err.Raise(60004, "Verificar", "Año debe ser numérico")
Exit Sub
End If
If CInt(sMonth) < 1 or CInt(sMonth) > 12 Then
Call Err.Raise(60005, "Verificar", "Mes inválido")
Exit Sub
End If
sDash = Mid(sString, 8, 1)
If sDash <> "-" Then
Call Err.Raise(60006, "Verificar", "Falta segundo guión")
Exit Sub
End If
sDate = Mid(sString, 9, 2) If Not IsNumeric(sDate) Then
Call Err.Raise(60007, "Verificar", "Fecha debe ser numérico")
Exit Sub
End If
If CInt(sDate) < 1 or CInt(sDate) > 31 Then
Call Err.Raise(60008, "Verificar", "Fecha inválida")
Exit Sub
End If
End
'===
Sub Sub CheckError()
If Err.Number > 0 Then
response.write("Ocurrio un error:")
response.write(" Err.Number = " & Err.Number)
response.write(" Err.Description = " & Err.Description)
response.write(" Err.Source = " & Err.Source)
Else
response.write("No hay error.")
End If
End Sub
%>
</body>
</html>
Descubre más sobre cómo simplificar y optimizar tu trabajo empresarial en el Blog de CoreASP.
Descargo de Responsabilidad:
El contenido y los recursos que ofrecemos en CoreASP están destinados únicamente a proporcionar herramientas y ejemplos prácticos para el desarrollo en ASP Clásico. Esta información es de carácter general y no debe considerarse asesoramiento profesional o técnico específico para tu proyecto. Aunque hacemos todo lo posible por asegurar la calidad y precisión de los recursos compartidos, no garantizamos que sean completamente libres de errores o que se ajusten perfectamente a todas las situaciones. CoreASP no se responsabiliza por cualquier pérdida, daño o inconveniente derivado del uso directo o indirecto de los recursos o información proporcionada. Además, CoreASP no respalda ni asume responsabilidad por enlaces o contenido de terceros que puedan estar referenciados en nuestra plataforma. Todos los derechos de propiedad intelectual sobre el contenido y recursos publicados en CoreASP pertenecen a CoreASP o a sus respectivos propietarios, y su uso está sujeto a las condiciones de la licencia especificada para cada recurso. Nos reservamos el derecho de modificar este descargo de responsabilidad en cualquier momento sin previo aviso. Para más detalles, consulta el documento completo de términos y condiciones.
13/07/2025 @ 10:56:59
23/05/2025 @ 14:09:59
07/04/2025 @ 07:54:51
29/03/2025 @ 16:49:42
12/02/2025 @ 10:15:42
21/01/2025 @ 16:21:11