initial commit
This commit is contained in:
@@ -0,0 +1,94 @@
|
||||
USE [Arizona];
|
||||
BEGIN TRANSACTION;
|
||||
SET XACT_ABORT ON;
|
||||
|
||||
DECLARE
|
||||
@mode INT = 2 /* 1 = SELECT / 2 = UPDATE */
|
||||
,@cvRecordIDLowerLimit INT;
|
||||
|
||||
BEGIN TRY
|
||||
SELECT @cvRecordIDLowerLimit = [bapd].[BAPD_value]
|
||||
FROM [dbo].[Bmc_application_key] [bapk] (NOLOCK)
|
||||
JOIN [dbo].[Bmc_application_default] [bapd] (NOLOCK)
|
||||
ON [bapd].[BAPD_bmc_application_key] = [bapk].[Bmc_application_key_ID]
|
||||
WHERE [bapk].[BAPK_key] = 'cvRecordIDLowerLimit';
|
||||
CREATE TABLE [#temp_address] (
|
||||
[Address_ID] INT
|
||||
,[AD_last_name] VARCHAR(30)
|
||||
,[ad_first_name] VARCHAR(30)
|
||||
,[ad_name] VARCHAR(60)
|
||||
,[ad_name_supplement] VARCHAR(255)
|
||||
,[ad_vguid] UNIQUEIDENTIFIER
|
||||
);
|
||||
|
||||
INSERT INTO [#temp_address] (
|
||||
[Address_ID]
|
||||
,[AD_last_name]
|
||||
,[ad_first_name]
|
||||
,[ad_name]
|
||||
,[ad_name_supplement]
|
||||
,[ad_vguid]
|
||||
)
|
||||
SELECT
|
||||
[ad].[Address_ID]
|
||||
,[ad].[AD_last_name]
|
||||
,[ad].[AD_first_name]
|
||||
,[ad].[AD_name]
|
||||
,[ad].[AD_name_supplement]
|
||||
,[ad].[AD_VGUID]
|
||||
FROM [Arizona].[dbo].[Customer] [cust] (NOLOCK)
|
||||
JOIN [Arizona].[dbo].[Address] [ad] (NOLOCK)
|
||||
ON [ad].[Address_ID] = [cust].[CUST_address]
|
||||
AND [ad].[Address_ID] >= @cvRecordIDLowerLimit;
|
||||
|
||||
UPDATE [t1]
|
||||
SET
|
||||
[t1].[AD_last_name] = [t2].[AD_last_name]
|
||||
,[t1].[ad_name] = LEFT(ISNULL([t2].[AD_last_name], '') + ' ' + ISNULL([t1].[ad_first_name], ''), 60)
|
||||
FROM [#temp_address] [t1] (NOLOCK)
|
||||
JOIN [#temp_address] [t2] (NOLOCK)
|
||||
ON [t2].[Address_ID] = (
|
||||
SELECT TOP 1
|
||||
[t3].[Address_ID]
|
||||
FROM [#temp_address] [t3] (NOLOCK)
|
||||
WHERE [t3].[Address_ID] > [t1].[Address_ID]
|
||||
ORDER BY NEWID()
|
||||
);
|
||||
|
||||
IF @mode = 2
|
||||
BEGIN
|
||||
UPDATE [ad]
|
||||
SET
|
||||
[ad].[AD_last_name] = [t1].[AD_last_name]
|
||||
,[ad].[AD_name] = [t1].[ad_name]
|
||||
FROM [#temp_address] [t1] (NOLOCK)
|
||||
JOIN [dbo].[Address] [ad] (NOLOCK)
|
||||
ON [ad].[Address_ID] = [t1].[Address_ID]
|
||||
WHERE ISNULL([ad].[AD_last_name], '') <> ISNULL([t1].[AD_last_name], '')
|
||||
OR ISNULL([ad].[AD_name], '') <> ISNULL([t1].[ad_name], '');
|
||||
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
SELECT --top 100
|
||||
[ad].[AD_last_name]
|
||||
,'-->'
|
||||
,[t1].[AD_last_name]
|
||||
,[ad].[AD_name]
|
||||
,'-->'
|
||||
,[t1].[ad_name]
|
||||
FROM [#temp_address] [t1] (NOLOCK)
|
||||
JOIN [dbo].[Address] [ad] (NOLOCK)
|
||||
ON [ad].[Address_ID] = [t1].[Address_ID]
|
||||
WHERE ISNULL([ad].[AD_last_name], '') <> ISNULL([t1].[AD_last_name], '')
|
||||
OR ISNULL([ad].[AD_name], '') <> ISNULL([t1].[ad_name], '');
|
||||
|
||||
END; /* @mode = 2 */
|
||||
DROP TABLE [#temp_address];
|
||||
COMMIT TRANSACTION;
|
||||
END TRY
|
||||
BEGIN CATCH
|
||||
PRINT ERROR_MESSAGE()
|
||||
PRINT 'on line '+CAST(ERROR_LINE() AS VARCHAR(6))
|
||||
ROLLBACK TRANSACTION
|
||||
END CATCH
|
||||
Reference in New Issue
Block a user