domingo, 1 de abril de 2012

Máscaras de Entrada: Tratamiento, Personalización y Consideraciones

Las máscaras de entrada son utilizadas en Access para controlar el formato de ingreso de los datos, y así poder facilitar la entrada de estos valores, sobretodo cuando las bases de datos son usadas por un gran número de personas y no siempre se respeta el formato establecido. Por ejemplo, se puede usar un campo Fecha de Nacimiento que muestre el formato __-__-____, y así todos los usuarios están obligados a completar este ámbito antes de continuar. El comportamiento de la máscara depende completamente de quien la haya creado.
·
  • ¿Cómo ingresar una máscara de entrada?
Cuando deseamos darle un formato específico a algún campo de nuestra base, lo seleccionamos tal como muestra la figura y hacemos click en el ícono

Se desprenderá una ventana, la cual solicitará que especifiquemos cuál es la máscara adecuada para nuestro ámbito. En este caso, como nuestro ámbito es la Fecha de Nacimiento seleccionaremos la que más nos acomode con respecto a Fecha (arbitrariamente elegí fecha corta).


Luego de elegir la especificación con la que se desea trabajar, Access guarda nuestro formato y lo expresa como “00-00-0000;0;_” por default.
Sección
Descripción
00-00-0000;0;_
Especifica la máscara de entrada. En la tabla mostrada a continuación se especifican los caracteres que se pueden utilizar.
00-00-0000;0;_
Especifica si Access guarda los caracteres en la base de datos o no. Si utiliza 0 los valores se guardan con los datos. Si se utiliza 1 o se deja en blanco, sólo se muestran los caracteres, y así ahorrar espacio en la base de datos.
00-00-0000;0;_
Especifica el carácter que Access muestra en el espacio que el usuario debe completar.

Sin embargo, nosotros podemos decidir cómo Access debe almacenar nuestros datos, es decir, darle un formato propio a nuestra máscara, como por ejemplo que sea “00/00/0000;0;#”. Para esto, a continuación se especifican los símbolos con los que uno puede trabajar en Access para crear la máscara de entrada necesaria. (Fuente: Microsoft Access)
Carácter
Explicación
0
El usuario debe escribir un dígito (0 a 9).
9
El usuario puede escribir un dígito (0 a 9).
#
El usuario puede escribir un dígito, espacio, signo más o menos. Si se omite, Access escribe un espacio en blanco.
L
El usuario debe escribir una letra.
?
El usuario puede escribir una letra.
A
El usuario debe escribir una letra o un dígito.
a
El usuario puede escribir una letra o un dígito.
&
El usuario debe escribir un carácter o un espacio.
C
El usuario puede escribir caracteres o espacios.
. , : ; - /
Marcadores de posición de decimales y millares, separadores de fecha y hora. El carácter que seleccione dependerá de la configuración regional de Microsoft Windows.
>
Convierte todos los caracteres que le siguen a mayúscula.
<
Convierte todos los caracteres que le siguen a minúscula.
!
Hace que la máscara de entrada se rellene de izquierda a derecha y no de derecha a izquierda.
\
Los caracteres que le siguen inmediatamente se mostrarán literalmente.
""
Los caracteres que están entre comillas dobles se mostrarán literalmente.























Es decir, si yo escribiera la fecha de la siguiente manera “00-00-9999;0;_”, quiere decir que le estoy dando la posibilidad al usuario de escribir o no el año de nacimiento, sin embargo su día y mes es obligatorio.
Para observar dinámicamente cómo crear una máscara de entrada, les dejo el siguiente link:
http://www.youtube.com/watch?v=bupnJIVA-Uo
  • ¿Qué problemas presentan las máscaras de entrada?

Las máscaras de entrada sólo pueden ser utilizadas con tipos de datos de Texto o Fecha, lo que genera bastantes problemas a la hora de especificar el formato y poder trabajar posteriormente
.



