IF NOT EXISTS (SELECT * FROM sysobjects WHERE type = 'P' AND name = N'TransformAlertCustomFieldDimProc')
BEGIN
EXECUTE ('CREATE PROCEDURE dbo.[TransformAlertCustomFieldDimProc] @WaterMark xml AS RETURN 1')
END
GO
DECLARE @Statement NVARCHAR(MAX)
SET @Statement =
N'ALTER PROCEDURE [dbo].[TransformAlertCustomFieldDimProc](@WaterMark XML)
AS BEGIN
SET NOCOUNT ON
DECLARE @utc DATETIME = GETUTCDATE()
DECLARE @errorNumber INT, @errorSeverity INT, @errorState INT, @errorLine INT, @errorProcedure NVARCHAR(256), @errorMessage NVARCHAR(MAX), @task NVARCHAR(512)
DECLARE @BatchId INT, @Updated INT = 0, @Inserted INT = 0, @retval INT = -1, @err INT = 0, @startTranCount INT = @@TRANCOUNT, @source1WM DATETIME, @source1MaxWM DATETIME
DECLARE @rowsToProcess INT = 0, @rejectedRowCount INT = 0, @canContinue BIT = 1, @loopCount INT
DECLARE @isReconciled BIT = 0
SELECT @task = ''Inserting into Dimension''
INSERT INTO dbo.AlertCustomFieldDimvw (
[SourceId],
[CustomFieldValue],
[InsertedBatchId],
[UpdatedBatchId]
)
SELECT DISTINCT
AlertCustomFields.DatasourceId,
AlertCustomFields.CustomFieldValue,
@BatchId,
0
FROM (
SELECT DatasourceId, CustomField1 AS CustomFieldValue FROM DWTemp.TransformAlertCustomFieldDimProc_Source1 UNION
SELECT DatasourceId, CustomField2 AS CustomFieldValue FROM DWTemp.TransformAlertCustomFieldDimProc_Source1 UNION
SELECT DatasourceId, CustomField3 AS CustomFieldValue FROM DWTemp.TransformAlertCustomFieldDimProc_Source1 UNION
SELECT DatasourceId, CustomField4 AS CustomFieldValue FROM DWTemp.TransformAlertCustomFieldDimProc_Source1 UNION
SELECT DatasourceId, CustomField5 AS CustomFieldValue FROM DWTemp.TransformAlertCustomFieldDimProc_Source1 UNION
SELECT DatasourceId, CustomField6 AS CustomFieldValue FROM DWTemp.TransformAlertCustomFieldDimProc_Source1 UNION
SELECT DatasourceId, CustomField7 AS CustomFieldValue FROM DWTemp.TransformAlertCustomFieldDimProc_Source1 UNION
SELECT DatasourceId, CustomField8 AS CustomFieldValue FROM DWTemp.TransformAlertCustomFieldDimProc_Source1 UNION
SELECT DatasourceId, CustomField9 AS CustomFieldValue FROM DWTemp.TransformAlertCustomFieldDimProc_Source1 UNION
SELECT DatasourceId, CustomField10 AS CustomFieldValue FROM DWTemp.TransformAlertCustomFieldDimProc_Source1
) AS AlertCustomFields
LEFT JOIN dbo.AlertCustomFieldDimvw dest ON (AlertCustomFields.CustomFieldValue = dest.CustomFieldValue)
WHERE dest.AlertCustomFieldDimKey IS NULL
AND AlertCustomFields.CustomFieldValue IS NOT NULL