Access - Error en Informe de un solo registro de formulario

 
Vista:
sin imagen de perfil

Error en Informe de un solo registro de formulario

Publicado por Jaime (1 intervención) el 25/02/2017 13:28:28
Buenos días,

Espero que mi pregunta sea sencilla.

Tengo un formulario (el cual esta rellenado por los datos de un contacto) el cual tiene un botón en el encabezado del formulario que "crea" un INFORME de dicho contacto. No de TODOS los contactos, si no solo del registro que está en el formulario abierto. Para que esto ocurra cree una consulta que cogiera los datos del formulario, y a su vez que el informe esté vinculado con esa consulta. Esto esta explicado en el foro ->(http://www.lawebdelprogramador.com/foros/Access/341948-Imprimir-un-solo-registro-con-acces.html).

El problema es el siguiente, si en el formulario dejo uno de los campos a rellenar vacío (por ejemplo, la dirección o el teléfono móvil) el informe que se genera está completamente en blanco, no apareciendo ninguno de los datos, ni los que SI están rellenados. En cambio, si el formulario está perfectamente cumplimentado y no falta ningún dato, se genera correctamente el informe.

PD: En la consulta el criterio que tengo puesto, por ejemplo [Formularios]![Formulario]![Teléfono] en el dato que recoge el teléfono.
Un saludo y gracias de antemano.
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
sin imagen de perfil
Val: 756
Plata
Ha mantenido su posición en Access (en relación al último mes)
Gráfica de Access

Error en Informe de un solo registro de formulario

Publicado por Jesús Manuel (375 intervenciones) el 27/02/2017 13:47:22
Si todos los campos de tu consulta son del tipo [Formularios]![Formulario]![Teléfono] lo que haces es filtrar la consulta por cada campo, con lo que creo que el error de que el formulario salga blanco viene de aquí.

No tienes un campo ID o una clave que filtrar solo por 1 campo? Por mi parte crearía la consulta con los campos que quiero en el informe, crearía el informe a partir de la consulta y luego abriría el informe a partir del registro del formulario por el campo ID o clave maestra.


Pongamos que tienes un campo id al que llamamos idContacto, que es tipo autonumerico, en el botón que llama al informe ponemos el siguiente código:

DoCmd.RunCommand acCmdSaveRecord ' Con esto nos aseguramos de guardar el registro antes de abrir el informe
DoCmd.OpenReport "NombredelInforme", acViewPreview, , "[idContacto]=" & Me.idContacto

Tendrías que adaptar los nombres de los campos y del informe.

[idContacto] es el campo en el informe y Me.idContacto es el campo en el formulario, por si has hecho cambios en los nombre de los campos



Si en lugar del campo id tienes un NumeroPasaporte, en este caso es un campo tipo texto, tendrías que variar la forma de construir el comando anterior tal que:

DoCmd.RunCommand acCmdSaveRecord
DoCmd.OpenReport "NombredelInforme", acViewPreview, , "[NumeroPasaporte]='" & Me.NumeroPasaporte & "'"
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