set xact_abort on
go

begin transaction
go

INSERT INTO dbo.AnagBilance
  VALUES (N'FI', N'Finiti', N'TK')
go

commit transaction
go


create table Config(
  chiave nvarchar(50)  not null constraint PK_Config primary key,
  valore nvarchar(250)
);
go


set xact_abort on
go

begin transaction
go

INSERT INTO dbo.Config
  VALUES (N'AmbienteAs400', N'Test')
go

commit transaction
go


create index IX_RigheListePrelievo_UDC on RigheListePrelievo(UDC);
go


set ANSI_NULLS on;
go

-- =============================================
-- Author:		Gcarlo
-- Create date: 
-- Description:	In base al database corrente passato ritorno la corretta libreria di AS400
-- che deve essere utilizzata
-- =============================================
create FUNCTION f_getLibreriaAS400
(
	 @CurrentDB nVarchar(128)
	,@Function  nVarchar(50)
)
RETURNS nvarchar(100)
AS
BEGIN
    -- FORSE MEGLIO USARE IL NOME DELLA STORED CHE LA RICHIAMA CON ... nella stored che la richiama
    -- DECLARE @StoredName AS NVARCHAR(256);
    -- SET @StoredName = OBJECT_SCHEMA_NAME(@@PROCID) + '.' + OBJECT_NAME(@@PROCID)
	-- Declare the return variable here
	DECLARE @As400File nvarchar(100)

	-- Valorizzo la corretta libreria in base al database passato
    SET @As400File = 
				   CASE	
					 WHEN @Function = 'XOGIX' THEN        -- Materia Prima - Rapporti Qualità
					   CASE
							-- S.POSSIDONIO
							WHEN ( @CurrentDB = 'SP_GMW' )     THEN 'POSN_DATV3.XOGIX00F'
							WHEN ( @CurrentDB = 'SP_GMWTest' ) THEN 'MAZZT_DTV3.XOGIX00F'  -- TEST SP
							-- TEKAL 
							WHEN ( @CurrentDB = 'TK_GMW' )     THEN 'TEKA_DATV3.XOGIX00F'
							WHEN ( @CurrentDB = 'TK_GMWTest' ) THEN 'MAZZT_DTV3.XOGIX00F'  -- TEST TEKAL
						 END 

					 WHEN @Function = 'REGMOVMAG' THEN    -- Registrazione Movimenti Magazzino
						CASE 
							-- S.POSSIDONIO
							WHEN ( @CurrentDB = 'SP_GMW' )     THEN 'POSN_DATV3...'
							WHEN ( @CurrentDB = 'SP_GMWTest' ) THEN 'MAZZT_DTV3.MWMV230F'  -- TEST SP
							-- TEKAL 
							WHEN ( @CurrentDB = 'TK_GMW' )     THEN 'TEKA_DATV3.MWMV260F'
							WHEN ( @CurrentDB = 'TK_GMWTest' ) THEN 'MAZZT_DTV3.MWMV230F'  -- TEST TEKAL
						 END
				   END

	-- Return the result of the function
	RETURN @As400File

END
go

-- =============================================
-- Author:		Gcarlo
-- Create date: 
-- Description:	In base al database corrente passato ritorno il corretto linked Server AS400
-- =============================================
create FUNCTION f_getLikedAS400
(
	@CurrentDB nVarchar(128)   -- Database Corrente
)
RETURNS nvarchar(50)
AS
BEGIN
	-- Declare the return variable here
	DECLARE @As400File nvarchar(50)

	-- Valorizzo la corretta libreria in base al database passato
    SET @As400File = 
				  CASE
							-- LINKED SERVER AS400 S.POSSIDONIO
							WHEN ( LEFT(@CurrentDB,3) = 'SP_' ) THEN 'AS400POSS'   -- S.POSSIDONIO
							-- LINKED SERVER AS400 TEKAL 
							WHEN ( LEFT(@CurrentDB,3) = 'TK_' ) THEN 'AS400TEKAL'  -- TEKAL
				   END

	-- Return the result of the function
	RETURN @As400File

END
go


set xact_abort on;
go

begin transaction;
go

set ANSI_NULLS on;
go

/***************************************
* STORED stp_prtCartFinitiByUDC
*
* ottiene il record del Cartellino FINITI dato l'UDC richiesto x la stampa
*
* Steamware, S.E.L.
* mod: 2013.02.11
*
****************************************/
create PROCEDURE stp_prtCartFinitiByUDC
(
	@UDC NVARCHAR(50)
)
AS

    -- estraggo i trattamenti nelle note ( x max 10 trattamenti )
	DECLARE @tmp		NVARCHAR(500)
	DECLARE @NoteTratt	NVARCHAR(500)
	SET @NoteTratt = ''

	-- SET @NoteTratt = (SELECT SUBSTRING(@tmp, 0, LEN(@tmp)))

	-- ora seleziono i dati veri e propri
	SELECT
		ElencoCartellini.UDC, ElencoCartellini.CodCS, ISNULL(ElencoCartellini.CodCliente, N'') AS codcliente, 
		ISNULL(ElencoCartellini.RagSociale, N'') AS ragsociale, ISNULL(ElencoCartellini.Particolare, N'') AS particolare,
		ISNULL(ElencoCartellini.DescParticolare, N'') AS DescParticolare, ISNULL(ElencoCartellini.DisegnoGrezzo, N'') AS DisegnoGrezzo, 
		ISNULL(ElencoCartellini.Esponente, N'') AS esponente, ISNULL(ElencoCartellini.CodImpianto, N'') AS CodImpianto,
		ISNULL(ElencoCartellini.DescImpianto, N'') AS DescImpianto, ISNULL(ElencoCartellini.CodStampo, N'') AS codstampo, 
		ISNULL(ElencoCartellini.Figura, N'') AS figura, ISNULL(ElencoCartellini.DataFus, N'') AS datafus,
		ISNULL(ElencoCartellini.TurnoFus, N'') AS turnofus, ISNULL(ElencoCartellini.CodImballo, N'') AS CodImballo, 
		ISNULL(ElencoCartellini.CodSoggetto, N'') AS CodSoggetto, ISNULL(ElencoCartellini.NumCont, N'') AS NumCont,
		ISNULL(ElencoCartellini.Tara, N'') AS tara, ISNULL(ElencoCartellini.Qta, N'') AS qta, ISNULL(ElencoCartellini.CodStato, N'') AS CodStato, 
		ISNULL(ElencoCartellini.IdxPosizione, N'') AS IdxPosizione,
		ISNULL(ElencoCartellini.PesoTot, N'') AS PesoTot, ISNULL(ElencoCartellini.PesoCad, N'') AS PesoCad, ElencoCartellini.CreateDate, 
		ElencoCartellini.ModDate, ISNULL(RilPro.AnagOperatori.Cognome, N'') AS cognome,
		ISNULL(RilPro.AnagOperatori.Nome, N'') AS nome, ISNULL(AnagStatiProdotto.DescStato, N'') AS DescStato, 
		ISNULL(RilPro.AnagImballi.DescImballo, N'') AS DescImballo, RilPro.AnagParticolari.CodFamiglia, RilPro.AnagFamiglie.DescFamiglia,
		ISNULL(ElencoCartellini.Note, N'') AS Note, @NoteTratt AS NoteTratt
	FROM
		RilPro.AnagParticolari 
	LEFT OUTER JOIN
		RilPro.AnagFamiglie 
	ON
		RilPro.AnagParticolari.CodFamiglia = RilPro.AnagFamiglie.CodFamiglia 
	RIGHT OUTER JOIN
		ElencoCartellini 
	ON
		RilPro.AnagParticolari.Particolare = ElencoCartellini.Particolare 
	LEFT OUTER JOIN
		AnagStatiProdotto 
	ON
		ElencoCartellini.CodStato = AnagStatiProdotto.CodStato 
	LEFT OUTER JOIN
		RilPro.AnagOperatori 
	ON
		ElencoCartellini.CodSoggetto = RilPro.AnagOperatori.CodSoggetto 
	LEFT OUTER JOIN
		RilPro.AnagImballi 
	ON
		ElencoCartellini.CodImballo = RilPro.AnagImballi.CodImballo 
	WHERE
		(ElencoCartellini.UDC = @UDC)
 

