Files
C2P/C2P_Project/dbo/Stored Procedures/stp_TD_upsert.sql
T
Samuele E. Locatelli 76452aa4dd Refresh Progetto DB
2014-10-21 16:42:06 +02:00

66 lines
2.0 KiB
Transact-SQL

-- =============================================
-- Author: S.E. Locatelli
-- Create date: 2013.12.17
-- Description: Crea TabDifett (tabella difettosità)
-- =============================================
CREATE PROCEDURE [dbo].[stp_TD_upsert]
(
@dateFrom DATETIME, -- data da cui iniziare a caricare
@dateTo DATETIME -- data fino a cui caricare
)
AS
BEGIN
SET XACT_ABORT ON;
BEGIN TRAN
SET NOCOUNT ON;
-- svuoto tabella...
TRUNCATE TABLE TabDifett
-- riempio di nuovo valori! chiave AMI
INSERT INTO TabDifett
SELECT
dd.CodItem + '-' + pl.RawMat + '-' + pl.CodPlant as KeyAMI
, pl.ProcessNum
, dd.CodItem, pl.RawMat, pl.CodPlant
, SUM(NumOUT) as TotOUT
, SUM(NumIN) as TotIn
FROM ProductionLog pl INNER JOIN DiesDet dd ON pl.CodDies=dd.CodDies
WHERE pl.ProcessNum IN ('02', '04')
AND pl.okDi = 1
-- and pl.EventType=1
AND pl.EventStart BETWEEN @dateFrom AND @dateTo
GROUP BY dd.CodItem, pl.RawMat, pl.CodPlant, pl.ProcessNum
ORDER BY dd.CodItem, pl.RawMat, pl.ProcessNum--, SUM(NumOUT) DESC
-- riempio di nuovo valori! chiave CMI
INSERT INTO TabDifett
SELECT
id.CodItemGroup + '-' + pl.RawMat + '-' + pl.CodPlant as KeyAMI
, pl.ProcessNum
, id.CodItemGroup, pl.RawMat, pl.CodPlant
, SUM(NumOUT) as TotOUT
, SUM(NumIN) as TotIn
FROM ProductionLog pl
INNER JOIN DiesDet dd ON pl.CodDies=dd.CodDies
INNER JOIN ItemDet id ON dd.CodItem = id.CodItem
WHERE pl.ProcessNum IN ('02', '04')
AND pl.okDi = 1
-- and pl.EventType=1
AND pl.EventStart BETWEEN @dateFrom AND @dateTo
GROUP BY id.CodItemGroup, pl.RawMat, pl.CodPlant, pl.ProcessNum
ORDER BY id.CodItemGroup, pl.RawMat, pl.ProcessNum--, SUM(NumOUT) DESC
-- salvo nuova revisione dati di produzione...
INSERT INTO RevHistory
SELECT 'P', ISNULL(MAX(RevNum),0) + 1, GETDATE(), 'Aggiornamento dati di produzione x fasi 02/03 ' + CONVERT(NVARCHAR(20), @dateFrom, 120) + ' --> ' +CONVERT(NVARCHAR(20), @dateTo, 120)
FROM RevHistory
WHERE RevType = 'P'
COMMIT TRAN
END