80 lines
1.9 KiB
SQL
80 lines
1.9 KiB
SQL
|
|
|
|
/*************************************************
|
|
* STORED zzz_resetDtx
|
|
*
|
|
* fa un reset di tutte le operazioni svolte sui datamatrix nelle ultime X ore x poter fare test, nelle tabelle
|
|
* - ElencoCartellini (che erano collegati ai dtx indicati...) porta qta a zero...
|
|
* - PosizioneUdcCorrente --> li elimina
|
|
* - toglie associazione DTX
|
|
* - Dtx2UDC
|
|
* - StoricoDtx2UDC
|
|
* - ElencoCartellini --> li elimina (quelli modificati nelle ultime X ore con qta a zero...)
|
|
*
|
|
* Steamware, S.E.L.
|
|
* mod: 2014.03.08
|
|
*
|
|
*************************************************/
|
|
CREATE PROCEDURE [dmtx].[zzz_resetDtx]
|
|
(
|
|
@ore INT = 0 -- default 0 ore = non fa nulla
|
|
)
|
|
AS
|
|
|
|
SET XACT_ABORT ON;
|
|
|
|
BEGIN TRAN
|
|
|
|
-- ElencoCartellini (che erano collegati ai dtx indicati...) porta qta a zero...
|
|
UPDATE ElencoCartellini
|
|
SET Qta = 0
|
|
WHERE UDC IN (
|
|
SELECT DISTINCT UDC
|
|
FROM Dtx2UDC
|
|
WHERE dataora >= DATEADD(hour, @ore, GETDATE())
|
|
)
|
|
|
|
-- PosizioneUdcCorrente --> li elimina
|
|
DELETE
|
|
FROM PosizioneUdcCorrente
|
|
WHERE UDC IN (
|
|
SELECT DISTINCT UDC
|
|
FROM Dtx2UDC
|
|
WHERE dataora >= DATEADD(hour, @ore, GETDATE())
|
|
)
|
|
|
|
-- toglie associazione DTX
|
|
UPDATE dtx
|
|
SET associato = 0
|
|
FROM dmtx.v_ElencoDatamatrixBMW AS Dtx
|
|
INNER JOIN Dtx2UDC d2c ON Dtx.DataMatrix COLLATE SQL_Latin1_General_CP1_CI_AS = d2c.DataMatrix
|
|
WHERE d2c.dataora >= DATEADD(hour, @ore, GETDATE())
|
|
AND dtx.Associato = 1
|
|
|
|
DELETE
|
|
FROM AL2UDC
|
|
WHERE UDC IN (
|
|
SELECT DISTINCT UDC
|
|
FROM Dtx2UDC
|
|
WHERE dataora >= DATEADD(hour, @ore, GETDATE())
|
|
)
|
|
|
|
-- Dtx2UDC
|
|
DELETE
|
|
FROM Dtx2UDC
|
|
WHERE dataOra >= DATEADD(hour, - @ore, GETDATE())
|
|
|
|
-- StoricoDtx2UDC
|
|
DELETE
|
|
FROM StoricoDtx2UDC
|
|
WHERE dataEv >= DATEADD(hour, - @ore, GETDATE())
|
|
|
|
-- ElencoCartellini --> li elimina (quelli modificati nelle ultime X ore con qta a zero...)
|
|
DELETE
|
|
FROM ElencoCartellini
|
|
WHERE Qta = 0
|
|
and ModDate >= DATEADD(hour, @ore, GETDATE())
|
|
|
|
COMMIT Tran
|
|
|
|
RETURN |