Access - Ayuda para estudiante de programador

   
Vista:

Ayuda para estudiante de programador

Publicado por lucho (2 intervenciones) el 01/11/2008 16:32:34
Hola a todos y muchas gracias desde este momento. Les cuento que tengo que hacer un form de ingreso en un trabajo prático de la facu. Diseñé mi estructura de la BD, mis formularios ABMs y estoy en el punto dónde debo hacer las modificaciones finales. Tengo un formulario de alta, que tiene como origen una consulta armada por varias tablas. Algunos de los campos de formulario deben existir en una tabla para poder agregar el registro sin problemas. Por ej. uno de los cuadros de texto guarda un código de empleado que debe existir en la tabla empleados. Al hacer click en un botón agregar el registro se debe agregar si dicho codigo de empleado exite en la tabla. De lo contrario access informa que no se encontro dicho código en la tabla empleados. Me parecía todo bien hasta que mi profe me pidió que esa comprobación no se haga al final sino al pasar al siguente control de mi form. Así que me mató!. Entonces mi pregunta es la siguiente:
Cómo validar el contenido de un control al salir de él?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Ayuda para estudiante de programador

Publicado por mi menda (1111 intervenciones) el 01/11/2008 17:23:09
Hola

Sería una cosa así. En el evento después de actualizar del control:

Dim blnCodigo As Boolean

blnCodigo = Nz(DLookup("CodigoEmpleado", "NombreTabla o Consulta", "CodigoEmpleado =" & Me.CodigoEmpleado), 0)

If Not blnCodigo Then
MsgBox "El código del Empleado no es valido"
End If

Donde CodigoEmpleado es el nombre del campo codigo empleado en la tabla o consulta
Me.CodigoEmpleado es el nombre del control en el formulario

Funcionará si el campo CodigoEmpleado es Númerico, sí fuera de texto lo tendrias que entrecomillar como en una where de sql.
"CodigoEmpleado = ' " & Me.CodigoEmpleado & " ' ")

Un saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Para Mi menda

Publicado por lucho (2 intervenciones) el 01/11/2008 21:06:54
Mi menda muy agradecido con vos... me funcioná muy bien lo único que faltaría es poder obligar al operador a que ingrese sí o sí un código de empleado válido. Así cómo me lo das está muy bien porque informa que no existe el código, pero pasa el foco al siguiente control y pueden seguir con la carga! ESPERO NO MOLESTARTE , DE TODOS MODOS YA CUMPLO CON LO QUE EL PROFE ME PIDE, este pedido sólo es personal.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Para Mi menda

Publicado por mi menda (1111 intervenciones) el 03/11/2008 00:58:46
Hola

supongo que con esto bastará:

If Not blnCodigo Then
MsgBox "El código del Empleado no es valido"
Me.OtroControl.SetFocus
Me.CodigoEmpleado.SetFocus
End If

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar