Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

Rellenar campo automáticamente una vez introducido otro en ACCESS

Estas en el tema de Rellenar campo automáticamente una vez introducido otro en ACCESS en el foro de Bases de Datos General en Foros del Web. Hola, He estado googleando y mirando post parecidos sobre mi consulta. Uno que se le parece bastante es [URL="http://www.forosdelweb.com/f21/rellenar-campo-automaticamente-access-604945/"]http://www.forosdelweb.com/f21/rellenar-campo-automaticamente-access-604945/[/URL] pero no logra solucionar mi problema. ...
  #1 (permalink)  
Antiguo 04/08/2010, 04:17
 
Fecha de Ingreso: agosto-2010
Mensajes: 5
Antigüedad: 14 años, 4 meses
Puntos: 1
Rellenar campo automáticamente una vez introducido otro en ACCESS

Hola,

He estado googleando y mirando post parecidos sobre mi consulta. Uno que se le parece bastante es

[URL="http://www.forosdelweb.com/f21/rellenar-campo-automaticamente-access-604945/"]http://www.forosdelweb.com/f21/rellenar-campo-automaticamente-access-604945/[/URL]

pero no logra solucionar mi problema.

Uso access 2007, y lo que quiero es a priori bastante simple:

Tengo un campo numérico llamado partida, y lo que quiero es que cuando se rellene ese campo desde un formulario, se rellene automáticamente otro campo numérico llamado tresDigPart, con los 3 primeros dígitos del campo partida.

Esto en pl/sql, por ejemplo, lo haría con un TRIGGER AFTER UPDATE, pero para hacer algo "equivalente", o mejor dicho parecido, en ACCESS (que sinceramente no lo domino mucho), he pensado en llamar a un procedimiento que ejecute un código en Visual Basic después de actualizar el campo partida. No sé si habrá alguna otra forma de mejor hacerlo con macros o similares, pero no lo he encontrado.

Explico los pasos que he hecho para hacerlo con sus imágenes:

1) Abrir las propiedades del campo en el formulario, seleccionar el evento "después de actualizar", y en el icono de los puntos suspensivos marcar generador de código.




2) Escribir el código que se ve en la imágen




Private Sub partida_AfterUpdate()
Me.tresDigPart = Mid(Me.partida, 1, 3)
End Sub

Pues bien, cuando guardo y vuelvo al ACCESS, que imagino que ya se ha guardado el procedimiento del evento. Abro el formulario, inserto el campo partida en un nuevo registro, y el campo tresDigPart sigue exactamente igual, sin ningún campo.
Pensé que podría ser porque es un procedimiento "después de actualizar", y no "después de insertar", pero he probado con registros existentes y lo mismo.

Me equivoco en algún paso o en el código? Hay otra forma mejor de hacerlo?

Si logro que me funcionara esto, como el campo tresDigPart es clave foranea, también me interesaría que se creara un registro en otra tabla que tiene como clave principal este mismo campo
Resumiendo, cuando el usuario ponga el número de la partida en el formulario, el sistema debe hacer automáticamente esto:

1) Rellenar el campo tresDigPart con los 3 primeros dígitos del número de la partida (lo que pretendo hacer con lo que he mostrado antes).
2) Crear un registro en una tabla XXX donde su clave principal sea este campo.

Saludos y gracias de antemano

Última edición por t1tanium; 05/08/2010 a las 01:41
  #2 (permalink)  
Antiguo 02/09/2010, 03:56
 
Fecha de Ingreso: septiembre-2010
Mensajes: 1
Antigüedad: 14 años, 3 meses
Puntos: 0
Respuesta: Rellenar campo automáticamente una vez introducido otro en ACCESS

¿Has probado a hacer lo mismo con un campo calculado?
tresDigPart: Izq([partida];3)
  #3 (permalink)  
Antiguo 13/07/2012, 22:44
 
Fecha de Ingreso: septiembre-2009
Ubicación: CONCEPCIÓN CHILE
Mensajes: 4
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: Rellenar campo automáticamente una vez introducido otro en ACCESS

Bueno siempre un poco tarde pero, seguro q le servirá a alguien.
Tu código en VBA Access 2007 está bien hecho o sea:

Private Sub Texto13_AfterUpdate()
Me.Texto15 = Mid(Me.Texto13, 1, 3)
End Sub

No debes olvidar que ambos campos deben tener un origen de control de una Tabla cualquiera, de lo contrario cuando cierres tu Form, los datos se perderán

Saludos desde CONCEPCIÓN - CHILE

www.bio-soft.cl

Etiquetas: access, rellenar, campos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 21:16.