Files
C2P/C2P_Project/ext/Stored Procedures/stp_mergeTranspCostDet.sql
T
2014-02-18 18:01:35 +01:00

39 lines
1.2 KiB
Transact-SQL

-- =============================================
-- Author: S.E. Locatelli
-- Create date: 2014.01.16
-- Description: Procedura per import dati in ClientDet da dati ProductionLogRaw/ClientsRaw
-- =============================================
CREATE PROCEDURE [ext].[stp_mergeTranspCostDet]
(
@source NVARCHAR(20) = 'TranspCostRaw' -- nome della tabella sorgente tra ProductionLogRaw e ClientsRaw
)
AS
BEGIN
SET NOCOUNT ON;
-- Create a temporary table variable to hold the output actions.
DECLARE @SummaryOfChanges TABLE(Change VARCHAR(20));
-- import con MERGE... verifico tipo di caricamento richiesto!
IF @source = 'TranspCostRaw' -- carico da anagrafica
BEGIN
MERGE INTO TranspCostDet AS Target
USING (SELECT DISTINCT TranspZone, TranspCost FROM ext.TranspCostRaw)
AS Source
ON Target.TranspZone = Source.TranspZone
WHEN MATCHED THEN
UPDATE SET TranspCost = Source.TranspCost
WHEN NOT MATCHED BY TARGET THEN
INSERT (TranspZone, TranspCost) VALUES (TranspZone, TranspCost)
OUTPUT $action INTO @SummaryOfChanges;
END
-- Query the results of the table variable.
SELECT Change, COUNT(*) AS CountPerChange
FROM @SummaryOfChanges
GROUP BY Change;
END