Sunday, February 3, 2013

SP_MANTENIMIENTO

Mantenimiento SP:


use ventas
go

/* PROCEDIMIENTOS ALMACENADOS PARA LOS DIFERENTES MANTENIMIENTOS */
IF EXISTS (SELECT 1 FROM sys.objects WHERE name = 'SP_ABC_CAJAS' AND TYPE = 'P')
     DROP PROC SP_ABC_CAJAS
GO

CREATE PROC SP_ABC_CAJAS (@TIPO INT,@IDCAJA INT,@DESCRIPCION VARCHAR(10),@ESTADO CHAR(1) )
AS
IF @TIPO = 1
BEGIN
INSERT INTO CAJAS  VALUES (@IDCAJA, @DESCRIPCION,@ESTADO)
END
ELSE
IF @TIPO = 2
BEGIN
DELETE FROM CAJAS
WHERE IDCAJA = @IDCAJA
END
ELSE
BEGIN
UPDATE CAJAS
  SET DESCRIPCION = @DESCRIPCION
    , ESTADO      = @ESTADO
WHERE IDCAJA      = @IDCAJA
END

GO

IF EXISTS (SELECT 1 FROM sys.objects WHERE name = 'SP_ABC_USUARIOS' AND TYPE = 'P')
     DROP PROC SP_ABC_USUARIOS
GO

CREATE PROC SP_ABC_USUARIOS (@TIPO INT,@IDUSUARIO INT,@APELLIDO VARCHAR(10),@NOMBRE VARCHAR(10),@PASSWORD VARCHAR(10),@ESTADO CHAR(1), @FECHA_INGRESO DATETIME )
AS
IF @TIPO = 1
BEGIN
INSERT INTO USUARIOS VALUES (@IDUSUARIO, @APELLIDO,@NOMBRE,@PASSWORD,@ESTADO,@FECHA_INGRESO)
END
ELSE
IF @TIPO = 2
BEGIN
DELETE FROM USUARIOS
WHERE IDUSUARIO= @IDUSUARIO
END
ELSE
BEGIN
UPDATE USUARIOS
  SET APELLIDO      = @APELLIDO
    , NOMBRE        = @NOMBRE
    , ESTADO        = @ESTADO
    , FECHA_INGRESO = @FECHA_INGRESO
WHERE IDUSUARIO     = @IDUSUARIO
END

GO

IF EXISTS (SELECT 1 FROM sys.objects WHERE name = 'SP_ABC_BODEGA' AND TYPE = 'P')
     DROP PROC SP_ABC_BODEGA
GO

CREATE PROC SP_ABC_BODEGA (@TIPO INT,@IDUBICACION INT,@FILA INT ,@COLUMNA INT,@DESCRIPCION VARCHAR(10),@ESTADO CHAR(1))
AS
IF @TIPO = 1
BEGIN
INSERT INTO BODEGA VALUES (@IDUBICACION, @FILA,@COLUMNA,@DESCRIPCION,@ESTADO)
END
ELSE
IF @TIPO = 2
BEGIN
DELETE FROM BODEGA
WHERE IDUBICACION= @IDUBICACION
END
ELSE
BEGIN
UPDATE BODEGA
  SET FILA        = @FILA
    , COLUMNA     = @COLUMNA
    , DESCRIPCION = @DESCRIPCION
    , ESTADO      = @ESTADO
WHERE IDUBICACION = @IDUBICACION
END

GO

IF EXISTS (SELECT 1 FROM sys.objects WHERE name = 'SP_ABC_PROVEEDORES' AND TYPE = 'P')
     DROP PROC SP_ABC_PROVEEDORES
GO

CREATE PROC SP_ABC_PROVEEDORES (@TIPO INT,@IDPROVEEDOR INT,@DESCRIPCION VARCHAR(10),@FECHA_INICIO DATETIME ,@ESTADO CHAR(1) )
AS
IF @TIPO = 1
BEGIN
INSERT INTO PROVEEDORES VALUES (@IDPROVEEDOR, @DESCRIPCION,@FECHA_INICIO,@ESTADO)
END
ELSE
IF @TIPO = 2
BEGIN
DELETE FROM PROVEEDORES
WHERE IDPROVEEDOR = @IDPROVEEDOR
END
ELSE
BEGIN
UPDATE PROVEEDORES
  SET DESCRIPCION   = @DESCRIPCION
    , FECHA_INICIO  = @FECHA_INICIO
    , ESTADO        = @ESTADO
WHERE IDPROVEEDOR   = @IDPROVEEDOR
END

GO

IF EXISTS (SELECT 1 FROM sys.objects WHERE name = 'SP_ABC_PRODUCTOS' AND TYPE = 'P')
     DROP PROC SP_ABC_PRODUCTOS
GO

CREATE PROC SP_ABC_PRODUCTOS (@TIPO INT,@IDPRODUCTO INT,@DESCRIPCION VARCHAR(10), @ESTADO CHAR(1),@PCOSTO NUMERIC (18,2),@PVENTA NUMERIC (18,2),@IDUBICACION INT,@FECHA_INGRESO DATETIME, @FECHA_CADUCA DATETIME,@IDPROVEEDOR INT,@EXISTENCIA INT,@STOCK_MIN INT , @IDUSUARIO INT )
AS
IF @TIPO = 1
BEGIN
INSERT INTO PRODUCTOS VALUES (@IDPRODUCTO, @DESCRIPCION,@ESTADO, @PCOSTO,@PVENTA,@IDUBICACION,@FECHA_INGRESO,@FECHA_CADUCA,@IDPROVEEDOR,@EXISTENCIA,@STOCK_MIN,@IDUSUARIO)
END
ELSE
IF @TIPO = 2
BEGIN
DELETE FROM PRODUCTOS
WHERE IDPROD      = @IDPRODUCTO
  AND IDUBICACION = @IDUBICACION
  AND IDPROVEEDOR = @IDPROVEEDOR
  AND IDUSUARIO   = @IDUSUARIO
END
ELSE
BEGIN
UPDATE PRODUCTOS
  SET DESCRIPCION   = @DESCRIPCION
    , ESTADO        = @ESTADO
    , PCOSTO        = @PCOSTO
    , PVENTA = @PVENTA
    , FECHA_INGRESO = @FECHA_INGRESO
    , FECHA_CADUCA  = FECHA_CADUCA
    , EXISTENCIA    = @EXISTENCIA
    , STOCK_MIN     = @STOCK_MIN
WHERE IDPROD      = @IDPRODUCTO
 AND IDUBICACION = @IDUBICACION
     AND IDPROVEEDOR = @IDPROVEEDOR
     AND IDUSUARIO   = @IDUSUARIO
END

GO