Buenas a todos!
Hace tiempo que no ando por estos lados...ahora vuelvo a pedir consejo sobre una aplicacion que estoy desarrollando.
El tema es el siguiente...la aplicacion es un sistema de facturacion/venta de un comercio con venta al publico y una de sus caracteristicas principales es la del control de stock.
No se bien como manejar el tema de la disminucion del stock cuando se vende un producto. En un principio habia pensado que lo iba a hacer de la siguiente forma.
Supongamos que estoy haciendo una revicion del stock, lo que haria seria: buscar en la tabla el producto a revisar, obtener el valor del campo STOCK y guardarlo.
Despues buscar todas las ventas en las que se vendio ese producto, sumar la cantidad de veces que ese producto se vendio y hacer TOTAL STOCK - TOTAL VENTA STOCK y me daria el numero de unidades de ese producto que hay disponible. La duda aparecio cuando empece a pensar a futuro...de aca a un año cuando se hayan realizado 10mil ventas van a ser muchos los registros a buscar cuando haga el recuento de unidades vendidas y esto iba a empezar a tomarle tiempo al servidor entonces se me ocurrio que cada vez que se vendiera una unidad descontara la cantidad vendida en el campo STOCK de ese producto pero eso no me dejaria saber cuantas unidades de ese producto se vendieron a lo largo de la historia.
Asi que ahora estoy contemplando la posibilidad de crearle un campo extra a la tabla productos que sea el que lleva la cantidad de unidades vendidas de ese producto entonces cada vez que se venda ese producto el campo STOCK quedaria como esta y en ese nuevo campo se incrementaria segun la cantidad de productos vendidos.
Todo esto viene a la pregunta, que me conviene hacer??
1) Restar la cantidad de unidades que hay en el stock menos las vendidas
2) Reducir la cant de unidades en stock cada vez que se haga una venta
3) Crear un nuevo campo en la tabla productos en que la llevo la cant de unidades vendidas de ese producto?
4) Buscar otro forma de hacerlo porque las anteriores no son buenas :)
Muchas gracias por la ayuda y perdon por hacer tan largo :)
Saludos!