Imprimir el Informe del Registro Actual

Estoy realizando una base de datos de Almacen, tengo el formulario principal llamado Hoja de Recepción, donde capturo los registros principales; lo que requiero es que después de Guardar el Registro, poder imprimir el informe (Llamado Hoja Recep), del registro recién guardado, Podrían Ayudarme por favor. El informe lo llamo desde un Botón

1 respuesta

Respuesta
1

Imagino que tendrás un campo clave que identifique de forma única cada registro. Suponiendo que ese campo se llame ID, de tipo numérico, y que ese campo también lo tengas en el formulario (aunque sea oculto), en el código del evento "al hacer clic" de tu botón pondrías:

DoCmd.OpenReport "Hoja Recep", acViewNormal, ,"ID=" & Me.ID

Si quieres ver el informe en vez de imprimirlo directamente, cambia el acViewNormal por acViewPreview

Si por ejemplo, el campo clave fuera un campo de texto, por ejemplo DNI, el código sería:

DoCmd.OpenReport "Hoja Recep", acViewNormal, ,"DNI='" & Me.DNI & "'"

Buenos Días, disculpa la molestia, este es el código que tengo escrito en el botón:

Private Sub Guardar_Click()

DoCmd.RunCommand acCmdSaveRecord
DoCmd.OpenReport "Hoja Recepcion", acViewPreview, , "PO_Number='" & Me.PO_Number & "'"

End Sub

Al ejecutarlo, me pide el numero de PO_Number, y le doy el numero y me muestra todos registros.

El Id del campo en la base de datos es POR Number, esta definido como Short Text

¿

Podría recomendarme como llevarlo a cabo?

El código es correcto para un dato de texto.

Si te pide el PO_Number, probablemente es porque en tu formulario no haya ningún control ( cuadro de texto o de otro tipo...) que se llame así. Si sacas las propiedades del control del formulario vas a coger el dato, vas a la pestaña "Otras" y fijate en Nombre. Eso es lo que debes poner en el código, en la parte derecha del signo igual

El campo PO Number lo tengo como Short Text, lo puse asi porque manejaria de la siguiente forma 10012-2, 10012-3, te comento esto, porque ya corregi lo del nombre y me mando error de syntaxis

Insisto, si al pulsar el botón te sale una ventana que te dice "Inserte el valor del parámetro PO_Number" o algo parecido, es porque en el formulario (que no en la tabla) no encuentra nada que se llame así. Y si no lo encuentra es porque el cuadro de texto donde tienes el valor por el que filtrar no se llama así. El nombre lo tienes en Propiedades->Otras->Nombre

Si, eso si lo entendí, ya lo corregí y funciono, ya no me lo pide, solo que ahora me mando otro error, te adjunto la imagen

Yo no veo el motivo por el cual me marque ese error

En la tabla el campo cómo se llama: ¿PO Number (con un espacio) o PO_Number (con barra baja)?

Si es la primera, ponlo así:

DoCmd.OpenReport "Hoja Recepcion", acViewPreview, , "[PO Number]='" & Me.PO_Number & "'"

o mejor, aún, cambia el nombre en la tabla para que no tenga espacio, por ejemplo PONumber o PO_Number.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas