Multiples stocks


([N2] Daniel) #1

Tengo una tabla ARTICULOS (id, nombre, precio). Por otro lado tengo una tabla SUCURSALES(ID, nombre, direccion, etc). Necesito controlar el Stock de cada artículo por sucursal. En una base de datos bastaría con crear una tabla con doble clave, Sucursal y Producto. No se como hacerlo en Velneo. Disculpen mi ignorancia. Me han recomendado realizar una tabla maestro con clave arbolada pero no se como funciona.


([N1] Giuseppe::Komenco) #2

Por un lado, tendrás una tabla que el stock por sucursal, donde tendrás el ID del producto, y el ID de la sucursal.
Creale un indice por clave única por SucursalID+ProductoID.
.
Por otro lado, en algún momento, harás el movimiento de almacén donde especifiques, por un lado la sucursal y el producto afectados.
En esa tabla de movimientos, créate un campo "Indirecto Real" (o indirecto virtual si no quieres que ese enlace se guarde en disco, y lo resuelva cada vez) hacia la tabla de stock, por el índice Sucursal+Prod, y resuelves el valor de SucursalID y ProductoID por los valores correspondientes de tu tabla de movimientos.
.
Crea una actualización a través de ese campo, para poder poder acumular el valor en cuestión que te interese.

[attachment=21491,1686]


([N1] Pepeto) #3

Mirate estos articulos:
http://www.ascsl.com/2011/01/calculo-de-stocks-i/
http://www.ascsl.com/2011/01/calculo-de-stocks-ii/

Solo necesitas lo siguiente:
-Una tabla para controlar el stock, con enlaces a las tablas maestras Sucursal (almacen) y Producto (articulo)
-Un indice de clave única en la tabla stock con los 2 componentes: Sucursal y Producto
-En la Tabla de lineas de boleta (debes tener enlaces a las tablas Sucursal y Producto) y crear un nuevo campo "Puntero Indirecto Real" como te indica Giuseppe.
-Ademas, necesitas una actualizacion en la tabla de Lineas de boleta que te acumule las compras y / o las ventas a traves del campo Puntero indirecto
-Y para finalizar, necesitas unos eventos en la tabla de Lineas de boleta, en el "Previo al alta" y "Previo a la modificacion" `para crear el registro en la tabla de stock . si no existe.

Esto mismo ya lo tienes echo y funcionando el la Open App del libro "Cambia el chip" aunque las tablas se llaman de otra forma, pero deberias mirarlo:
Las tablas se llaman: ART (articulos) . ALM (almacen), MOV (lineas de boleta, aqui tienes el puntero, la actualizacion y los eventos de tabla), EXS (stocks).
http://velneo.es/cambia-el-chip-con-velneo-v7/

un saludo
Jose Luis
http://www.ascsl.com