** NORMAS DEL FORO **
Inicio del foro Inicio del foro > Access y VBA > Access y VBA
  Mensajes nuevos Mensajes nuevos RSS - Duda sobre Formato en Form & Tabla
  Preguntas frecuentes Preguntas frecuentes  Buscar en el foro   Eventos   Registro Registro  Iniciar sesion Iniciar sesion

Duda sobre Formato en Form & Tabla

 Responder Responder
Autor
Mensaje
oecruz Ver desplegable
Nuevo
Nuevo
Avatar

Unido: 14/Enero/2021
Localización: Costa Rica
Estado: Sin conexión
Puntos: 17
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita oecruz Cita  ResponderRespuesta Enlace directo a este mensaje Tema: Duda sobre Formato en Form & Tabla
    Enviado: 22/Enero/2021 a las 11:09
Hola. Soy novato.
Tengo un formulario, con este código en un evento:

Private Sub TipoDocumento_Selector_AfterUpdate()


Select Case TipoDocumento_Selector

Case "Física"
Me.Identificacion_Data.InputMask = "0\-0000\-0000\"
Me.Identificacion_Data.Value = ""

Case "Jurídica"
Me.Identificacion_Data.InputMask = "0\-000\-000000\"
Me.Identificacion_Data.Value = ""


End Select
End Sub


El asunto es que ese código me registra en el formulario el número de identificación de cada cliente de modo correcto, con los guiones donde van si existen. Sin embargo en la tabla, se registran sin formato, entonces cuando lo paso a un reporte, esos van también sin formato.
Por ende, un número que debería leerse:

3-101-999999 se ve así: 3101999999 lo que hace más difícil su lectura.

¿Existe manera de que esos formatos sean escritos tal cual en la tabla y que no cambien el orden de los guiones cuando existen? Como ven tengo varios tipos de formato (4) no solo la física y la jurídica.

Agradeceré toda la ayuda posible, con pautas para novatos.
Mil gracias.
OC.
Arriba
mounir Ver desplegable
Colaborador
Colaborador


Unido: 09/Febrero/2009
Localización: Asturias-España
Estado: en línea
Puntos: 6095
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita mounir Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 22/Enero/2021 a las 19:40
Hola!

En la tabla el campo "Identificacion_Data" tiene que ser de tipo Texto, y su máscara de entrada así (C\-CCC\-CCCCCC), donde la letra "C" sustituye el "0", la letra "C" en máscara de entrada permite que valor que se introduzca sea opcional.
Siempre puedes añadir "C" para aparcar todos los formatos.
Con todo lo anterior no hace utilizar el código VBA para la máscara de entrada por que lo heredas de la tabla.


Edito para dejarte mas información sobre el tema.


Toturial de Máscara de Entrada

Editado por mounir - 22/Enero/2021 a las 20:07
Un Saludo.
Arriba
oecruz Ver desplegable
Nuevo
Nuevo
Avatar

Unido: 14/Enero/2021
Localización: Costa Rica
Estado: Sin conexión
Puntos: 17
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita oecruz Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 22/Enero/2021 a las 21:40
Mounir, gracias por tu respuesta.

Si te entiendo bien, el registro de los números sin formato, viene de usar el VBA para organizar cómo lucen en el formulario ¿Correcto?

Esto lo hice, pues entiendo que cada control en el formulario, solo tendría una opción de máscara de entrada, por lo que me movía  VBA.

Actualmente tengo 5 formatos de número de identidad, en el ejemplo arriba escribí solo dos. Estos serían:

"0\-0000\-0000\" (Para de personas)

 "0\-000\-000000\" (Para de empresas)

"00000000000#\" (Para de extranjeros)

"0000000000\" (Para de empresas extrajera em el país)

 "0\-0000\-0000####\" (Para todo lo demás)

Entonces, me queda la duda de cómo introducir el formato en la máscara de entrada, si tengo 5. ¿No es posible o sí?

Mil gracias nuevamente, por la ayuda.
Quedo agradecido.

OC.
Arriba
xavi Ver desplegable
Administrador
Administrador
Avatar
Terrassa-BCN

Unido: 10/Mayo/2005
Localización: Catalunya ||||
Estado: Sin conexión
Puntos: 13720
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita xavi Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 22/Enero/2021 a las 22:06
Sobre esto...
Publicado originalmente por oecruz oecruz escribió:

¿Existe manera de que esos formatos sean escritos tal cual en la tabla y que no cambien el orden de los guiones cuando existen? Como ven tengo varios tipos de formato (4) no solo la física y la jurídica.

La propiedad InputMask tiene 3 argumentos:
- la propia máscara
- como se almacenan los valores
- el carácter marcador

Centrémonos en el segundo argumento que admite 0 o 1. 
- 0 implica almacenar los datos incluyendo la máscara (guiones, paréntesis)
- 1 o blanco, sólo almacenará los caracteres

Dado que tu no indicas nada en la asignación de la propiedad, se asume blanco y, por ende, solo almacena los caracteres.

En la ayuda (esa gran ignorada) de InputMask viene perfectamente explicado. Escribes InputMask y pulsas F1. Mano de santo.

Un saludo
Xavi, un minyó de Terrassa

Mi web
Arriba
mounir Ver desplegable
Colaborador
Colaborador


Unido: 09/Febrero/2009
Localización: Asturias-España
Estado: en línea
Puntos: 6095
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita mounir Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 22/Enero/2021 a las 22:21
Hola!

Así se complica bastante para obtener varias máscaras de entrada para un campo.

Una solución sería aplicar el mismo código del formulario en el informe en el evento al abrir o similar así lo tienes en el informe pero no en la tabla.

Si te animas a trabajar un poco más y tener el formato también en la tabla descárgate este ejemplo en inglés

http://www.rogersaccesslibrary.com/forum/uploads/37/InputMask_Dynamic.zip
Un Saludo.
Arriba
 Responder Responder
  Compartir tema   

Ir al foro Permisos de foro Ver desplegable