set xact_abort on
go

begin transaction
go

alter table AnagPosizioni add
  IsRiattivaEnabled bit constraint DF_AnagPosizioni_IsRiattivaEnabled default (0)
go

update AnagPosizioni set IsRiattivaEnabled=0
go

set ANSI_NULLS on
go

/***************************************
* STORED stp_riattivaUdc
*
* riattiva un dato UDC (da mag consumato negativo a corrispettivo positivo) --> se era positivo NON FA NULLA!!! (perchè uso ABS e controllo sia < 0)
*
* Steamware, S.E.L.
* mod: 2010.11.04
*
****************************************/
create PROCEDURE stp_riattivaUdc
(
	@UDC VARCHAR(20),
	@CodSoggetto NVARCHAR(17)
)
AS

DECLARE @CodEvento VARCHAR(10)
DECLARE @CodTipoDichiaraz VARCHAR(1)

SET @CodEvento = 'UDC_RIA'
SET @CodTipoDichiaraz = 'U'

BEGIN TRAN
	
	-- faccio update
	UPDATE      ElencoCartellini
	SET         IdxPosizione = ABS(IdxPosizione), ModDate=GETDATE(), CodSoggetto = @CodSoggetto
	WHERE		UDC = @UDC AND IdxPosizione IN (SELECT IdxPosizione FROM AnagPosizioni WHERE (IsRiattivaEnabled = 1)
)
	
COMMIT TRAN

RETURN
go

commit
go


set xact_abort on
go

begin transaction
go

UPDATE dbo.AnagPosizioni SET 
  IsRiattivaEnabled=1
  WHERE IdxPosizione=-84
go

commit transaction
go


set xact_abort on
go

begin transaction
go

INSERT INTO dbo.AnagTipoEvento
  VALUES (N'UDC_COMP', N'Compensazione per rettifica UDC')
INSERT INTO dbo.AnagTipoEvento
  VALUES (N'UDC_RIA', N'Riattivazione UDC x gestione (se cancellato)')
go

commit transaction
go


set xact_abort on
go

begin transaction
go

set ANSI_NULLS on
go

/***************************************
* STORED stp_sbloccaUdc
*
* sblocca un dato UDC per modifica
*
* Steamware, S.E.L.
* mod: 2010.04.28
*
****************************************/
alter PROCEDURE stp_sbloccaUdc
(
	@UDC VARCHAR(20),
	@CodSoggetto NVARCHAR(17)
)
AS

DECLARE @CodEvento VARCHAR(10)
DECLARE @CodTipoDichiaraz VARCHAR(1)

SET @CodEvento = 'UDC_SBL'
SET @CodTipoDichiaraz = 'U'

BEGIN TRAN
	
	-- faccio update
	UPDATE      ElencoCartellini
	SET         ModDate = GETDATE(), CodSoggetto = @CodSoggetto
	WHERE		UDC = @UDC
	
COMMIT TRAN

RETURN
go

commit
go





-- registro versione...
INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(299, GETDATE())
GO
