Está en la página 1de 2

create table productos(

codigoProducto varchar(10),
descripcion varchar(50),
unidDisponibles integer,
puntoReorden integer,
fechaIngreso date
)
create table movimientoProductos (
codigoProducto varchar(10),
tipoTransaccion varchar(6),
unidades integer,
fechaMovimiento date
)
create table tipoTransaccion(
tipoTransaccion varchar(6),
debitocredito char(1)
)
Create table mensajes(
codigoProducto varchar(10),
descripciónMensaje varchar(100),
fechaMensaje date
)

--Desarrolle un procedimiento almacenado que permita insertar registros en la tabla


productos

go
create proc sp_insertaProductos(@codigoProducto varchar(10),
@descripcion varchar(50),
@Puntoreorden integer)
as

begin
insert into productos(codigoProducto, descripcion, unidDisponibles,
puntoReorden, fechaIngreso)
select @codigoProducto, @descripcion, '0', @Puntoreorden, GETDATE()
end

--validar que dos productos no tengan el mismo codigo


if exists (select * from productos where codigoProducto = @codigoProducto)
begin
raiserror('Este codigo ya esta utilizado en otro producto',16,1)
return
end

--validar que el punto de reorden sea mayor a cero

if @Puntoreorden <= 0
begin
raiserror('El punto de reorden debe ser mayor a cero',16,1)
return
end

--Desarrolle un procedimiento almacenado que permita insertar registros en la tabla


movimientoProductos.
go
create proc sp_insertaMovimiento(@codigoProducto varchar(10),
@tipoTransaccion varchar(6),
@unidades integer )
as

begin
insert into movimientoProductos(codigoProducto, tipoTransaccion, unidades,
fechaMovimiento)
select @codigoProducto, @tipoTransaccion, @unidades, GETDATE()
end

--validar que el codigo del producto exista en la tabla productos

if not exists(select * from productos where codigoProducto = @codigoProducto)


begin
raiserror('El codigo de este producto no existe',16,1)
return
end

-- validar que el tipo de transaccion exista en la tabla transacciones

if not exists(select * from tipoTransaccion where tipoTransaccion =


@tipoTransaccion)
begin
raiserror('El tipo de transaccion no existe',16,1)
return
end

-- Validar que las unidades sean mayor a cero

if @unidades <= 0
begin
raiserror('Las unidades deben ser mayor a Cero',16,1)
return
end

También podría gustarte