@echo off call "C:\GlobalCube\Tasks\scripts\config2.bat" rem ==PRODUCT_STOCK_FILE== del C:\GlobalCube\System\OPTIMA\SQL\logs\PRODUCT_STOCK_FILE*.* /Q /F >nul 2>nul if not "%1"=="" goto :increment :full call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[PRODUCT_STOCK_FILE]" call bcp_queryout.bat "PRODUCT_STOCK_FILE_1" "SELECT T1.[PROD_CODE], T1.[MAKE_CD], T1.[STOCK], T1.[STATE_CODE_PARTS], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[CREATION_DATE], T1.[LOCATION], T1.[SALES_PRICE], T1.[PRICE_CHANGE_DATE], T1.[AVERAGE_PRICE], T1.[RE_PURCHASE_PRICE], T1.[LATEST_PURCH_PRICE], T1.[NEXT_ARR_DATE], T1.[IN_ORDER], T1.[PURCHASE_BACKORDER], T1.[STOCK_AMOUNT], T1.[RESERVED], T1.[BACKORDER_AMOUNT], T1.[STOCKS_VALUE], T1.[INVENTORY_DATE], T1.[INVENTORY_DIFF], T1.[AGE_CODE], T1.[DEPR_CODE], T1.[REORDER_CODE], T1.[MIN_ORDER_POINT], T1.[ORDER_POINT], T1.[ECON_ORDER_QTY], T1.[EXPECTED_DEMAND], T1.[STAND_DEVIATION], T1.[PROB_SALE], T1.[ERROR_SUM], T1.[ORDER_PROPOSAL], T1.[PACK_SIZE_SALE], T1.[MIN_ON_STOCK], T1.[MAX_ON_STOCK], T1.[AVERAGE_STOCK], T1.[INV_DIFF_VALUE], T1.[ON_STOCK], T1.[REALISATION], T1.[SUPPLIER_ALT], T1.[LOCATION_1], T1.[LOCATION_2], T1.[ALARM_CODE], T1.[ABC_CODE], T1.[ABC_CODE_OLD], T1.[DATE_ABC_CHANGED], T1.[INDEX_FACTOR], T1.[PROD_INDEX], T1.[OTIS_CODE], T1.[OTIS_QUANTITY], T1.[COLLEAGUE_INFO], T1.[SEASON_1], T1.[SEASON_2], T1.[LOWEST_PURCH_PRICE], T1.[LOWEST_PU_PR_DATE], T1.[AUTOMATIC_CREATED], T1.[BLOCKING_CODE], T1.[AVERAGE_PRICE_YEAR], T1.[EXTERNAL_TURN_OVER_CODE], T1.[EX_PART_LOCATOR_DATE], T1.[REQUESTED_QUANTITY], T1.[PICKED_QUANTITY], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[IN_ORDER_SCHEDULED], '1' as [Client_DB] FROM [deop01].[dbo].[PRODUCT_STOCK_FILE] T1 WHERE 1 = 1 ORDER BY T1.[timestamp] " call bcp_in.bat "PRODUCT_STOCK_FILE_1" "[import].[PRODUCT_STOCK_FILE]" "OPTIMA" call bcp_queryout.bat "PRODUCT_STOCK_FILE_2" "SELECT T1.[PROD_CODE], T1.[MAKE_CD], T1.[STOCK], T1.[STATE_CODE_PARTS], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[CREATION_DATE], T1.[LOCATION], T1.[SALES_PRICE], T1.[PRICE_CHANGE_DATE], T1.[AVERAGE_PRICE], T1.[RE_PURCHASE_PRICE], T1.[LATEST_PURCH_PRICE], T1.[NEXT_ARR_DATE], T1.[IN_ORDER], T1.[PURCHASE_BACKORDER], T1.[STOCK_AMOUNT], T1.[RESERVED], T1.[BACKORDER_AMOUNT], T1.[STOCKS_VALUE], T1.[INVENTORY_DATE], T1.[INVENTORY_DIFF], T1.[AGE_CODE], T1.[DEPR_CODE], T1.[REORDER_CODE], T1.[MIN_ORDER_POINT], T1.[ORDER_POINT], T1.[ECON_ORDER_QTY], T1.[EXPECTED_DEMAND], T1.[STAND_DEVIATION], T1.[PROB_SALE], T1.[ERROR_SUM], T1.[ORDER_PROPOSAL], T1.[PACK_SIZE_SALE], T1.[MIN_ON_STOCK], T1.[MAX_ON_STOCK], T1.[AVERAGE_STOCK], T1.[INV_DIFF_VALUE], T1.[ON_STOCK], T1.[REALISATION], T1.[SUPPLIER_ALT], T1.[LOCATION_1], T1.[LOCATION_2], T1.[ALARM_CODE], T1.[ABC_CODE], T1.[ABC_CODE_OLD], T1.[DATE_ABC_CHANGED], T1.[INDEX_FACTOR], T1.[PROD_INDEX], T1.[OTIS_CODE], T1.[OTIS_QUANTITY], T1.[COLLEAGUE_INFO], T1.[SEASON_1], T1.[SEASON_2], T1.[LOWEST_PURCH_PRICE], T1.[LOWEST_PU_PR_DATE], T1.[AUTOMATIC_CREATED], T1.[BLOCKING_CODE], T1.[AVERAGE_PRICE_YEAR], T1.[EXTERNAL_TURN_OVER_CODE], T1.[EX_PART_LOCATOR_DATE], T1.[REQUESTED_QUANTITY], T1.[PICKED_QUANTITY], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[IN_ORDER_SCHEDULED], '2' as [Client_DB] FROM [deop02].[dbo].[PRODUCT_STOCK_FILE] T1 WHERE 1 = 1 ORDER BY T1.[timestamp] " call bcp_in.bat "PRODUCT_STOCK_FILE_2" "[import].[PRODUCT_STOCK_FILE]" "OPTIMA" goto :cleanup :increment call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[PRODUCT_STOCK_FILE]" call sql_timestamp.bat "PRODUCT_STOCK_FILE_1" "[OPTIMA].[import].[PRODUCT_STOCK_FILE]" "1" call bcp_queryout.bat "PRODUCT_STOCK_FILE_1" "SELECT T1.[PROD_CODE], T1.[MAKE_CD], T1.[STOCK], T1.[STATE_CODE_PARTS], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[CREATION_DATE], T1.[LOCATION], T1.[SALES_PRICE], T1.[PRICE_CHANGE_DATE], T1.[AVERAGE_PRICE], T1.[RE_PURCHASE_PRICE], T1.[LATEST_PURCH_PRICE], T1.[NEXT_ARR_DATE], T1.[IN_ORDER], T1.[PURCHASE_BACKORDER], T1.[STOCK_AMOUNT], T1.[RESERVED], T1.[BACKORDER_AMOUNT], T1.[STOCKS_VALUE], T1.[INVENTORY_DATE], T1.[INVENTORY_DIFF], T1.[AGE_CODE], T1.[DEPR_CODE], T1.[REORDER_CODE], T1.[MIN_ORDER_POINT], T1.[ORDER_POINT], T1.[ECON_ORDER_QTY], T1.[EXPECTED_DEMAND], T1.[STAND_DEVIATION], T1.[PROB_SALE], T1.[ERROR_SUM], T1.[ORDER_PROPOSAL], T1.[PACK_SIZE_SALE], T1.[MIN_ON_STOCK], T1.[MAX_ON_STOCK], T1.[AVERAGE_STOCK], T1.[INV_DIFF_VALUE], T1.[ON_STOCK], T1.[REALISATION], T1.[SUPPLIER_ALT], T1.[LOCATION_1], T1.[LOCATION_2], T1.[ALARM_CODE], T1.[ABC_CODE], T1.[ABC_CODE_OLD], T1.[DATE_ABC_CHANGED], T1.[INDEX_FACTOR], T1.[PROD_INDEX], T1.[OTIS_CODE], T1.[OTIS_QUANTITY], T1.[COLLEAGUE_INFO], T1.[SEASON_1], T1.[SEASON_2], T1.[LOWEST_PURCH_PRICE], T1.[LOWEST_PU_PR_DATE], T1.[AUTOMATIC_CREATED], T1.[BLOCKING_CODE], T1.[AVERAGE_PRICE_YEAR], T1.[EXTERNAL_TURN_OVER_CODE], T1.[EX_PART_LOCATOR_DATE], T1.[REQUESTED_QUANTITY], T1.[PICKED_QUANTITY], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[IN_ORDER_SCHEDULED], '1' as [Client_DB] FROM [deop01].[dbo].[PRODUCT_STOCK_FILE] T1 WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] " call bcp_in.bat "PRODUCT_STOCK_FILE_1" "[temp].[PRODUCT_STOCK_FILE]" "OPTIMAX" call sql_timestamp.bat "PRODUCT_STOCK_FILE_2" "[OPTIMA].[import].[PRODUCT_STOCK_FILE]" "2" call bcp_queryout.bat "PRODUCT_STOCK_FILE_2" "SELECT T1.[PROD_CODE], T1.[MAKE_CD], T1.[STOCK], T1.[STATE_CODE_PARTS], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[CREATION_DATE], T1.[LOCATION], T1.[SALES_PRICE], T1.[PRICE_CHANGE_DATE], T1.[AVERAGE_PRICE], T1.[RE_PURCHASE_PRICE], T1.[LATEST_PURCH_PRICE], T1.[NEXT_ARR_DATE], T1.[IN_ORDER], T1.[PURCHASE_BACKORDER], T1.[STOCK_AMOUNT], T1.[RESERVED], T1.[BACKORDER_AMOUNT], T1.[STOCKS_VALUE], T1.[INVENTORY_DATE], T1.[INVENTORY_DIFF], T1.[AGE_CODE], T1.[DEPR_CODE], T1.[REORDER_CODE], T1.[MIN_ORDER_POINT], T1.[ORDER_POINT], T1.[ECON_ORDER_QTY], T1.[EXPECTED_DEMAND], T1.[STAND_DEVIATION], T1.[PROB_SALE], T1.[ERROR_SUM], T1.[ORDER_PROPOSAL], T1.[PACK_SIZE_SALE], T1.[MIN_ON_STOCK], T1.[MAX_ON_STOCK], T1.[AVERAGE_STOCK], T1.[INV_DIFF_VALUE], T1.[ON_STOCK], T1.[REALISATION], T1.[SUPPLIER_ALT], T1.[LOCATION_1], T1.[LOCATION_2], T1.[ALARM_CODE], T1.[ABC_CODE], T1.[ABC_CODE_OLD], T1.[DATE_ABC_CHANGED], T1.[INDEX_FACTOR], T1.[PROD_INDEX], T1.[OTIS_CODE], T1.[OTIS_QUANTITY], T1.[COLLEAGUE_INFO], T1.[SEASON_1], T1.[SEASON_2], T1.[LOWEST_PURCH_PRICE], T1.[LOWEST_PU_PR_DATE], T1.[AUTOMATIC_CREATED], T1.[BLOCKING_CODE], T1.[AVERAGE_PRICE_YEAR], T1.[EXTERNAL_TURN_OVER_CODE], T1.[EX_PART_LOCATOR_DATE], T1.[REQUESTED_QUANTITY], T1.[PICKED_QUANTITY], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[IN_ORDER_SCHEDULED], '2' as [Client_DB] FROM [deop02].[dbo].[PRODUCT_STOCK_FILE] T1 WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] " call bcp_in.bat "PRODUCT_STOCK_FILE_2" "[temp].[PRODUCT_STOCK_FILE]" "OPTIMAX" call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[PRODUCT_STOCK_FILE] T1 INNER JOIN [OPTIMAX].[temp].[PRODUCT_STOCK_FILE] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[MAKE_CD] = T2.[MAKE_CD] AND T1.[PROD_CODE] = T2.[PROD_CODE] AND T1.[STOCK] = T2.[STOCK]" call sql_query.bat "INSERT INTO [OPTIMA].[import].[PRODUCT_STOCK_FILE] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[PRODUCT_STOCK_FILE] T1" :cleanup call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\PRODUCT_STOCK_FILE_1.csv" call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\PRODUCT_STOCK_FILE_2.csv"