Problema en Access al heredar datos

Tengo 3 tablas:

  • Personas (Id, name)
  • Dias (Id, id_persona, fecha, id_tipo)
  • TipoDia (Id, tipo)

Entre estas tres tablas tengo dos relaciones uno-varios (Personas. Id --> Dias.id_persona)(TipoDia. Id --> Dias.id_tipo)

Para ello tengo 2 formularios:

  • Form1: Cargo los datos de la persona mostrando en el Personas.Id, Personas.name
  • Form2: (ventana emergente desde boton en form1 con Personas.Id=Dias.Id_persona) con los datos Dias.Id_persona, Dias.Id, Dias.fecha, Dias.id_tipo

Mi problema viene que cuando pulso el botón, el form2 no se me abre con un nuevo id (Dias.id), he probado añadiéndole la macro de nuevo registro pero entonces pierdo la herencia del botón.

¿Como puedo crear un nuevo registro de Dias. Id manteniendo los datos heredados como parte del nuevo registro?

1 respuesta

Respuesta
1

No sé como lo tienes construido, pero en el botón puedes poner

DoCmd. OpenForm "dias",,,, acFormAdd, acDialog

O sea, abre el formulario Días en un registro nuevo, con la ventana en modo diálogo. Y luego en el formulario Días, poner en el evento Al activar registro

If IsNull([Id_persona]) Then
Id_persona.DefaultValue = Forms!personas!Id
End If

Así, cuando se abra el formulario Días en un registro nuevo, el valor de campo Id_persona será igual al Id del formulario Personas. Como supongo que el campo Id dela tabla Días es autonumérico, en cuanto pongas, pro ejemplo la fecha, ya le asigna valor.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas