Sistemato fix x non amdnare liste di prelievo fusi ad as400 (modifica DB x setup)

# fixed 1958

git-svn-id: https://keyhammer.ath.cx/svn/GMW/trunk@329 365432ac-a1b5-4ffd-bb28-6d3099d32164
This commit is contained in:
samuele
2010-11-23 13:49:24 +00:00
parent db9f88dd43
commit 3a461320db
12 changed files with 105 additions and 1 deletions
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+1 -1
View File
@@ -1030,7 +1030,7 @@ namespace GMW_data
taElencoListePrelievo.updateStato(CodSoggetto, CodLista, (int)statoLista.scaricata);
// restituisce ok
answ = esitoOperazione.ok;
// ora eseguo stored x copiare in altra tabella (quella per AS...)
// ora eseguo stored x copiare in altra tabella (quella per AS...) - SOLO SE NON E' prelievo fusi...
taElencoListePrelievo.stp_LP_exportToAs400(CodLista);
}
// se è già completata dà errore
+104
View File
@@ -0,0 +1,104 @@
set xact_abort on
go
begin transaction
go
alter table TipoListaPrelievo add
toAs400 bit constraint DF_TipoListaPrelievo_toAs400 default (1)
go
update TipoListaPrelievo set toAs400=1
go
set ANSI_NULLS on
go
/***************************************
* STORED stp_LP_exportToAs400
*
* esporta la lista di prelievo (e le relative righe) verso AS400 andando a copaire nelle relative tabelle _AS
*
* Steamware, S.E.L.
* mod: 2010.07.19
*
****************************************/
alter PROCEDURE stp_LP_exportToAs400
(
@CodLista NVARCHAR(12)
)
AS
BEGIN TRAN
-- inizio con un controllo se devo processare verso AS400 la lista di prelievo...
DECLARE @toAs400 BIT
SET @toAs400 = (SELECT ISNULL(tlp.toAs400, 0) as valore
FROM TipoListaPrelievo AS tlp INNER JOIN ElencoListePrelievo AS elp ON tlp.CodTipoLista = elp.CodTipoLista
WHERE (elp.CodLista = @CodLista)
)
IF(@toAs400 > 0)
BEGIN
-- copio la lista (intestazione)
INSERT INTO ElencoListePrelievo_AS(CodLista, CodTipoLista, CodCS, DataCreaz, CodCliente, RagSociale, CodSoggetto, Particolare, DescParticolare,
DisegnoGrezzo, Esponente, Figura, CodImballo, QtaTot, CodStatoLista, Destinatario)
SELECT CodLista, CodTipoLista, CodCS, DataCreaz, CodCliente, RagSociale, CodSoggetto, Particolare, DescParticolare,
DisegnoGrezzo, Esponente, Figura, CodImballo, QtaTot, CodStatoLista, Destinatario
FROM ElencoListePrelievo
WHERE (CodLista = @CodLista)
-- copio le righe lista di dettaglio
INSERT INTO RigheListePrelievo_AS(CodLista, UDC, Qta, Proposto, Prelevato)
SELECT CodLista, UDC, Qta, Proposto, Prelevato
FROM RigheListePrelievo
WHERE (CodLista = @CodLista) AND Prelevato = 1
-- aggiorno le quantità passate ad AS...
UPDATE ElencoListePrelievo_AS
SET QtaTot = ( SELECT SUM(Qta) AS QtaTot FROM RigheListePrelievo WHERE (CodLista = @CodLista) AND Prelevato = 1 )
WHERE (CodLista = @CodLista)
END
COMMIT TRAN
-- IMPORTANTE: in caso siano rimasti riferimenti ad un UDC scaricato in AS in altre liste di prelievo li tolgo in modo da "ripulirle" ed evitare che lo stesso UDC venga prelevato 2 volte...
DELETE RLP
FROM RigheListePrelievo RLP
INNER JOIN ElencoListePrelievo ELP
ON RLP.CodLista = ELP.CodLista
WHERE ELP.CodStatoLista < 4 AND RLP.CodLista <> @CodLista AND RLP.UDC IN (
SELECT UDC
FROM RigheListePrelievo
WHERE (CodLista = @CodLista) AND Prelevato = 1
)
RETURN
go
commit
go
set xact_abort on
go
begin transaction
go
UPDATE dbo.TipoListaPrelievo SET
toAs400=0
WHERE CodTipoLista=N'01-PreFus'
go
commit transaction
go
-- registro versione...
INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(325, GETDATE())
GO
Binary file not shown.
Binary file not shown.