DROP PROCEDURE IN_ModificarListaPrecioInvProc
GO
CREATE PROCEDURE IN_ModificarListaPrecioInvProc
(   @BATNBR		 UD_CORRELATIVOS,
    @SITEID              UD_IDSITE,
    @STARTDATEPRICE      UD_FECHA,
    @ENDDATEPRICE        UD_FECHA,
    @STARTTIMEPRICE      char(5),
    @ENDTIMEPRICE        char(5),
    @CORRNBR             int,
    @BAT 	CHAR(10) =' '	 OUTPUT	 
)
AS
BEGIN

   DECLARE @ERROR Integer
   DECLARE @TSTAMP timestamp
   DECLARE @ROWCOUNT Integer
   SELECT @ERROR=0   

   --ACTUALIZANDO LA CABECERA DE LA LISTA DE PRECIOS DE INVENTARIO	

   BEGIN TRAN	

   	UPDATE IN_PRICELEVELTEM
	SET  STARTDATEPRICE=@STARTDATEPRICE,
	     ENDDATEPRICE=@ENDDATEPRICE,
	     STARTTIMEPRICE=@STARTTIMEPRICE,
	     ENDTIMEPRICE=@ENDTIMEPRICE
	WHERE SITEID=@SITEID AND BATNBRPRICELEVELTEM=@BATNBR

      	IF (@@error!=0 OR @@ROWCOUNT=0 )
    	BEGIN
		RAISERROR  20000 'Error Actualizando en IN_PRICELEVELTEM'
        	ROLLBACK TRAN
        	RETURN(1)
    
    	END

	
   --ELIMINANDO EL DETALLE DE LA LISTA DE PRECIOS DE INVENTARIO

	DELETE 
	FROM	IN_PRICELEVELTEMDET
	WHERE	SITEID=@SITEID AND BATNBRPRICELEVELTEM=@BATNBR

      	IF (@@error!=0 OR @@ROWCOUNT=0 )
    	BEGIN
		RAISERROR  20000 'Error Eliminando en IN_PRICELEVELTEMDET'
        	ROLLBACK TRAN
        	RETURN(1)
    
    	END

   --ACTUALIZANDO EL DETALLE DE LA LISTA DE PRECIOS DE INVENTARIO
    	SET EXEC @ERROR=IN_GrabarDetHistPrecInvProc @CORRNBR,@BATNBR

	IF (@ERROR!=0)
    	BEGIN
       		RAISERROR  20000 'Error insertando en IN_PRICELEVELTEMDET'	
       		ROLLBACK TRAN
       		RETURN(1)               
    	END 
   COMMIT TRAN
   RETURN(0)
END
