Hacer un informe por número de presupuesto

Mi consulta era referente a cómo se puede montar un informe de manera que me imprima un determinado registro.
En mi caso he hecho una base de datos para presupuestos, en este presupuesto introduzco en el formulario datos del cliente, y en tres subformularios, los datos del presupuesto y condiciones, mano de obra, y materiales, y al final me calcula el total del presupuesto.
Y ahora supongo que tendría que realizar una consulta con todos los datos que me la ordene por número de presupuesto, pero no se como puedo costruirla, ni cómo construir dicho informe.

1 Respuesta

Respuesta
1
Pues entras en el diseñador de consultas, agregas las tablas que necesites y a darle. Con el informe lo mismo, entras en el diseñador, asistente etc.
Luego preguntas dudas.
Gracias, hasta ahí estaba más o meos claro, pero el problema es que si hago eso me salen todos los presupuestos, y lo que yo necesitaría es como un botón en el formulario, que me imprima dicho registro tan sólo.
Un saludo
A ver, supongamos que el campo que identifica al presupuesto se llama idpres y que el informe se llama infpres. Habrás puesto un botón en el formulario con un código tal que así:
Dim stDocName As String
stDocName = "infpres"
DoCmd.OpenReport stDocName, acPreview
pues bien debes poner
Dim stDocName As String
stDocName = "infpres"
DoCmd.OpenReport stDocName, acPreview,,"idpres=" & me.idpres
evidentemente llamando a cada campo por su nombre.
Buenas tardes, estaba haciendo la consulta, y he visto que como tengo varios subformularios (Materiales, Mano de obra y detalles del presupuesto) al unirlos en la consulta como los he puesto y ponerles las relaciones necesarias, me duplica los registros de esta consulta que he creado. Supongo que es porque si pongo tres lineas de materiales y nueve de trabajos, me duplica los materiales, hasta llegar a los nueve.
No sé realmente como tengo que hacerlo. Lo que he hecho en la consulta, es unir las consultas; detalles de materiales, detalle de trabajos, anexo presupuesto, y la consulta detalle de presupuestos, mediante el campo nº de presupuesto.
En detalles de materiales y detalle de trabajos se añaden las líneas del presupuesto según el número de presupuesto, cuya información se rescata de las tablas materiales y trabajos, y se añaden en los subformularios antes indicados.
Anexo de presupuestos, se añaden las características técnicas del presupuesto, y detalle de presupuestos contiene el número de presupuesto y los datos del cliente.
Espero que me puedas echar una mano
Gracias de antemano
Hola otra vez, me faltaba decir, que me disculpases, ya que cuando he dicho que lo tenía más o menos claro lo de la consulta y el informe, no me había dado cuenta del problema con la consulta, y al terminar el informe y probarlo, me he dado cuenta de que no cuadraba algo, y que lo que pasaba era, que la consulta me duplicaba los registros.
Un saludo
Si te salen registros duplicados es por que la consulta la tienes mal hecha, te faltan enlaces o condiciones.
Buenas tardes. ¿Cómo harías tu una consulta para unir los datos qué necesito? Mra esta es la sentencia sql que tengo puesta para la consulta del informe, que es dónde me duplica los datos:
SELECT DISTINCTROW DetallesDePresupuestosConsulta.Id, DetallesDePresupuestosConsulta.NºPresupuesto, DetallesDePresupuestosConsulta.Empresa, DetallesDePresupuestosConsulta.Cif, DetallesDePresupuestosConsulta.Dirección, DetallesDePresupuestosConsulta.CodPostal, DetallesDePresupuestosConsulta.Población, DetallesDePresupuestosConsulta.Provincia, DetallesDePresupuestosConsulta.País, DetallesDePresupuestosConsulta.NombreContacto, DetallesDePresupuestosConsulta.Móvil, DetallesDePresupuestosConsulta.Teléfono, DetallesDePresupuestosConsulta.Fax, DetallesDePresupuestosConsulta.ObservacionesCliente, DetallesDePresupuestosConsulta.EMail, DetallesDePresupuestosConsulta.FechaPresupuesto, DetallesDePresupuestosConsulta.Recargo, DetallesDeMaterialesConsulta.Id, DetallesDeMaterialesConsulta.NºPresupuesto, DetallesDeMaterialesConsulta.CódigoMaterial, DetallesDeMaterialesConsulta.DescripciónProducto, DetallesDeMaterialesConsulta.Categoría, DetallesDeMaterialesConsulta.[Precio/Ud], DetallesDeMaterialesConsulta.Unidades, DetallesDeMaterialesConsulta.Observaciones, DetallesDeMaterialesConsulta.SubTotal, DetallesDeManoDeObraConsulta.Id, DetallesDeManoDeObraConsulta.NºPresupuesto, DetallesDeManoDeObraConsulta.ReferenciaManoDeObra, DetallesDeManoDeObraConsulta.DescripciónManoDeObra, DetallesDeManoDeObraConsulta.PrecioHora, DetallesDeManoDeObraConsulta.Horas, DetallesDeManoDeObraConsulta.SubTotal, [AnexoPresupuesto Consulta].Id, [AnexoPresupuesto Consulta].CavidadesMolde, [AnexoPresupuesto Consulta].MaterialPlacas, [AnexoPresupuesto Consulta].MaterialPostizos, [AnexoPresupuesto Consulta].AcabadoSuperficial, [AnexoPresupuesto Consulta].Refrigeración, [AnexoPresupuesto Consulta].TipoInyección, [AnexoPresupuesto Consulta].Expulsión, [AnexoPresupuesto Consulta].FormaDePago, [AnexoPresupuesto Consulta].PlazoEntrega, [AnexoPresupuesto Consulta].Otros, [AnexoPresupuesto Consulta].NºPresupuesto
FROM [AnexoPresupuesto Consulta] RIGHT JOIN ((DetallesDePresupuestosConsulta LEFT JOIN DetallesDeManoDeObraConsulta ON DetallesDePresupuestosConsulta.NºPresupuesto = DetallesDeManoDeObraConsulta.NºPresupuesto) LEFT JOIN DetallesDeMaterialesConsulta ON DetallesDePresupuestosConsulta.NºPresupuesto = DetallesDeMaterialesConsulta.NºPresupuesto) ON [AnexoPresupuesto Consulta].NºPresupuesto = DetallesDePresupuestosConsulta.NºPresupuesto;
No se decirte, pero sigo sin entender que no puedas resolverlo. Te faltara alguna relación, piensa o prueba.
El tema que estoy viendo es, que haga como haga la relaciones en las consultas, veo que siempre me está igualando las dos partes, tanto de materiales como de mano de obra, de forma que si he escrito 5 líneas en el subformulario de materiales y diez en el de mano de obra, en ésta consulta, me devuelve diez registros con datos de mano de obra y materiales, rellenando los campos que deberían estar vacíos con los campos de materiales que son los que menos tenía. También puede pasar al revés.
Tu problema reside en que tienes dos tablas (mano de obra y materiales) donde deberías tener solo una, o bien considerar la mano de obra un material más (la unidad sería una hora) o bien en la tabla de materiales pones un campo para poner las horas de mano de obra o algo así.
Lo normal de un presupuesto es:
Datos del cliente (una tabla)
Relación de acciones (otra tabla)
Unidades material precio unidad total
...4........    xxxxxx             10                          40
etc. pues una esas xxxx  sería mano de obra.
Muchas gracias por todo, aunque necesito que estén separados la mano de obra y los materiales. Así que lo que voy a hacer es hacer dos informes por separado, uno de la mano de obra y otro de los materiales.
Un saludo

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas