@echo off call "C:\GlobalCube\Tasks\scripts\config2.bat" rem ==UNIT_TRANSFER_TAB== del C:\GlobalCube\System\OPTIMA\SQL\logs\UNIT_TRANSFER_TAB*.* /Q /F >nul 2>nul if not "%1"=="" goto :increment :full call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[UNIT_TRANSFER_TAB]" call bcp_queryout.bat "UNIT_TRANSFER_TAB_1" "SELECT T1.[DEPARTMENT], T1.[BOOK_KEEPING_CODE], T1.[TRANSFER_CODE], T1.[INT_EXT_FLAG], T1.[ACCT_NR_UNIT_CL_1], T1.[ACCT_NR_UNIT_CL_2], T1.[ACCT_NR_UNIT_CL_3], T1.[ACCT_NR_UNIT_CL_4], T1.[ACCT_NR_UNIT_CL_5], T1.[ACCT_NR_UNIT_CL_6], T1.[ACCT_NR_UNIT_CL_7], T1.[ACCT_NR_UNIT_CL_8], T1.[ACCT_NR_UNIT_CL_9], T1.[TRANSFER_DEPT], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[CONV_FLAG], T1.[SUSPENSE_ACCOUNT], '1' as [Client_DB] FROM [deop01].[dbo].[UNIT_TRANSFER_TAB] T1 WHERE 1 = 1 ORDER BY T1.[timestamp] " call bcp_in.bat "UNIT_TRANSFER_TAB_1" "[import].[UNIT_TRANSFER_TAB]" "OPTIMA" call bcp_queryout.bat "UNIT_TRANSFER_TAB_2" "SELECT T1.[DEPARTMENT], T1.[BOOK_KEEPING_CODE], T1.[TRANSFER_CODE], T1.[INT_EXT_FLAG], T1.[ACCT_NR_UNIT_CL_1], T1.[ACCT_NR_UNIT_CL_2], T1.[ACCT_NR_UNIT_CL_3], T1.[ACCT_NR_UNIT_CL_4], T1.[ACCT_NR_UNIT_CL_5], T1.[ACCT_NR_UNIT_CL_6], T1.[ACCT_NR_UNIT_CL_7], T1.[ACCT_NR_UNIT_CL_8], T1.[ACCT_NR_UNIT_CL_9], T1.[TRANSFER_DEPT], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[CONV_FLAG], T1.[SUSPENSE_ACCOUNT], '2' as [Client_DB] FROM [deop02].[dbo].[UNIT_TRANSFER_TAB] T1 WHERE 1 = 1 ORDER BY T1.[timestamp] " call bcp_in.bat "UNIT_TRANSFER_TAB_2" "[import].[UNIT_TRANSFER_TAB]" "OPTIMA" goto :cleanup :increment call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[UNIT_TRANSFER_TAB]" call sql_timestamp.bat "UNIT_TRANSFER_TAB_1" "[OPTIMA].[import].[UNIT_TRANSFER_TAB]" "1" call bcp_queryout.bat "UNIT_TRANSFER_TAB_1" "SELECT T1.[DEPARTMENT], T1.[BOOK_KEEPING_CODE], T1.[TRANSFER_CODE], T1.[INT_EXT_FLAG], T1.[ACCT_NR_UNIT_CL_1], T1.[ACCT_NR_UNIT_CL_2], T1.[ACCT_NR_UNIT_CL_3], T1.[ACCT_NR_UNIT_CL_4], T1.[ACCT_NR_UNIT_CL_5], T1.[ACCT_NR_UNIT_CL_6], T1.[ACCT_NR_UNIT_CL_7], T1.[ACCT_NR_UNIT_CL_8], T1.[ACCT_NR_UNIT_CL_9], T1.[TRANSFER_DEPT], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[CONV_FLAG], T1.[SUSPENSE_ACCOUNT], '1' as [Client_DB] FROM [deop01].[dbo].[UNIT_TRANSFER_TAB] T1 WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] " call bcp_in.bat "UNIT_TRANSFER_TAB_1" "[temp].[UNIT_TRANSFER_TAB]" "OPTIMAX" call sql_timestamp.bat "UNIT_TRANSFER_TAB_2" "[OPTIMA].[import].[UNIT_TRANSFER_TAB]" "2" call bcp_queryout.bat "UNIT_TRANSFER_TAB_2" "SELECT T1.[DEPARTMENT], T1.[BOOK_KEEPING_CODE], T1.[TRANSFER_CODE], T1.[INT_EXT_FLAG], T1.[ACCT_NR_UNIT_CL_1], T1.[ACCT_NR_UNIT_CL_2], T1.[ACCT_NR_UNIT_CL_3], T1.[ACCT_NR_UNIT_CL_4], T1.[ACCT_NR_UNIT_CL_5], T1.[ACCT_NR_UNIT_CL_6], T1.[ACCT_NR_UNIT_CL_7], T1.[ACCT_NR_UNIT_CL_8], T1.[ACCT_NR_UNIT_CL_9], T1.[TRANSFER_DEPT], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[CONV_FLAG], T1.[SUSPENSE_ACCOUNT], '2' as [Client_DB] FROM [deop02].[dbo].[UNIT_TRANSFER_TAB] T1 WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] " call bcp_in.bat "UNIT_TRANSFER_TAB_2" "[temp].[UNIT_TRANSFER_TAB]" "OPTIMAX" call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[UNIT_TRANSFER_TAB] T1 INNER JOIN [OPTIMAX].[temp].[UNIT_TRANSFER_TAB] T2 ON T1.[BOOK_KEEPING_CODE] = T2.[BOOK_KEEPING_CODE] AND T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[DEPARTMENT] = T2.[DEPARTMENT] AND T1.[INT_EXT_FLAG] = T2.[INT_EXT_FLAG] AND T1.[TRANSFER_CODE] = T2.[TRANSFER_CODE]" call sql_query.bat "INSERT INTO [OPTIMA].[import].[UNIT_TRANSFER_TAB] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[UNIT_TRANSFER_TAB] T1" :cleanup call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\UNIT_TRANSFER_TAB_1.csv" call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\UNIT_TRANSFER_TAB_2.csv"