Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

modelo de BD para administrar Stock

Estas en el tema de modelo de BD para administrar Stock en el foro de Mysql en Foros del Web. Hola, como en la vida hay q trabajar me encuentro haciendo un programa para administrar inventario. se considera ademas que existen bodegas, que pueden variar ...
  #1 (permalink)  
Antiguo 23/02/2011, 09:03
 
Fecha de Ingreso: enero-2010
Mensajes: 18
Antigüedad: 14 años, 10 meses
Puntos: 0
modelo de BD para administrar Stock

Hola, como en la vida hay q trabajar me encuentro haciendo un programa para administrar inventario.

se considera ademas que existen bodegas, que pueden variar en el tiempo. por ende pensaba usar el siguientemodelo:

tabla: Productos:
codigoProducto, nombre, descripcion

tabla Bodegas:
idBodega, nombre, direccion

tabla Stock:
codigoProducto, idBodega, cantidad

des esta manera podia ir agregando bodegas sin tener que agregar o quitar columnas a mis tablas.

cuando vendo o compro actualizo los datos de la tabla Stock. (tambien tengo tablas de compras y ventas para guardar esos movimientos)

me gustaria saber que opinan de ese modelo, ya que, una vez decidido todo el diseño de la aplicacion se vera afectado

lo otro, nose como generar una consulta (uso MySql) para generar un resumen stock, por ejemplo si tengo las bodegas: "bod1" y "bod2" ingresadas, me gustaria generar la tabla:

tabla: stockActual:
codigoProducto, bod1, bod2

y que en bod1 y bod2 salga la cantidad ... se entiende?? :$:$

desde ya muchas grcias, espero me puedan ayudar, ya que, sino en la pega voy a tener problemas jejej
  #2 (permalink)  
Antiguo 24/02/2011, 03:12
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 8 meses
Puntos: 574
Respuesta: modelo de BD para administrar Stock

La estructura parece bastante bien, no veo como solucionas el tema del valor del stock, precio compr, distintos precios de compra etc...

En cuanto a la consulta ....

Código MySQL:
Ver original
  1. SELECT Stock.codigoProducto,
  2.              Productos.nombre,
  3.              SUM(if(Stock.idBodega=1,Stock.cantidad,0) as bod1,
  4.              SUM(if(Stock.idBodega=2,Stock.cantidad,0) as bod2
  5. FROM Stock INNER JOIN Productos
  6. ON Stock.codigoProducto=Productos.codigoProducto
  7. GROUP BY codigoProducto,Productos.nombre;

Esta te da los datos y formato que pides, pero si aparecen nuevas bodegas tendrás que modificarla

Código MySQL:
Ver original
  1. SELECT Stock.codigoProducto,
  2.              Productos.nombre,
  3.              Stock.idBodega,
  4.              SUM(Stock.cantidad,0) as TCantidad
  5. FROM Stock INNER JOIN Productos
  6. ON Stock.codigoProducto=Productos.codigoProducto
  7. GROUP BY codigoProducto,Productos.nombre,Stock.idBodega;

esta te dará los mismos datos pero en un formato menos visual, deberás tratar la salida con programación externa para conseguir las columnas que quieres. Pero esta no tendrás que modificarla aun que aumente el numero de bodegas.
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.

Etiquetas: bd, modelo, stock
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:18.