Tengo 4 tablas involucradas en este SP
Insumo : ID, Nombre,Cantidad_Stock
Producto: ID, Nombre
Insumo_Producto: ID, Producto ID, Insumo ID,Cantidad
Comanda_Detalle: ID, Producto ID, Comanda ID,Cantidad
Ejemplificando:
Insumos en stock : 1, Tallarines, 100
2, Salsa, 50
Producto (Platos) : 1, Tallarines con Salsa
Insumo_Producto (Composicion del Plato) : 1, Tallarines con Salsa, Tallarines, 0.5
, Salsa, 0.30
Comanda_Detalle (Venta Plato): 1, Tallarines con Salsa, 89(Nro.Comanda), 2 (se vendieron 2 platos)
Siginifica que como se vendieron 2 platos de tallarines, que debo descontar de la tabla Insumos con los ingredientes ocupados.
En este caso 1 unidad de tallarin y 0,60 de salsa. (como se vendieron 2 platos se multiplica lo que se ocupa de tallarin y salsa, es decir 0,5 y 0,3 respectivamente)
En el @ID se envia el numero de la comanda desde NET, en este caso el 89. De ahí se obtienen los platos vendidos y por ende los ingredientes a descontar.
esto lo que llevo hasta el momento , pero me falta completarlo.
please help
ALTER procedure [dbo].[sp_comanda_descuentainsumo]
(
@ID int
)
as
SELECT IP.id
,IP.producto_id
,CD.cantidad
,PR.nombre
,IP.insumo_id
,IM.id
,IM.nombre
,IM.subtipo_umedida
,IP.cantidad
FROM tbl_insumo_producto IP
LEFT OUTER JOIN tbl_comanda_detalle CD on CD.producto_id = IP.producto_id
LEFT OUTER JOIN tbl_producto PR on PR.id = CD.producto_id
LEFT OUTER JOIN tbl_insumo IM on IM.id = IP.insumo_id
where CD.comanda_id = @ID
UPDATE [tbl_insumo]
SET
[cantidad] = ¿????
WHERE IM.id = IP.insumo_id