Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

pasar parametro a un informe

1,533 views
Skip to first unread message

b_a_s_a_g_o

unread,
Sep 10, 2008, 3:28:00 AM9/10/08
to
Hola,
Tengo un informe vinculado a una consulta a la que le paso un parámetro
"numero_serie".
Cuando ejecuto ese informe, introduzco el "numero _serie" y me muestra la
información relacionada a ese parametro en concreto. Hasta aqui correcto.
El problema es que quiero se me muestre ese informe desde un formulario con
un boton que ejecuta un macro con la funcion "Abrir Informe" y que coja el
parametro desde un campo del formulario.
Alguien tiene alguna idea

Gracias


xavi

unread,
Sep 10, 2008, 4:02:15 AM9/10/08
to
Hola,

Creo que uno de los argumentos de la acción de macro "Abrir informe" es la
condición WHERE. Mediante ella puedes filtrar el informe al dato del campo
del formulario. Consulta la ayuda para más información.


--
Un saludo

Xavi
http://www.llodax.com
http://www.mvp-access.com/foro


"b_a_s_a_g_o" <bas...@discussions.microsoft.com> escribió en el mensaje de
noticias:81F5C1FB-A2DF-481D...@microsoft.com...

b_a_s_a_g_o

unread,
Sep 10, 2008, 4:45:01 AM9/10/08
to
He probado con [serial] y con [Variables temporales]![serial] en el campo
WHERE pero no ha funcionado.
Como se referencia un cuadro de texto desde una macro?

"xavi" escribió:

Ju@nK [MVP 2005/8]

unread,
Sep 10, 2008, 5:07:04 AM9/10/08
to
Puedes establecer criterios de apertura, ej.

dim rptName as string
dim strCondicion as string
rptName = "TuFormulario"
strCondicion ="[numero_serie] = " & me.numero_serie
'campo clave existente en el formulario
docmd.OpenReport rptName,acViewPreview,,strCondicion,acWindowNormal

--
--
**
Salu2/Regards
Ju@nK [MVP Access] 2006/08
[DCE2003 ***] + VSTO [DCE2005 **]
http://juank.mvps.org http://www.juank.es
Correos personales o preguntas particulares en mi grupo
http://groups.google.es/group/juank?hl=es
www.juank.tk
¿Que es un MVP?, entérate en http://mvp.support.microsoft.com
**


"b_a_s_a_g_o" <bas...@discussions.microsoft.com> escribió en el mensaje

news:C7C1753B-AAB2-4F87...@microsoft.com...

b_a_s_a_g_o

unread,
Sep 10, 2008, 5:57:02 AM9/10/08
to
Gracias por vuestro interes, pero no lo consigo.
Sigue preguntandome por el parametro numero_serie igual que cuando abro el
informe o la consulta relacionada independientemente.
Otra opcion seria que la consulta no pidiera ningun parametro y filtrarlo
entonces por la macro pero tampoco lo consigo.
Alguna otra idea
>

RGil

unread,
Sep 10, 2008, 7:47:35 AM9/10/08
to
prueba poner este código al botón

Dim cadNombreDocumento As String
Dim cadCriterioVínculo As String
Const conImpresiónCanceladaPorUsuario = 2501

If IsNull(numero_serie) Then
MsgBox "No hay documento que imprimir."
Else
cadNombreDocumento = "NOMBRE_INFORME"
cadCriterioVínculo = "numero_serie = " & numero_serie
DoCmd.OpenReport cadNombreDocumento, acViewNormal, ,
cadCriterioVínculo
End If

A mi me funciona

"b_a_s_a_g_o" <bas...@discussions.microsoft.com> escribió en el mensaje de

noticias:298B8FC4-75C2-48F8...@microsoft.com...

Ju@nK [MVP 2005/8]

unread,
Sep 10, 2008, 9:29:11 AM9/10/08
to
Es lo mismo que le puse yo, el problema lo tienes en que en la consulta
origen del informe tienes algo en la sección criterios, prueba a quitarselo
o ponle la ruta completa del control que tiene el valor que quieres
utilizar, ej.:

forms!TuFormulario!numero_serie

suponiendo que numero_serie es un control que tiene el valor numero_serie y
está en el formulario TuFormulario y este está abierto.

--
--
**
Salu2/Regards
Ju@nK [MVP Access] 2006/08
[DCE2003 ***] + VSTO [DCE2005 **]
http://juank.mvps.org http://www.juank.es
Correos personales o preguntas particulares en mi grupo
http://groups.google.es/group/juank?hl=es
www.juank.tk
¿Que es un MVP?, entérate en http://mvp.support.microsoft.com
**

"RGil" <ricar...@llaudes.org> escribió en el mensaje
news:%23FTyNsz...@TK2MSFTNGP04.phx.gbl...

julian-vlc-sp

unread,
Sep 10, 2008, 4:02:58 PM9/10/08
to
===========================================
¡Importante!: Colabora con el grupo.Contesta a este mensaje
y dinos si te sirvió o no la respuesta dada. Muchas gracias.
===========================================

Parto de la base de que en un formulario que llamaremos Formulario1 tienes
un control (cuadro de texto) que llamaremos TuControl y en el cual
escribirás el numero de serie.

Como el numero de serie solo está escrito en el control del formulario, no
podemos cerrar el formulario hasta que no hayamos visto y/o enviado a la
impresora el informe.

Para referirnos al numero de serie que has escrito en el control del
formulario lo haremos de la siguiente forma:

Forms!Formulario1!TuControl

Ahora viene tu pregunta:

¿Que le pongo a un botón que esta en el Formulario1 para que abra un informe
y que coja el parámetro del control TuControl?

Una opción es hacerlo por código como te han dicho diciéndole en el código
del botón que

El campo de la consulta que tiene el numero de serie sea igual a

Forms!Formulario1!TuControl

Esta opción tiene la ventaja de que en la consulta no tienes criterios y por
tanto desde otro botón o formulario puedes abrir el mismo informe pero esta
vez filtrándolo por otro campo.

Otra opción es hacerlo con una macro como también te han indicado, en la
macro asociada al botón cuando le digas que quieres abrir un informe además,
en las opciones que aparecen abajo, puedes ponerle que:

El campo de la consulta que tiene el numero de serie sea igual a

Forms!Formulario1!TuControl

Este opción es muy parecida a la anterior, en la consulta no tenemos filtros
y desde otro botón puedes abrir el informe con otra macro y en esta nueva
macro filtrar el informe por otro campo.

Otra opción, puede que mas fácil pero que condena la consulta a filtrar
siempre por el control TuControl del Formulario1 es:

En la consulta, en el campo que contiene el numero de serie le pones como
criterio

Forms!Formulario1!TuControl

En el botón, ayudado por el asistente le indicas que quieres abrir el
informe y listo.

Al abrir el informe este leerá de la consulta, la consulta antes de mandar
los datos al informe leerá el control del formulario (que debe estar
abierto) y enviará al informe solo los datos que tu deseas.


SALUDOS.
Julián-Valencia-España
http://www.tinyurl.com/julianvalencia


"b_a_s_a_g_o" <bas...@discussions.microsoft.com> escribió en el mensaje

news:81F5C1FB-A2DF-481D...@microsoft.com...

0 new messages