RETURN
go

commit;
go



set xact_abort on
go

begin transaction
go

UPDATE dbo.Permessi SET 
  NUMERO=1
  WHERE COD_PERMESSO='POST_anime'
UPDATE dbo.Permessi SET 
  NUMERO=2
  WHERE COD_PERMESSO='POST_anime_mult'
UPDATE dbo.Permessi SET 
  NUMERO=99
  WHERE COD_PERMESSO='POST_anime_SAO'
INSERT INTO dbo.Permessi
  VALUES ('POST_finiti', 'finitiTK.aspx', 4, 5, 'PostFiniti', 'PostFinitiExpl')
UPDATE dbo.Permessi SET 
  NUMERO=3
  WHERE COD_PERMESSO='POST_fusi'
UPDATE dbo.Permessi SET 
  NUMERO=4
  WHERE COD_PERMESSO='POST_fusiCons'
go

commit transaction
go


set xact_abort on
go

begin transaction
go

DELETE FROM dbo.Permessi2Funzione WHERE COD_PERMESSO='ADMIN_stampanti' and COD_FUNZIONE=N'GMW_Admin'
go

commit transaction
go


set xact_abort on
go

begin transaction
go

INSERT INTO dbo.Permessi2Funzione
  VALUES ('ADMIN_stampanti', N'GMW_admin', 'S')
INSERT INTO dbo.Permessi2Funzione
  VALUES ('LAB', N'GMW_Admin', 'S')
INSERT INTO dbo.Permessi2Funzione
  VALUES ('LAB_consumaUdc', N'GMW_Admin', 'S')
INSERT INTO dbo.Permessi2Funzione
  VALUES ('LAB_stampaUdc', N'GMW_Admin', 'S')
INSERT INTO dbo.Permessi2Funzione
  VALUES ('MAG', N'GMW_Admin', 'S')
INSERT INTO dbo.Permessi2Funzione
  VALUES ('MAG_block', N'GMW_Admin', 'S')
INSERT INTO dbo.Permessi2Funzione
  VALUES ('MAG_delibere', N'GMW_Admin', 'S')
INSERT INTO dbo.Permessi2Funzione
  VALUES ('MAG_elListe', N'GMW_Admin', 'S')
INSERT INTO dbo.Permessi2Funzione
  VALUES ('MAG_mag', N'GMW_Admin', 'S')
INSERT INTO dbo.Permessi2Funzione
  VALUES ('MAG_odette', N'GMW_Admin', 'S')
INSERT INTO dbo.Permessi2Funzione
  VALUES ('MAG_search', N'GMW_Admin', 'S')
INSERT INTO dbo.Permessi2Funzione
  VALUES ('POST', N'GMW_Admin', 'S')
INSERT INTO dbo.Permessi2Funzione
  VALUES ('POST_anime', N'GMW_Admin', 'S')
INSERT INTO dbo.Permessi2Funzione
  VALUES ('POST_anime_mult', N'GMW_Admin', 'S')
INSERT INTO dbo.Permessi2Funzione
  VALUES ('POST_finiti', N'GMW_Admin', 'S')
INSERT INTO dbo.Permessi2Funzione
  VALUES ('POST_finiti', N'GMW_finitiTK', 'S')
INSERT INTO dbo.Permessi2Funzione
  VALUES ('POST_fusi', N'GMW_Admin', 'S')
INSERT INTO dbo.Permessi2Funzione
  VALUES ('POST_fusiCons', N'GMW_Admin', 'S')
go

commit transaction
go









-- registro versione...
INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(530, GETDATE())
GO
SELECT TOP 5 * FROM LogUpdateDb ORDER BY Versione DESC
GO
