Access - Comparar cantidades de productos entre dos tablas

   
Vista:

Comparar cantidades de productos entre dos tablas

Publicado por pedro (54 intervenciones) el 25/10/2017 19:09:03
Buenas comunidad, estoy tratando de obtener algún tipo de respuesta sea si o no, o algo que me pueda servir para saber si la cantidad de productos de uno o varios productos registrados en el detalle de una factura de compra es igual o mayor al que está almacenado en bodega. Por ejemplo:

Caso # 1



Detalle compra

Cod. Producto Cantidad
01 --------------- 10
02 --------------- 2
03 --------------- 5

Bodega Productos

Cod. Producto Cantidad
01 --------------- 18
02 --------------- 5
03 --------------- 5

En este caso hay iguales dos cantidades son mayores y una igual, compluria con la condición, y entonces se podria realizar una cancelacion de factura.

Caso # 2




Detalle compra

Cod. Producto Cantidad
01 ------------ 10
02 ------------ 2
03 ------------ 5

Bodega Productos

Cod. Producto Cantidad
01 ----------- 18
02 ----------- 5
03 ----------- 2

En este caso, se puede ver que el producto de código 03 tiene menor cantidad en bodega que la que está en el detalle de dicha factura, y por ende, no debería permitir activar ciertas opciones que afecten al factura de forma general.

Claro esta, esto obviando campos como el numero de factura en el detalle de la compra, entre otras cosas, ya que es algo que considero que no afecta a la pregunta, espero se entienda.
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
Imágen de perfil de jorge

Comparar cantidades de productos entre dos tablas

Publicado por jorge (239 intervenciones) el 25/10/2017 20:06:23
hola pedro y eso donde lo harias en un formulario con un boton o donde??
saludos
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

Comparar cantidades de productos entre dos tablas

Publicado por pedro (54 intervenciones) el 25/10/2017 20:44:12
Disculpa se me olvido poner eso, lo que hago es lo siguiente, tengo un cuadro de lista con los números de facturas de compras, al darle click entonces filtro los datos del detalle de compra por el código de la factura la cual le di click, dicha consulta que es el detalle de la compra seleccionada, la muestro en otro cuadro de lista, con sus respectivos datos.

Entonces allí, es donde tomo esa misma consulta, la columna de los código y busco dichos códigos de productos en la tabla de la bodega, que sean iguales a los de la lista, pero quisiera saber si, las cantidades de dichos productos es mayor o igual al del detalle compra, o hay cantidades menores a los del detalle compra.

Espero me halla entendido
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

Comparar cantidades de productos entre dos tablas

Publicado por Anonimo (809 intervenciones) el 25/10/2017 20:48:09
Si los datos de muestra se corresponden con la realidad, creo que una función tal como DLookup seria una opción valida.

Permitiría en tiempo de ejecución (por ejemplo en el evento 'después de actualizar' del campo cantidad) verificar la existencia en el almacén y de ser el caso (cantidad solicitada mayor que cantidad disponible) mostrar un aviso u optar por alguna alternativa, algo que dependerá de la metodología de la empresa.

Con este método el control se efectuaría de forma individual para cada producto y solo quedaría por dilucidad como afectaría a los usuarios en un entorno compartido (dos o mas vendiendo 'lo mismo' al mismo tiempo), ya que se da por supuesto que esa compra se validaría al confirmar la venta (y algunos vendedores sobre todo por teléfono pueden generar pausas largas entre el comienzo y el final).
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

Comparar cantidades de productos entre dos tablas

Publicado por pedro (54 intervenciones) el 25/10/2017 21:20:20
Bueno lo de varios vendedores en diferentes puntos, no es el caso aquí, ya que solo sera en un solo punto, y sera algo que llevara una persona que gestionara la aplicacion, y ahora a ver si comprendo lo que propones como solución.

Al usar el evento "Después de Actualizar" mas el metodo DLookup, según comprendo, seria ir preguntando fila por fila, la cantidad y el código del producto de la consulta realizada, hasta finalizar, y dependiendo la respuesta hacer lo que deseo, si no es asi, por favor podrias explicar como funciona exactamente lo que dices que despues de actualizar hacer dicha comparación.
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
Imágen de perfil de jorge

Comparar cantidades de productos entre dos tablas

Publicado por jorge (239 intervenciones) el 25/10/2017 21:56:50
bueno com dice anonimo se pude usar la function DLookup,, pero primero cuando des click en ese cuadro combiando y te filter el cuadro combinadoo detalle de la factura hay cuando lo filtres tendrias que recorrerla con un for el cuadro de lista deatalles despues usar la funcio DLookup, para hacer la busqueeda con el codigo de producto a la table productos este te traera el producto cantidad despues
con un if ir comparandoo si es mayor lo que tienes en cantidad de cuadro de lista de detalles.

saludos..
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

Comparar cantidades de productos entre dos tablas

Publicado por pedro (54 intervenciones) el 25/10/2017 22:11:13
Gracias, por la recomendación, fue lo primero que se me ocurrió en primera instancia, pero pense que habia otra forma de resolver.
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

Comparar cantidades de productos entre dos tablas

Publicado por Anonimo (809 intervenciones) el 26/10/2017 01:08:12
Mi respuesta es anterior a la ampliación de datos, por ello se partía del supuesto de generar una compra (o movimiento de mercancía) nueva y que se introducían los productos uno a uno, por eso se utilizaría el evento indicado antes.

Para el supuesto que se amplio (repetir un movimiento anterior) lo ideal seria crear una función que nos devolviera un valor booleano (si/no) en función de las existencias.

Se precisarían dos recordset abiertos en modo lectura

Uno (Datos_B) tomaría el CódigoProducto y sus existencias
Otro (Datos_P) basándose en la factura a copiar tomaría los Codigos y cantidades de esa transacion.

Los pasos:
Un bucle que recorra Datos_P

.- Localiza en Datos_B el código de Datos_P (con FindFirst se localizaria)
.- Localizado el dato (si Datos_P!Cantidad > Datos_B!Cantidad se activa el marcador)
.- Nos desplazamos al siguiente registro de Datos_P
.- Repetimos hasta llegar al final (de Datos_p)

Si al finalizar el marcador esta activado: uno de los productos (cualquiera) sobrepasa las existencias ¿un aviso y ya ni se copia?
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
Revisar política de publicidad