Datos duplicados en vez de campo nulo en una consulta de Access

Estoy haciendo un inventario de stock con Access 2013, y tengo las tablas que corresponden a Productos; Entradas y Salidas, y he hecho consultas de las Entradas (con todos los registros entrantes), Salidas (con todos los registros salientes), Total Entrada (la agrupación de productos y suma de cantidades entrantes) Total salida (la agrupación de productos y suma de cantidades saliendo) y para averiguar el stock lo que hago es crear una nueva consulta Stock y resto las cantidades sumadas entrantes de la consulta Total entrada a las cantidades sumadas de la consulta Total Salida.

El problema que tengo es si tengo un producto  A (cantidad entrada 100) y Salida de 50 me da correctamente 50 pero si añado un producto B con entrada 200 y SIN SALIDA me devuelve el valor de Salida del producto A(50) y me lo resta. No llego a hacer que me ponga un valor nulo he intentado con la función Nz pero no se muy bien donde ponerla como las consultas de totales Salida y Entrada son independientes seria en la consulta Stock: [Total Entrada]- (Nz([Total Salida])) pero los intentos que he hecho me devuelven lo mismo. He intentado también en los criterios poner =SiInm(EsNulo([Total Salida]);0;[Total Salida]) pero tampoco me funciona y lo he probado también en el campo consulta de la siguiente manera SiInm(IsNull(Salidas.[Total Salida]);0;Salidas.[Total Salida])  pero me devuelve lo mismo.

Las tablas de Entrada y Salida están relacionadas a la de Producto pero independientes entre si.

Producto Total Entrada Total salida

A               100                   50

B               200                 (En vez de 0 o Nada me devuelve 50 de A)

He probado una combinación de 3 productos para ver lo que me devuelve.

Lo que quiero obtener

Producto  Total entrada  Total Salida   Stock

A             100                  50               50

B             200                 (no hay)        200

C             500                  250             250

Lo que me devuelve

Producto  Total entrada  Total Salida     STOCK

A             100                  50                50

B             200                  50               150

C             500                  50               450

A             100                  250             -150

B             200                  250              -50

C             500                  250             250

Lo que no entiendo es porque por separado las consultas me devuelven los valores correctos y cuando hago las operaciones con ellas (total entradas y total salidas) se me duplican los resultados. No soy un usuario muy avanzado, y no entiendo porque me hace eso. Parece que percibe las operaciones como con registros diferentes y duplica las operaciones, como si

3 registros entrantes x 1er registro de salida

3 registros entrantes x 2ndo registro de salida

Completa los campos vacíos con el valor previo que tiene.

1 Respuesta

Respuesta
1

Te podría explicar aquí el por qué de tu problema y cómo resolverlo, pero mi amigo Neckkito ya lo ha hecho en su web, y por tanto a ella te remito:

http://siliconproject.com.ar/neckkito/index.php/component/search/?searchword=almac%C3%A9n&searchphrase=all&Itemid=435 

Mira en primer lugar el ejemplo "Gestión de almacén", y luego sus distintas adendas, o el ejemplo Cálculo stock sin VBA

Básicamente te falta añadir a tu consulta la tabla de Productos, relacionarla con las consultas de entradas y salidas, modificar el tipo de relación y hacer el cálculo. Pero como digo, en esos ejemplos está perfectamente explicado.

Saludos!


Una nueva web de Access, visítanos: http://nksvaccessolutions.com/ 

Muchas gracias funciona perfecto, me faltaban las relaciones entre consultas y tablas, muy buenas explicaciones de Necckito y gracias a ti por ayudarme.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas