Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

Parametros de Informe en VBA

Estas en el tema de Parametros de Informe en VBA en el foro de Bases de Datos General en Foros del Web. Hola a todos. Antes de nada, felicidades por este gran foro. Aunque es la primera vez que escribo/me registro. Os sigo desde hace un tiempo, ...
  #1 (permalink)  
Antiguo 05/12/2010, 14:46
 
Fecha de Ingreso: diciembre-2010
Mensajes: 2
Antigüedad: 13 años, 4 meses
Puntos: 0
Parametros de Informe en VBA

Hola a todos.
Antes de nada, felicidades por este gran foro. Aunque es la primera vez que escribo/me registro. Os sigo desde hace un tiempo, y me parece que aportais muy buenas informaciones/ayudas.

Ahora, expongo mi caso:
Tengo una BD en Access 2003. Con una serie de tablas, consultas e informes. Y me surge una duda a la hora de tratar de abrir un informe con una consulta desde VBA.

La consulta es la que sigue:
SELECT Empresas.NombreEmpresa, PedidoProv.FechaPedido, Articulos.Descripcion, Sum(PedidoProvDet.Unidades) AS SumaDeUnidades, [DESDE FECHA] AS Expr1, [HASTA FECHA] AS Expr2, PedidoProvDet.ReferenciaProducto
FROM Empresas INNER JOIN (PedidoProv INNER JOIN (Articulos INNER JOIN PedidoProvDet ON Articulos.Referencia = PedidoProvDet.ReferenciaProducto) ON PedidoProv.NumeroPedido = PedidoProvDet.NumPedido) ON Empresas.IdCliente = PedidoProv.IdProveedor
GROUP BY Empresas.NombreEmpresa, PedidoProv.FechaPedido, Articulos.Descripcion, [DESDE FECHA], [HASTA FECHA], PedidoProvDet.ReferenciaProducto
HAVING (((Empresas.NombreEmpresa) Like "*" & [NOMBRE EMPRESA] & "*") AND ((PedidoProv.FechaPedido)>=[DESDE FECHA] And (PedidoProv.FechaPedido)<=[HASTA FECHA]))
ORDER BY PedidoProv.FechaPedido, Articulos.Descripcion;


Lo que pretendo hacer es lanzar esta consulta desde VBA, pudiendo obtener los valores de los filtros desde un combobox(Nombre Empresa) y dos textbox(Desde Fecha y Hasta Fecha).

Mis dudas son las siguientes:
-¿El informe que quiero abrir, ¿tiene que tener un origen de datos(consulta), o ese origen de datos se lo mando desde VBA al abrir el informe?
-Yo inserto este codigo
DoCmd.OpenReport "NombreInforme", acViewPreview, consulta, condiciones
Consulta: es un String con la consulta
Condiciones: He probado varios formatos/sintaxis pero no me funciona.
-Las condiciones de filtro del final de la consulta, las que van entre corchetes, ¿debo eliminarlas de la consulta y solo pasarlas como parametros de la instruccion?

No se que hago mal, y no se como solucionarlo.

Gracias por la atencion. Un saludo.
  #2 (permalink)  
Antiguo 06/12/2010, 03:04
 
Fecha de Ingreso: mayo-2009
Mensajes: 742
Antigüedad: 14 años, 10 meses
Puntos: 6
Respuesta: Parametros de Informe en VBA

Hola.

Suponiendo que la consulta es correcta, si quieres ejecutarla desde vba, tendras que poner el origen de datos del informe, la consulta que indicas. Debes ver la propiedad Rowsource.

A esta consulta, ya podras pasarle parametros (filtros) que seran variables que tendras que haber nombrado previamente.

Una vez tengas esto, ejecutas la sentencia que has indicado docmd...etc, etc, etc.

Un saludo.
  #3 (permalink)  
Antiguo 06/12/2010, 05:01
 
Fecha de Ingreso: diciembre-2010
Mensajes: 2
Antigüedad: 13 años, 4 meses
Puntos: 0
Respuesta: Parametros de Informe en VBA

Antes de nada gracias por la respuesta.
Lo siento no entiendo lo que me dices.
Igual no me he explicado bien. Asi que redefino la situacion de la que parto.
-Tengo un formulario con un combobox, completamente funcional, que obtiene el nombre de la empresa desde su tabla.
-Tengo dos textbox DESDE y HASTA al que le introduzco unas fechas
-Tengo la consulta, antes mencionada, que si la ejecuto por si sola, me pide que introduzca los parametros manualmente y me muestra la informacion deseada.
-Tengo un informe vinculado a la consulta que me ejecuta la consulta (pidiendome los parametros manualmente) y me genera el informe.

Y lo que quiero hacer es:
-Generar el informe con dicha consulta, pero no teniendo que pasarle los parametros a la hora de abrir el informe, sino que los tome del combobox y los textbox que estaran rellenados previamente.
Y las dudas son:
-El informe base, ¿debe de estar vinculado por defecto a la consulta o lo tengo que tener sin origen de datos, y cuando ejecute el cmd.openreport meterle ahi la consulta?
-En caso de tener que meter la consulta por VBA, ¿Tengo que incluir los filtros en la consulta, o ponerlos en el argumento de la instruccion separado?
-¿Como le inserto a la consulta, en los valores entre corchetes, la informacion del combobox y los textbox?

Gracias otra vez, y un saludo.

Etiquetas: informe, parametros, vba
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:42.