Una de las cosas más importantes que debe cuidar todo buen desarrollador, es vigilar los más posible, la calidad de los datos que se incluyen en un sistema. Bajo este precepto, es importante el realizar tareas de verificación de datos antes de que estos sean guardados en las tablas.
Por este motivo, en esta ocasión quisiera presentarles el uso de patrones de expresiones regulares javascript, para realizar algunas de estas tareas de verificación.
Un patrón o expresión regular es, básicamente, una cadena de caracteres simples y especiales que utilizamos para definir el contenido de una constante o una variable, y por ende, de un campo de datos.
Para aquellos de ustedes que deseen aprender más acerca de los patrones o expresiones regulares, los invito a realizar una búsqueda en Internet, donde pueden encontrar muy buen material al respecto.
Para utilizar estos patrones o expresiones regulares para validar los datos ingresados en nuestras formas de Oracle Apex, el procedimiento es el siguiente:
- Ingrese a la página de propiedades del campo al que desee agregar la validación.
- Diríjase a la sección Elemento.
- En el campo Atributos de Elemento de Pantalla HTML ingrese el siguiente código: onChange=»javascript:patronRe = /patron/;if (!patronRe.test(this.value)) {alert(‘Mensaje de error’);} else {html_GetElement(‘P99_SIGUIENTE’).focus();}»
- Haga clic en el botón Aplicar cambios
El resultado de un dato erróneamente introducido sería algo similar a lo que se muestra en la siguiente ilustración.
Algunas consideraciones a tomar en cuenta:
- Reemplace en el código de arriba, la cadena «patron», por el patrón correspondiente al dato a verificar.
- Reemplace «Mensaje de error», por el mensaje que desea que aparezca mostrado en la ventana de alerta, cuando el dato ingresado no se adecua al patrón proporcionado.
- La cadena del patrón debe ser ingresada consecutivamente, no debe incluir saltos de línea, pues esto provocaría un error en la función de validación.
Finalmente, les dejo tres ejemplos de patrones muy útiles y que pueden utilizar en sus formas.
- Patrón para permitir solo el ingreso de letras (mayúsculas y minúsculas) y espacios en blanco, para una cadena que debe tener al menos 10 caracteres de largo.
/[a-zA-Z\s]{10,}/
- Patrón para verificar un número telefónico, el cual debe inicial con un 2 o un 8 y que debe incluir don grupos de números de 4 dígitos cada uno, separados por un espacio en blanco o un guión.
/^(2|8)\d{3}(-| )\d{4}/
- Patrón para verificar una dirección de correo electrónico. Verifica que los dominios estén contenidos en uno de los siguientes: com, net, org, edu, int, mil, gov, arpa, biz, aero, name, coop, info, pro, museum
/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*\.(\w{2}|(com|net|org|edu|int|mil|gov|arpa|biz|aero|name|coop|info|pro|museum))$/
Solo me resta invitarlos a ver un ejemplo implementado en mi espacio de trabajo en OTN.
Recordarles que pueden dejar comentarios, sugerencias o solicitudes cuando lo deseen.
Hola amigos ! Que tal como están ?
Realmente estoy fascinado por éstos excelentes artículos.
Los felicito sinceramente y les agradezco mucho.
Esto es lo que estaba esperando un artículo que explicara como validar los datos en APEX.
Por lo que veo debo aprender JavaScript. También me gustaría que incluyeran un foro para poder realizar nuestras consultas.
De nuevo, los felicito y espero que sigan pubicando más artículos porque
necesito aprender a usar APEX lo más pronto posible pues quiero
aprender a realizar una aplicación vía web con Oracle Express Edition.
Oracle es la mejor heramienta que existe y debemos aprovechar las
herramientas gratuitas que nos proporciona.
De nuevo les agradezco muchísimo y felicitaciones.
Hola amigos que tal como están ?
De nuevo, los felicito y espero que sigan pubicando más artículos
sobre el desarrollo de apliacaciones usando APEX sobre Oracle
Express Edition.
Tal vez puden orientarme sobre QUE ES ?
Lo que necesito saber de JAVASCRIPT o de AJAX para hacer las validaciones en APEX.
La verdad me interesa mucho aprender hacer aplicaciones vía web
con APEX.
Saludos !!!
Saludos!.
Felicitaciones por todo los artículos nuevos que colocaste, son de mucha ayuda.
En esta ocasión deseo realizar una consulta, tengo la siguiente funcion:
function confirmar()
{
if (!confirm(AVISO: ¿Deseas confirmar la accion?))
//quiero continuar en la misma pagina de apex
else
//continuar con el proceso
}
Agradecería mucho si me pudiesen ayudar con este problemita. Gracias!
Q tal amigos necesito ayuda… Tengo un codigo de verificacion de datos biometricos en una funcion que necesito se compare el ingreso con los datos de la base y no se donde adherirle esa funcion y como compararle con la base espero me puedan ayudar gracias
Amigo tengo un problema, necesito crear un boton y al dar clik en este se abra otra ventana para mostrar un pdf que tengo en el disco duro del computador donde esta instalado apex, sera que me puedes colaborar con eso!!!
en el codigo que utilizas arriba que es .test?
onChange=»javascript:patronRe = /patron/;if (!patronRe.test(this.value)) {alert(«‘Mensaje de error'»);} else {html_GetElement(«‘P99_SIGUIENTE'»).focus();}»
mi campo se llama P11_EMAIL y quiero validar que el ingreso sea correcto!!!
Esa es la función/propiedad que verifica que el campo cumpla con el patrón proporcionado.