Access - consulta difícil

   
Vista:

consulta difícil

Publicado por Guadalupe Ricardo (2 intervenciones) el 30/09/2010 19:09:49
Soy nueva en access y estoy tratando de hacer un sistema de control de inventarios de un almacén. Quiero hacer una consulta que me despligue las existencias de todos los materiales que hay hasta la fecha. La tablas que tengo son: MATERIALES- campo: nombre de material(clave principal); ENTRADA MATERIALES- campos: Id_entrada_material(clave principal), fecha, documento, folio, proveedor, nombre del material, unidad, cantidad entrada, precio unitario, porcentaje, maestro, partida; SALIDA MATERIALES- campos: Id_salida_material(clave principal), fecha, cantidad, Id_entrada_material. Los materiales puden tener varias entradas y estas varias salidas pero cada salida debe ser sobre las primeras entradas. Espero me puedan ayudar, gracias.
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

RE:consulta difícil

Publicado por Carlos Q. (40 intervenciones) el 06/10/2010 22:35:10
Buen dia
En en URL de arriba(http://cid-a2250775416d25f9.office.live.com/browse.aspx/.Public) encuentra el ejemplo llamado "Consulta Cruce" ,donde esta lo que le explico a continuacion.
Primero se crea una consulta(qryTotalSalidaPorIDEntrada) que agrupa por id de entrada y calcula la suma de catidad de la tabla tblSalidaMatriales el codigo es:

SELECT tblSalidaMateriales.IdEntradaMaterial, Sum(tblSalidaMateriales.salCantidad) AS SumaDesalCantidad
FROM tblSalidaMateriales
GROUP BY tblSalidaMateriales.IdEntradaMaterial;

Despues se crea una consulta(qrySaldoMaterialPorIDEntrada) con la consulta que acaba de crear (qryTotalSalidaPorIDEntrada) y la tabla tblEntradaMateriales y que agrupa por Id de entrada y muestra el saldo que queda el codigo es:

SELECT tblEntradaMateriales.Id, tblEntradaMateriales.matNombreMaterila, tblEntradaMateriales.entCantidadEntrada, qryTotalSalidaPorIDEntrada.SumaDesalCantidad, [entCantidadEntrada]-[SumaDesalCantidad] AS Saldo
FROM qryTotalSalidaPorIDEntrada INNER JOIN tblEntradaMateriales ON qryTotalSalidaPorIDEntrada.IdEntradaMaterial = tblEntradaMateriales.Id;

Y por ultimo crea una consulta( qrySaldoMaterial) que se basa en la consulta anterior (qrySaldoMaterialPorIDEntrada) que hace una sumatoria de saldo por NombreMaterial el codigo es:

SELECT qrySaldoMaterialPorIDEntrada.matNombreMaterila, Sum(qrySaldoMaterialPorIDEntrada.Saldo) AS SumaDeSaldo
FROM qrySaldoMaterialPorIDEntrada
GROUP BY qrySaldoMaterialPorIDEntrada.matNombreMaterila;

Todo esta en el ejemplo Consulta Cruce.
Es necesario tener en cuenta que funciona en esta estructura propuesta solo si por cada "Id_entrada_material" entra un solo tipo de material.

Espero le sea de ayuda ,Chao.
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

RE:consulta difícil

Publicado por Guadalupe ricardo (2 intervenciones) el 14/10/2010 02:06:12
muchas gracias por la información me ha sido de gran ayuda. De verdad le agradezco
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