Ejercicios Sqlserver

Páginas: 4 (756 palabras) Publicado: 2 de julio de 2012
1.- Crear un procedimiento de almacenado que se encargue del mantenimiento de la bodega:
a) Que disminuya el stock.
b) Que genere una alerta cuando los productos están por terminarse(marcando con algún campo o mostrando un mensaje de alerta) ( 2ptos).

Creamos el campo idescaso que almacenará una ‘S’ o una ‘N’ para indicarnos si queda poco stock o no.
alter tableAlmacen_Carnet.dbo.bodega add idescaso nvarchar(1) null

Aquí tenemos la pantalla de compilación del Store Procedure:

Y aquí el script:
create procedure venta_bodega @idproducto int, @unidades int
as
declare@after int
-- contendrá el stock que quedará despues de la venta
declare @aux int = 0
-- contiene el valor que indicará si es que el producto existe ( >0 existe; = 0 no existe)

set @aux =(select count(*) from Almacen_Carnet.dbo.bodega where idprodbod = @idproducto)
--mayor a 0 existe
set @after = (select unidades-@unidades from Almacen_Carnet.dbo.bodega where idprodbod = @idproducto)--stock luego de la venta

if @aux > 0
begin
if @after < 0
begin
RaisError('Cantidad pedida supera al stock almacenado', 11, 1)
end
else
begin
update Almacen_Carnet.dbo.bodegaset unidades = unidades - @unidades where idprodbod = @idproducto
if @after <= 5
begin
update Almacen_Carnet.dbo.bodega set idescaso = 'S' where idprodbod = @idproducto
--updatea elindicador de escaso a 'S' si es que el stock es menor o igual a 5
end
else
begin
update Almacen_Carnet.dbo.bodega set idescaso = 'N' where idprodbod = @idproducto
--updatea el indicadorde escaso a 'N' si es que el stock es mayor a 5
end
end
end
else
begin
RaisError('No existe producto', 11, 1)
End

2.- Crear un procedimiento de almacenado que se encargue delmantenimiento de las ventas. Ojo que los clientes que ya han comprado una vez tienen un 15% de descuento(2 ptos).
Creamos una vista que nos permita tener todos los datos de la venta:

Esta es la query de...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Sqlserver
  • SQLServer
  • sqlserver
  • Sqlserver
  • Sqlserver
  • sqlserver
  • sqlserver
  • Consultas en sqlserver

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS