Vínculos

Queremos introducir un dato en un formulario que hemos diseñado y que este dato aparezca en dos tablas distintas.
Un saludo y gracias de antemano
Respuesta
1
La verdad... escueto si que lo eres... ah! Claro... somos expertos... pero no adivinos!
Bueno... intentaremos imaginarnos lo que no nos has dicho...
Tienes un formulario donde por ejemplo damos de alta un cliente... y este cliente quieres guardarlo en dos tablas distintas..
Lo que haríamos sería que el formulario esté ligado directamente a la primera tabla...
En el evento después de actualizar del formulario deberíamos indicar el siguiente código:
Dim strSql as string, dbs as database
set dbs=currentdb
strSQL="INSERT INTO NombreTabla2 SELECT * FROM NombreTabla1 WHERE NombreTabla1.NombreCampoCodigoCliente=" & Me.NombreCampoCodigoCliente
dbs.Execute, strSql, dbFailOnError
Pero atención! Esto sería correcto si estamos dando de alta un nuevo registro... ¿pero qué pasará si estamos modificando este registro?
el código correcto sería...
Dim strSql as string, dbs as database
'Abrir base de datos
set dbs=currentdb
'Eliminar posible registro en tabla 2
strSQL="DELETE * FROM NombreTabla2 WHERE NombreCampoCodigoCliente=" & me.NombreCampoCodigoCliente
dbs.execute strsql,dbfailonerror
'Agregar registro en tabla 2
strSQL="INSERT INTO NombreTabla2 SELECT * FROM NombreTabla1 WHERE NombreTabla1.NombreCampoCodigoCliente=" & Me.NombreCampoCodigoCliente
dbs.Execute, strSql, dbFailOnError
Se supone que las dos tablas son idénticas..
En caso contrario...
strSQL="INSERT INTO NombreTabla2 (Campo1, Campo2, Campo3)SELECT Campo1, Campo2, Campo3 FROM NombreTabla1 WHERE NombreTabla1.NombreCampoCodigoCliente=" & Me.NombreCampoCodigoCliente
Espero haberte ayudado..
Saludos.
Jordi Pérez i Madern
Mataró (Barcelona)

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas