@echo off call "C:\GlobalCube\Tasks\scripts\config2.bat" rem ==WORK_UNITS== del C:\GlobalCube\System\OPTIMA\SQL\logs\WORK_UNITS*.* /Q /F >nul 2>nul if not "%1"=="" goto :increment :full call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[WORK_UNITS]" call bcp_queryout.bat "WORK_UNITS_1" "SELECT T1.[TIME_UNIT], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[UNIT_DESC], T1.[AW_TYPE], T1.[AW_SEGMENTS], T1.[ROUNDING], T1.[SUM_TIME_BEFORE_AW_CALC], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[WORK_UNITS] T1 WHERE 1 = 1 ORDER BY T1.[timestamp] " call bcp_in.bat "WORK_UNITS_1" "[import].[WORK_UNITS]" "OPTIMA" call bcp_queryout.bat "WORK_UNITS_2" "SELECT T1.[TIME_UNIT], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[UNIT_DESC], T1.[AW_TYPE], T1.[AW_SEGMENTS], T1.[ROUNDING], T1.[SUM_TIME_BEFORE_AW_CALC], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[WORK_UNITS] T1 WHERE 1 = 1 ORDER BY T1.[timestamp] " call bcp_in.bat "WORK_UNITS_2" "[import].[WORK_UNITS]" "OPTIMA" goto :cleanup :increment call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[WORK_UNITS]" call sql_timestamp.bat "WORK_UNITS_1" "[OPTIMA].[import].[WORK_UNITS]" "1" call bcp_queryout.bat "WORK_UNITS_1" "SELECT T1.[TIME_UNIT], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[UNIT_DESC], T1.[AW_TYPE], T1.[AW_SEGMENTS], T1.[ROUNDING], T1.[SUM_TIME_BEFORE_AW_CALC], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[WORK_UNITS] T1 WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] " call bcp_in.bat "WORK_UNITS_1" "[temp].[WORK_UNITS]" "OPTIMAX" call sql_timestamp.bat "WORK_UNITS_2" "[OPTIMA].[import].[WORK_UNITS]" "2" call bcp_queryout.bat "WORK_UNITS_2" "SELECT T1.[TIME_UNIT], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[UNIT_DESC], T1.[AW_TYPE], T1.[AW_SEGMENTS], T1.[ROUNDING], T1.[SUM_TIME_BEFORE_AW_CALC], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[WORK_UNITS] T1 WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] " call bcp_in.bat "WORK_UNITS_2" "[temp].[WORK_UNITS]" "OPTIMAX" call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[WORK_UNITS] T1 INNER JOIN [OPTIMAX].[temp].[WORK_UNITS] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[TIME_UNIT] = T2.[TIME_UNIT]" call sql_query.bat "INSERT INTO [OPTIMA].[import].[WORK_UNITS] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[WORK_UNITS] T1" :cleanup call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\WORK_UNITS_1.csv" call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\WORK_UNITS_2.csv"