Frente a esto, es recurrente que existan problemas al momento de diseñar la máscara de entrada, dado que un número de teléfono, un rut o un tipo de cambio, en el caso de las bases de datos empresariales, estarán expresadas en formato texto.
Por ejemplo, un problema recurrente en las bases de datos se encuentra en la definición del formato de los RUT de las personas. En este caso hay diferentes maneras de especificarlo, por ejemplo “##.###.###-#”, dado que existen personas con RUT mayores a 9.999.999, pero al momento dar la “oportunidad” de que el usuario escriba “04.567.345-7” o “4.567.345-7” se podrían estar generando duplicidades en nuestra base. Lo mismo ocurre con los números telefónicos y los códigos de área: “(##)(#######)” la persona puede escribir como código 02 o simplemente 2.
A continuación se presenta una tabla obtenida de la página web de Microsoft Access (http://office.microsoft.com/es-es/access-help/controlar-los-formatos-de-entrada-de-datos-con-mascaras-de-entrada-HA010096452.aspx), la cual especifican diferentes tipos de máscaras de entrada y cómo los caracteres pueden afectar al formato diseñado, por lo que es recomendable ser cuidadoso al momento de utilizar los caracteres y especificar la máscara de entrada.
máscara de entrada
Proporciona este tipo de valor
Notas
(000) 000-0000
(206) 555-0199
En este caso, es preciso escribir un código de área porque en esa sección de la máscara (000 entre paréntesis) se usa el marcador de posición 0.
(999) 000-0000!
(206) 555-0199
( ) 555-0199
En este caso, en la sección de código de área se utiliza el marcador de posición 9, de manera que los códigos de área son opcionales. Además, el signo de exclamación (!) hace que la máscara se rellene de izquierda a derecha.
(000) AAA-AAAA
(206) 555-TELE
Permite sustituir los cuatro últimos dígitos de un número de teléfono con formato de Estados Unidos por letras. Observe el uso del marcador de posición 0 en la sección de código de área, que hace que el código de área sea obligatorio.
#999
-20
2000
Cualquier número positivo o negativo que no supere los cuatro caracteres y sin separador de millares ni posiciones decimales.
>L????L?000L0
VERDEVE339M3
MAY R 452B7
Una combinación de letras obligatorias (L) y opcionales (?) y números obligatorios (0). El signo de mayor que obliga a los usuarios a escribir todas las letras en mayúscula. Para usar una máscara de entrada como ésta, se debe establecer el tipo de datos del campo de tabla en Texto o Memo.
00000-9999
98115-
98115-3007
Un código postal obligatorio y una sección opcional de cuatro dígitos adicionales.
>L
Cecilia
Cornejo
Un nombre o apellido con la inicial automáticamente en mayúscula.
ISBN 0-&&&&&&&&&-0
ISBN 1-55615-507-7
Un número de libro con el texto literal, el primer y el último dígito obligatorios y cualquier combinación de letras y caracteres entre esos dígitos.
>LL00000-0000
DB51392-0493
Una combinación de letras y caracteres obligatorios, todos en mayúsculas. Utilice este tipo de máscara de entrada para, por ejemplo, ayudar a los usuarios a escribir números de pieza u otras formas de inventario correctamente.
  • ¿Qué es lo recomendable?
Como en muchas cosas la recomendación no es absoluta, dado que va a depender de la base de dato, del uso que se le quiera dar y del rol que cumpla el ámbito al cual le asignamos una máscara de entrada.
Frente a esto se recomienda ser cauto y tomar en cuenta cada posible uso que se le dará a la base, al ámbito, y cuál sería el formato óptimo para el análisis posterior de los datos, es decir, tener presente que al generar una máscara de entrada se debe ser coherente con la base de datos.
Cabe mencionar que posteriormente se le puede cambiar el tipo de dato al ámbito, sin embargo de fecha pasarán a ser texto automáticamente todos los datos de ese ámbito, o viceversa, tal como lo muestra la figura.



No hay comentarios:

Publicar un comentario