Browse Source

Datenbank mit Indizes und Primärschlüssel

Ley Bergneustadt 11 tháng trước cách đây
mục cha
commit
d967493de4
100 tập tin đã thay đổi với 3306 bổ sung0 xóa
  1. 32 0
      System/OPTIMA/SQL/batch/AA_TRTYPE.bat
  2. 34 0
      System/OPTIMA/SQL/batch/ACCOUNT_INFO.bat
  3. 32 0
      System/OPTIMA/SQL/batch/ACCT_BALANCE.bat
  4. 34 0
      System/OPTIMA/SQL/batch/ACCT_DOC_DATA.bat
  5. 34 0
      System/OPTIMA/SQL/batch/ACCT_DOC_DATA_01.bat
  6. 34 0
      System/OPTIMA/SQL/batch/ACCT_DOC_KEY.bat
  7. 34 0
      System/OPTIMA/SQL/batch/ACCT_DOC_KEY_01.bat
  8. 32 0
      System/OPTIMA/SQL/batch/ACCT_DOC_SALESCLAS.bat
  9. 32 0
      System/OPTIMA/SQL/batch/ACTIVITY.bat
  10. 32 0
      System/OPTIMA/SQL/batch/APPORTIONED_INV_TIME.bat
  11. 32 0
      System/OPTIMA/SQL/batch/APPORTIONED_USED_TIME.bat
  12. 34 0
      System/OPTIMA/SQL/batch/CALENDAR_EVENT.bat
  13. 32 0
      System/OPTIMA/SQL/batch/CALENDAR_INFO.bat
  14. 32 0
      System/OPTIMA/SQL/batch/CALENDAR_PATTERN.bat
  15. 32 0
      System/OPTIMA/SQL/batch/CAR_STATISTIC.bat
  16. 32 0
      System/OPTIMA/SQL/batch/COMM_TRANS_UNIT.bat
  17. 32 0
      System/OPTIMA/SQL/batch/COMM_UNIT.bat
  18. 32 0
      System/OPTIMA/SQL/batch/COURTESY_CAR.bat
  19. 10 0
      System/OPTIMA/SQL/batch/CUSTOMER.bat
  20. 34 0
      System/OPTIMA/SQL/batch/CUSTOMER_TRANSACT.bat
  21. 32 0
      System/OPTIMA/SQL/batch/DEPARTMENT_TYPE.bat
  22. 32 0
      System/OPTIMA/SQL/batch/EMPLOYEE.bat
  23. 34 0
      System/OPTIMA/SQL/batch/GLOBAL_MAKE.bat
  24. 9 0
      System/OPTIMA/SQL/batch/GM_DRIVE_ORDER.bat
  25. 32 0
      System/OPTIMA/SQL/batch/ORDER_ACCUMULATION.bat
  26. 10 0
      System/OPTIMA/SQL/batch/ORDER_HEADER.bat
  27. 9 0
      System/OPTIMA/SQL/batch/ORDER_LINE.bat
  28. 32 0
      System/OPTIMA/SQL/batch/ORDER_OPEN_ITEMS.bat
  29. 32 0
      System/OPTIMA/SQL/batch/ORDER_SERVICE_SCHEMES.bat
  30. 32 0
      System/OPTIMA/SQL/batch/PERSON.bat
  31. 32 0
      System/OPTIMA/SQL/batch/PERSON_INFO.bat
  32. 10 0
      System/OPTIMA/SQL/batch/PRODUCT_FILE.bat
  33. 32 0
      System/OPTIMA/SQL/batch/PRODUCT_STOCK_FILE.bat
  34. 32 0
      System/OPTIMA/SQL/batch/PROFILE.bat
  35. 32 0
      System/OPTIMA/SQL/batch/PROFILE_TYPE.bat
  36. 32 0
      System/OPTIMA/SQL/batch/PUNCH.bat
  37. 32 0
      System/OPTIMA/SQL/batch/PURCH_DISCOUNTS.bat
  38. 32 0
      System/OPTIMA/SQL/batch/PURCH_DISC_TYPES.bat
  39. 9 0
      System/OPTIMA/SQL/batch/SERVICE_2000_FILE.bat
  40. 32 0
      System/OPTIMA/SQL/batch/SITE.bat
  41. 10 0
      System/OPTIMA/SQL/batch/SUPPLIER.bat
  42. 32 0
      System/OPTIMA/SQL/batch/SUPPLIER_TRANSACT.bat
  43. 32 0
      System/OPTIMA/SQL/batch/TIME_CONTROL_END.bat
  44. 32 0
      System/OPTIMA/SQL/batch/TIME_CONTROL_OPEN.bat
  45. 32 0
      System/OPTIMA/SQL/batch/TIME_CONTROL_TRANS.bat
  46. 34 0
      System/OPTIMA/SQL/batch/TRANSACTION_TYPE.bat
  47. 32 0
      System/OPTIMA/SQL/batch/UNIT_CHANGE_HIST.bat
  48. 32 0
      System/OPTIMA/SQL/batch/UNIT_CLASSIFICAT.bat
  49. 10 0
      System/OPTIMA/SQL/batch/UNIT_FILE.bat
  50. 32 0
      System/OPTIMA/SQL/batch/UNIT_HISTORY.bat
  51. 32 0
      System/OPTIMA/SQL/batch/UNIT_LINK_EXT.bat
  52. 32 0
      System/OPTIMA/SQL/batch/UNIT_SALES_PRICE_LOG.bat
  53. 32 0
      System/OPTIMA/SQL/batch/UNIT_STATUS_HIST.bat
  54. 32 0
      System/OPTIMA/SQL/batch/UNIT_TEMP_TAB_GRNI.bat
  55. 32 0
      System/OPTIMA/SQL/batch/UNIT_TRANSFER_TAB.bat
  56. 9 0
      System/OPTIMA/SQL/batch/UNIT_TYPE_FILE.bat
  57. 32 0
      System/OPTIMA/SQL/batch/UPDATE_OPTION.bat
  58. 10 0
      System/OPTIMA/SQL/batch/VEHICLE.bat
  59. 32 0
      System/OPTIMA/SQL/batch/VEHICLE_ACCRUALS.bat
  60. 9 0
      System/OPTIMA/SQL/batch/VEHICLE_DOCKETCARD.bat
  61. 10 0
      System/OPTIMA/SQL/batch/VEHICLE_EXTENSION.bat
  62. 32 0
      System/OPTIMA/SQL/batch/VEH_CARGRP_PURCHORIGIN.bat
  63. 32 0
      System/OPTIMA/SQL/batch/VEH_CLASSIFICATION_CODE.bat
  64. 32 0
      System/OPTIMA/SQL/batch/VEH_IN_TRANSIT.bat
  65. 32 0
      System/OPTIMA/SQL/batch/VEH_LINK_EXT.bat
  66. 32 0
      System/OPTIMA/SQL/batch/VEH_MAX_STOCK.bat
  67. 10 0
      System/OPTIMA/SQL/batch/VEH_ORDER_HEADER.bat
  68. 32 0
      System/OPTIMA/SQL/batch/VEH_ORDER_LINE.bat
  69. 34 0
      System/OPTIMA/SQL/batch/VEH_ORDER_OPTION.bat
  70. 32 0
      System/OPTIMA/SQL/batch/VEH_TRANSACT_COLUMNS.bat
  71. 32 0
      System/OPTIMA/SQL/batch/VEH_TRANSACT_GRID.bat
  72. 32 0
      System/OPTIMA/SQL/batch/VEH_TRANSACT_GROUPS.bat
  73. 32 0
      System/OPTIMA/SQL/batch/VEH_TRANSMISSION_CODES.bat
  74. 32 0
      System/OPTIMA/SQL/batch/VPP25.bat
  75. 32 0
      System/OPTIMA/SQL/batch/VPP28.bat
  76. 32 0
      System/OPTIMA/SQL/batch/VPP2C.bat
  77. 32 0
      System/OPTIMA/SQL/batch/VPP43.bat
  78. 34 0
      System/OPTIMA/SQL/batch/VPP48.bat
  79. 32 0
      System/OPTIMA/SQL/batch/VPP4K.bat
  80. 32 0
      System/OPTIMA/SQL/batch/VPP51.bat
  81. 32 0
      System/OPTIMA/SQL/batch/VPP53.bat
  82. 34 0
      System/OPTIMA/SQL/batch/VPP5A.bat
  83. 34 0
      System/OPTIMA/SQL/batch/VPP5M.bat
  84. 32 0
      System/OPTIMA/SQL/batch/VPP5Q.bat
  85. 32 0
      System/OPTIMA/SQL/batch/VPP5R.bat
  86. 34 0
      System/OPTIMA/SQL/batch/VPP61.bat
  87. 34 0
      System/OPTIMA/SQL/batch/VPP65.bat
  88. 32 0
      System/OPTIMA/SQL/batch/VPP72.bat
  89. 32 0
      System/OPTIMA/SQL/batch/VPP73.bat
  90. 32 0
      System/OPTIMA/SQL/batch/VPP74.bat
  91. 32 0
      System/OPTIMA/SQL/batch/VPP91.bat
  92. 32 0
      System/OPTIMA/SQL/batch/VPP93.bat
  93. 32 0
      System/OPTIMA/SQL/batch/VPPT1.bat
  94. 32 0
      System/OPTIMA/SQL/batch/WORKING_PERIOD.bat
  95. 32 0
      System/OPTIMA/SQL/batch/WORKSHOP_ORDER_SPLIT.bat
  96. 32 0
      System/OPTIMA/SQL/batch/WORKSHOP_PLANNING.bat
  97. 32 0
      System/OPTIMA/SQL/batch/WORKSHOP_TEAMS.bat
  98. 32 0
      System/OPTIMA/SQL/batch/WORK_LINE_STATUS.bat
  99. 32 0
      System/OPTIMA/SQL/batch/WORK_UNITS.bat
  100. 399 0
      System/OPTIMA/SQL/batch/_OPTIMA.bat

+ 32 - 0
System/OPTIMA/SQL/batch/AA_TRTYPE.bat

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

+ 34 - 0
System/OPTIMA/SQL/batch/ACCOUNT_INFO.bat

@@ -0,0 +1,34 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==ACCOUNT_INFO==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\ACCOUNT_INFO*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[ACCOUNT_INFO]"
+rem Nur in Quelle: VAT_STD_CODE;ACCT_NO_SAFT;RAPPORT_NUMBER_FOR_SKAT;DESCRIPTION;VAT_STD_DESCRIPTION;SKR51_ACCT;ACCT_INFO_STD
+  call bcp_queryout.bat "ACCOUNT_INFO_1" "SELECT T1.[ACCT_NR], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[LEDGER_ACCTS_NAME], T1.[LEDGER_ACCTS_NAME2], T1.[SIGN_MARK], T1.[BUDGET_ALLOC_CODE], T1.[DEPT_SPLIT], T1.[CASHBOOK_MARK], T1.[VAT_TYPE], T1.[VAT_RATE_CODE], T1.[TYPE_ACCTT], T1.[CHECK_CODE], T1.[CASH_BAL_NO_SERIE], T1.[PRINT_PAGE_NO], T1.[VAT_TABLE_ACCT], T1.[LAST_PRINT_PAGE_NO], T1.[CASHBON_SERIE], T1.[DEFAULT_AA_TRTYPE], T1.[ACCT_ACCU_CODE], T1.[FISCALYEAR_ENDDATE], T1.[BALANCING_METHOD], T1.[ACCT_SUB_TYPE], T1.[BANK_ACCT], T1.[FIXED_ASSET_ACCT], T1.[ACCT_SCHEDULE_TYPE], T1.[MAIN_CASH_ACCT_NO], T1.[CASH_DIFF_ACCT_NO], T1.[PETTY_CASH_AMOUNT], T1.[SRU_CODE], T1.[ACCT_MAPPING_NO], T1.[RATIO_CODE], T1.[QUANTITY_ALLOWED], T1.[INTERNAL_TRANSFER], T1.[CLEAN_CASH], T1.[CLEAN_CASH_NEXT_NUMBER], T1.[CLEAN_CASH_URL], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[DEPARTMENT], T1.[OPENING_AA_TRTYPE], '1' as [Client_DB] FROM [deop01].[dbo].[ACCOUNT_INFO] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "ACCOUNT_INFO_1" "[import].[ACCOUNT_INFO]" "OPTIMA"
+rem Nur in Quelle: VAT_STD_CODE;ACCT_NO_SAFT;RAPPORT_NUMBER_FOR_SKAT;DESCRIPTION;VAT_STD_DESCRIPTION;SKR51_ACCT;ACCT_INFO_STD
+  call bcp_queryout.bat "ACCOUNT_INFO_2" "SELECT T1.[ACCT_NR], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[LEDGER_ACCTS_NAME], T1.[LEDGER_ACCTS_NAME2], T1.[SIGN_MARK], T1.[BUDGET_ALLOC_CODE], T1.[DEPT_SPLIT], T1.[CASHBOOK_MARK], T1.[VAT_TYPE], T1.[VAT_RATE_CODE], T1.[TYPE_ACCTT], T1.[CHECK_CODE], T1.[CASH_BAL_NO_SERIE], T1.[PRINT_PAGE_NO], T1.[VAT_TABLE_ACCT], T1.[LAST_PRINT_PAGE_NO], T1.[CASHBON_SERIE], T1.[DEFAULT_AA_TRTYPE], T1.[ACCT_ACCU_CODE], T1.[FISCALYEAR_ENDDATE], T1.[BALANCING_METHOD], T1.[ACCT_SUB_TYPE], T1.[BANK_ACCT], T1.[FIXED_ASSET_ACCT], T1.[ACCT_SCHEDULE_TYPE], T1.[MAIN_CASH_ACCT_NO], T1.[CASH_DIFF_ACCT_NO], T1.[PETTY_CASH_AMOUNT], T1.[SRU_CODE], T1.[ACCT_MAPPING_NO], T1.[RATIO_CODE], T1.[QUANTITY_ALLOWED], T1.[INTERNAL_TRANSFER], T1.[CLEAN_CASH], T1.[CLEAN_CASH_NEXT_NUMBER], T1.[CLEAN_CASH_URL], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[DEPARTMENT], T1.[OPENING_AA_TRTYPE], '2' as [Client_DB] FROM [deop02].[dbo].[ACCOUNT_INFO] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "ACCOUNT_INFO_2" "[import].[ACCOUNT_INFO]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[ACCOUNT_INFO]"
+
+  call sql_timestamp.bat "ACCOUNT_INFO_1" "[OPTIMA].[import].[ACCOUNT_INFO]" "1"
+  call bcp_queryout.bat "ACCOUNT_INFO_1" "SELECT T1.[ACCT_NR], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[LEDGER_ACCTS_NAME], T1.[LEDGER_ACCTS_NAME2], T1.[SIGN_MARK], T1.[BUDGET_ALLOC_CODE], T1.[DEPT_SPLIT], T1.[CASHBOOK_MARK], T1.[VAT_TYPE], T1.[VAT_RATE_CODE], T1.[TYPE_ACCTT], T1.[CHECK_CODE], T1.[CASH_BAL_NO_SERIE], T1.[PRINT_PAGE_NO], T1.[VAT_TABLE_ACCT], T1.[LAST_PRINT_PAGE_NO], T1.[CASHBON_SERIE], T1.[DEFAULT_AA_TRTYPE], T1.[ACCT_ACCU_CODE], T1.[FISCALYEAR_ENDDATE], T1.[BALANCING_METHOD], T1.[ACCT_SUB_TYPE], T1.[BANK_ACCT], T1.[FIXED_ASSET_ACCT], T1.[ACCT_SCHEDULE_TYPE], T1.[MAIN_CASH_ACCT_NO], T1.[CASH_DIFF_ACCT_NO], T1.[PETTY_CASH_AMOUNT], T1.[SRU_CODE], T1.[ACCT_MAPPING_NO], T1.[RATIO_CODE], T1.[QUANTITY_ALLOWED], T1.[INTERNAL_TRANSFER], T1.[CLEAN_CASH], T1.[CLEAN_CASH_NEXT_NUMBER], T1.[CLEAN_CASH_URL], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[DEPARTMENT], T1.[OPENING_AA_TRTYPE], '1' as [Client_DB] FROM [deop01].[dbo].[ACCOUNT_INFO] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "ACCOUNT_INFO_1" "[temp].[ACCOUNT_INFO]" "OPTIMAX"
+
+  call sql_timestamp.bat "ACCOUNT_INFO_2" "[OPTIMA].[import].[ACCOUNT_INFO]" "2"
+  call bcp_queryout.bat "ACCOUNT_INFO_2" "SELECT T1.[ACCT_NR], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[LEDGER_ACCTS_NAME], T1.[LEDGER_ACCTS_NAME2], T1.[SIGN_MARK], T1.[BUDGET_ALLOC_CODE], T1.[DEPT_SPLIT], T1.[CASHBOOK_MARK], T1.[VAT_TYPE], T1.[VAT_RATE_CODE], T1.[TYPE_ACCTT], T1.[CHECK_CODE], T1.[CASH_BAL_NO_SERIE], T1.[PRINT_PAGE_NO], T1.[VAT_TABLE_ACCT], T1.[LAST_PRINT_PAGE_NO], T1.[CASHBON_SERIE], T1.[DEFAULT_AA_TRTYPE], T1.[ACCT_ACCU_CODE], T1.[FISCALYEAR_ENDDATE], T1.[BALANCING_METHOD], T1.[ACCT_SUB_TYPE], T1.[BANK_ACCT], T1.[FIXED_ASSET_ACCT], T1.[ACCT_SCHEDULE_TYPE], T1.[MAIN_CASH_ACCT_NO], T1.[CASH_DIFF_ACCT_NO], T1.[PETTY_CASH_AMOUNT], T1.[SRU_CODE], T1.[ACCT_MAPPING_NO], T1.[RATIO_CODE], T1.[QUANTITY_ALLOWED], T1.[INTERNAL_TRANSFER], T1.[CLEAN_CASH], T1.[CLEAN_CASH_NEXT_NUMBER], T1.[CLEAN_CASH_URL], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[DEPARTMENT], T1.[OPENING_AA_TRTYPE], '2' as [Client_DB] FROM [deop02].[dbo].[ACCOUNT_INFO] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "ACCOUNT_INFO_2" "[temp].[ACCOUNT_INFO]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[ACCOUNT_INFO] T1 INNER JOIN [OPTIMAX].[temp].[ACCOUNT_INFO] T2 ON T1.[ACCT_NR] = T2.[ACCT_NR] AND T1.[CLIENT_DB] = T2.[CLIENT_DB]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[ACCOUNT_INFO] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[ACCOUNT_INFO] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\ACCOUNT_INFO_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\ACCOUNT_INFO_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/ACCT_BALANCE.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==ACCT_BALANCE==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\ACCT_BALANCE*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[ACCT_BALANCE]"
+  call bcp_queryout.bat "ACCT_BALANCE_1" "SELECT T1.[ACCT_NO], T1.[DEPARTMENT], T1.[BOOKKEEP_PERIOD], T1.[ORIGIN], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[DEBIT_AMOUNT], T1.[CREDIT_AMOUNT], T1.[DEBIT_QUANTITY], T1.[CREDIT_QUANTITY], T1.[ACCT_NO_NEXT_CHART], T1.[DEPARTMENT_NEXT_CHART], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[ACCT_BALANCE] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "ACCT_BALANCE_1" "[import].[ACCT_BALANCE]" "OPTIMA"
+  call bcp_queryout.bat "ACCT_BALANCE_2" "SELECT T1.[ACCT_NO], T1.[DEPARTMENT], T1.[BOOKKEEP_PERIOD], T1.[ORIGIN], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[DEBIT_AMOUNT], T1.[CREDIT_AMOUNT], T1.[DEBIT_QUANTITY], T1.[CREDIT_QUANTITY], T1.[ACCT_NO_NEXT_CHART], T1.[DEPARTMENT_NEXT_CHART], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[ACCT_BALANCE] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "ACCT_BALANCE_2" "[import].[ACCT_BALANCE]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[ACCT_BALANCE]"
+
+  call sql_timestamp.bat "ACCT_BALANCE_1" "[OPTIMA].[import].[ACCT_BALANCE]" "1"
+  call bcp_queryout.bat "ACCT_BALANCE_1" "SELECT T1.[ACCT_NO], T1.[DEPARTMENT], T1.[BOOKKEEP_PERIOD], T1.[ORIGIN], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[DEBIT_AMOUNT], T1.[CREDIT_AMOUNT], T1.[DEBIT_QUANTITY], T1.[CREDIT_QUANTITY], T1.[ACCT_NO_NEXT_CHART], T1.[DEPARTMENT_NEXT_CHART], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[ACCT_BALANCE] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "ACCT_BALANCE_1" "[temp].[ACCT_BALANCE]" "OPTIMAX"
+
+  call sql_timestamp.bat "ACCT_BALANCE_2" "[OPTIMA].[import].[ACCT_BALANCE]" "2"
+  call bcp_queryout.bat "ACCT_BALANCE_2" "SELECT T1.[ACCT_NO], T1.[DEPARTMENT], T1.[BOOKKEEP_PERIOD], T1.[ORIGIN], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[DEBIT_AMOUNT], T1.[CREDIT_AMOUNT], T1.[DEBIT_QUANTITY], T1.[CREDIT_QUANTITY], T1.[ACCT_NO_NEXT_CHART], T1.[DEPARTMENT_NEXT_CHART], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[ACCT_BALANCE] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "ACCT_BALANCE_2" "[temp].[ACCT_BALANCE]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[ACCT_BALANCE] T1 INNER JOIN [OPTIMAX].[temp].[ACCT_BALANCE] T2 ON T1.[ACCT_NO] = T2.[ACCT_NO] AND T1.[BOOKKEEP_PERIOD] = T2.[BOOKKEEP_PERIOD] AND T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[DEPARTMENT] = T2.[DEPARTMENT] AND T1.[ORIGIN] = T2.[ORIGIN]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[ACCT_BALANCE] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[ACCT_BALANCE] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\ACCT_BALANCE_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\ACCT_BALANCE_2.csv"

+ 34 - 0
System/OPTIMA/SQL/batch/ACCT_DOC_DATA.bat

@@ -0,0 +1,34 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==ACCT_DOC_DATA==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\ACCT_DOC_DATA*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA2].[import].[ACCT_DOC_DATA]"
+rem Nur in Quelle: CREATION_DATE;VAT_CODE_SAFT_CHANGEDATE;VAT_CODE_SAFT_HANDLER;VAT_CODE_SAFT
+  call bcp_queryout.bat "ACCT_DOC_DATA_1" "SELECT T1.[REFERENCE_IDENT], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[MODUL], T1.[DOCUMENT_KEY], T1.[SUB_ACCT_TYPE], T1.[SUB_ACCT_NO], T1.[TRANSACT_CODE], T1.[COMMENT], T1.[VAT_CODE], T1.[VAT_PERC], T1.[INV_PERC], T1.[PURCH_INVNO], T1.[SETOFF_ACCT], T1.[CHEQUE_NUMBER], T1.[ORIGINAL_BATCH_NO], T1.[DOCUMENT_DATE], T1.[VAT_TABLE_CODE], T1.[ADD_VAT_RATE_CODE], T1.[ADD_VAT_TABLE_CODE], T1.[ADD_VAT_PERC], T1.[BALANCING_COMMENT], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[EEC_VAT_WORK_CODE], '1' as [Client_DB] FROM [deop01].[dbo].[ACCT_DOC_DATA] T1 INNER JOIN [deop01].[dbo].[ACCT_DOC_KEY] T2 ON T2.[UNIQUE_IDENT] = T1.[REFERENCE_IDENT] WHERE T2.[BOOKKEEP_DATE] >= '2020-01-01T00:00:00' ORDER BY T1.[timestamp] "
+  call bcp_in.bat "ACCT_DOC_DATA_1" "[import].[ACCT_DOC_DATA]" "OPTIMA2"
+rem Nur in Quelle: CREATION_DATE;VAT_CODE_SAFT_CHANGEDATE;VAT_CODE_SAFT_HANDLER;VAT_CODE_SAFT
+  call bcp_queryout.bat "ACCT_DOC_DATA_2" "SELECT T1.[REFERENCE_IDENT], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[MODUL], T1.[DOCUMENT_KEY], T1.[SUB_ACCT_TYPE], T1.[SUB_ACCT_NO], T1.[TRANSACT_CODE], T1.[COMMENT], T1.[VAT_CODE], T1.[VAT_PERC], T1.[INV_PERC], T1.[PURCH_INVNO], T1.[SETOFF_ACCT], T1.[CHEQUE_NUMBER], T1.[ORIGINAL_BATCH_NO], T1.[DOCUMENT_DATE], T1.[VAT_TABLE_CODE], T1.[ADD_VAT_RATE_CODE], T1.[ADD_VAT_TABLE_CODE], T1.[ADD_VAT_PERC], T1.[BALANCING_COMMENT], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[EEC_VAT_WORK_CODE], '2' as [Client_DB] FROM [deop02].[dbo].[ACCT_DOC_DATA] T1 INNER JOIN [deop02].[dbo].[ACCT_DOC_KEY] T2 ON T2.[UNIQUE_IDENT] = T1.[REFERENCE_IDENT] WHERE T2.[BOOKKEEP_DATE] >= '2020-01-01T00:00:00' ORDER BY T1.[timestamp] "
+  call bcp_in.bat "ACCT_DOC_DATA_2" "[import].[ACCT_DOC_DATA]" "OPTIMA2"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[ACCT_DOC_DATA]"
+
+  call sql_timestamp.bat "ACCT_DOC_DATA_1" "[OPTIMA2].[import].[ACCT_DOC_DATA]" "1"
+  call bcp_queryout.bat "ACCT_DOC_DATA_1" "SELECT T1.[REFERENCE_IDENT], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[MODUL], T1.[DOCUMENT_KEY], T1.[SUB_ACCT_TYPE], T1.[SUB_ACCT_NO], T1.[TRANSACT_CODE], T1.[COMMENT], T1.[VAT_CODE], T1.[VAT_PERC], T1.[INV_PERC], T1.[PURCH_INVNO], T1.[SETOFF_ACCT], T1.[CHEQUE_NUMBER], T1.[ORIGINAL_BATCH_NO], T1.[DOCUMENT_DATE], T1.[VAT_TABLE_CODE], T1.[ADD_VAT_RATE_CODE], T1.[ADD_VAT_TABLE_CODE], T1.[ADD_VAT_PERC], T1.[BALANCING_COMMENT], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[EEC_VAT_WORK_CODE], '1' as [Client_DB] FROM [deop01].[dbo].[ACCT_DOC_DATA] T1 INNER JOIN [deop01].[dbo].[ACCT_DOC_KEY] T2 ON T2.[UNIQUE_IDENT] = T1.[REFERENCE_IDENT] WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND T2.[BOOKKEEP_DATE] >= '2020-01-01T00:00:00' ORDER BY T1.[timestamp] "
+  call bcp_in.bat "ACCT_DOC_DATA_1" "[temp].[ACCT_DOC_DATA]" "OPTIMAX"
+
+  call sql_timestamp.bat "ACCT_DOC_DATA_2" "[OPTIMA2].[import].[ACCT_DOC_DATA]" "2"
+  call bcp_queryout.bat "ACCT_DOC_DATA_2" "SELECT T1.[REFERENCE_IDENT], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[MODUL], T1.[DOCUMENT_KEY], T1.[SUB_ACCT_TYPE], T1.[SUB_ACCT_NO], T1.[TRANSACT_CODE], T1.[COMMENT], T1.[VAT_CODE], T1.[VAT_PERC], T1.[INV_PERC], T1.[PURCH_INVNO], T1.[SETOFF_ACCT], T1.[CHEQUE_NUMBER], T1.[ORIGINAL_BATCH_NO], T1.[DOCUMENT_DATE], T1.[VAT_TABLE_CODE], T1.[ADD_VAT_RATE_CODE], T1.[ADD_VAT_TABLE_CODE], T1.[ADD_VAT_PERC], T1.[BALANCING_COMMENT], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[EEC_VAT_WORK_CODE], '2' as [Client_DB] FROM [deop02].[dbo].[ACCT_DOC_DATA] T1 INNER JOIN [deop02].[dbo].[ACCT_DOC_KEY] T2 ON T2.[UNIQUE_IDENT] = T1.[REFERENCE_IDENT] WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND T2.[BOOKKEEP_DATE] >= '2020-01-01T00:00:00' ORDER BY T1.[timestamp] "
+  call bcp_in.bat "ACCT_DOC_DATA_2" "[temp].[ACCT_DOC_DATA]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA2].[import].[ACCT_DOC_DATA] T1 INNER JOIN [OPTIMAX].[temp].[ACCT_DOC_DATA] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[UNIQUE_IDENT] = T2.[UNIQUE_IDENT]"
+  call sql_query.bat "INSERT INTO [OPTIMA2].[import].[ACCT_DOC_DATA] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[ACCT_DOC_DATA] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\ACCT_DOC_DATA_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\ACCT_DOC_DATA_2.csv"

+ 34 - 0
System/OPTIMA/SQL/batch/ACCT_DOC_DATA_01.bat

@@ -0,0 +1,34 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==ACCT_DOC_DATA_01==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\ACCT_DOC_DATA_01*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA2].[import].[ACCT_DOC_DATA_01]"
+rem Nur in Quelle: CREATION_DATE;VAT_CODE_SAFT_CHANGEDATE;VAT_CODE_SAFT_HANDLER;VAT_CODE_SAFT
+  call bcp_queryout.bat "ACCT_DOC_DATA_01_1" "SELECT T1.[REFERENCE_IDENT], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[MODUL], T1.[DOCUMENT_KEY], T1.[SUB_ACCT_TYPE], T1.[SUB_ACCT_NO], T1.[TRANSACT_CODE], T1.[COMMENT], T1.[VAT_CODE], T1.[VAT_PERC], T1.[INV_PERC], T1.[PURCH_INVNO], T1.[SETOFF_ACCT], T1.[CHEQUE_NUMBER], T1.[ORIGINAL_BATCH_NO], T1.[DOCUMENT_DATE], T1.[VAT_TABLE_CODE], T1.[ADD_VAT_RATE_CODE], T1.[ADD_VAT_TABLE_CODE], T1.[ADD_VAT_PERC], T1.[BALANCING_COMMENT], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[EEC_VAT_WORK_CODE], '1' as [Client_DB] FROM [deop01].[dbo].[ACCT_DOC_DATA_01] T1 INNER JOIN [deop01].[dbo].[ACCT_DOC_KEY_01] T2 ON T2.[UNIQUE_IDENT] = T1.[REFERENCE_IDENT] WHERE T2.[BOOKKEEP_DATE] >= '2020-01-01T00:00:00' ORDER BY T1.[timestamp] "
+  call bcp_in.bat "ACCT_DOC_DATA_01_1" "[import].[ACCT_DOC_DATA_01]" "OPTIMA2"
+rem Nur in Quelle: CREATION_DATE;VAT_CODE_SAFT_CHANGEDATE;VAT_CODE_SAFT_HANDLER;VAT_CODE_SAFT
+  call bcp_queryout.bat "ACCT_DOC_DATA_01_2" "SELECT T1.[REFERENCE_IDENT], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[MODUL], T1.[DOCUMENT_KEY], T1.[SUB_ACCT_TYPE], T1.[SUB_ACCT_NO], T1.[TRANSACT_CODE], T1.[COMMENT], T1.[VAT_CODE], T1.[VAT_PERC], T1.[INV_PERC], T1.[PURCH_INVNO], T1.[SETOFF_ACCT], T1.[CHEQUE_NUMBER], T1.[ORIGINAL_BATCH_NO], T1.[DOCUMENT_DATE], T1.[VAT_TABLE_CODE], T1.[ADD_VAT_RATE_CODE], T1.[ADD_VAT_TABLE_CODE], T1.[ADD_VAT_PERC], T1.[BALANCING_COMMENT], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[EEC_VAT_WORK_CODE], '2' as [Client_DB] FROM [deop02].[dbo].[ACCT_DOC_DATA_01] T1 INNER JOIN [deop02].[dbo].[ACCT_DOC_KEY_01] T2 ON T2.[UNIQUE_IDENT] = T1.[REFERENCE_IDENT] WHERE T2.[BOOKKEEP_DATE] >= '2020-01-01T00:00:00' ORDER BY T1.[timestamp] "
+  call bcp_in.bat "ACCT_DOC_DATA_01_2" "[import].[ACCT_DOC_DATA_01]" "OPTIMA2"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[ACCT_DOC_DATA_01]"
+
+  call sql_timestamp.bat "ACCT_DOC_DATA_01_1" "[OPTIMA2].[import].[ACCT_DOC_DATA_01]" "1"
+  call bcp_queryout.bat "ACCT_DOC_DATA_01_1" "SELECT T1.[REFERENCE_IDENT], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[MODUL], T1.[DOCUMENT_KEY], T1.[SUB_ACCT_TYPE], T1.[SUB_ACCT_NO], T1.[TRANSACT_CODE], T1.[COMMENT], T1.[VAT_CODE], T1.[VAT_PERC], T1.[INV_PERC], T1.[PURCH_INVNO], T1.[SETOFF_ACCT], T1.[CHEQUE_NUMBER], T1.[ORIGINAL_BATCH_NO], T1.[DOCUMENT_DATE], T1.[VAT_TABLE_CODE], T1.[ADD_VAT_RATE_CODE], T1.[ADD_VAT_TABLE_CODE], T1.[ADD_VAT_PERC], T1.[BALANCING_COMMENT], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[EEC_VAT_WORK_CODE], '1' as [Client_DB] FROM [deop01].[dbo].[ACCT_DOC_DATA_01] T1 INNER JOIN [deop01].[dbo].[ACCT_DOC_KEY_01] T2 ON T2.[UNIQUE_IDENT] = T1.[REFERENCE_IDENT] WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND T2.[BOOKKEEP_DATE] >= '2020-01-01T00:00:00' ORDER BY T1.[timestamp] "
+  call bcp_in.bat "ACCT_DOC_DATA_01_1" "[temp].[ACCT_DOC_DATA_01]" "OPTIMAX"
+
+  call sql_timestamp.bat "ACCT_DOC_DATA_01_2" "[OPTIMA2].[import].[ACCT_DOC_DATA_01]" "2"
+  call bcp_queryout.bat "ACCT_DOC_DATA_01_2" "SELECT T1.[REFERENCE_IDENT], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[MODUL], T1.[DOCUMENT_KEY], T1.[SUB_ACCT_TYPE], T1.[SUB_ACCT_NO], T1.[TRANSACT_CODE], T1.[COMMENT], T1.[VAT_CODE], T1.[VAT_PERC], T1.[INV_PERC], T1.[PURCH_INVNO], T1.[SETOFF_ACCT], T1.[CHEQUE_NUMBER], T1.[ORIGINAL_BATCH_NO], T1.[DOCUMENT_DATE], T1.[VAT_TABLE_CODE], T1.[ADD_VAT_RATE_CODE], T1.[ADD_VAT_TABLE_CODE], T1.[ADD_VAT_PERC], T1.[BALANCING_COMMENT], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[EEC_VAT_WORK_CODE], '2' as [Client_DB] FROM [deop02].[dbo].[ACCT_DOC_DATA_01] T1 INNER JOIN [deop02].[dbo].[ACCT_DOC_KEY_01] T2 ON T2.[UNIQUE_IDENT] = T1.[REFERENCE_IDENT] WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND T2.[BOOKKEEP_DATE] >= '2020-01-01T00:00:00' ORDER BY T1.[timestamp] "
+  call bcp_in.bat "ACCT_DOC_DATA_01_2" "[temp].[ACCT_DOC_DATA_01]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA2].[import].[ACCT_DOC_DATA_01] T1 INNER JOIN [OPTIMAX].[temp].[ACCT_DOC_DATA_01] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[UNIQUE_IDENT] = T2.[UNIQUE_IDENT]"
+  call sql_query.bat "INSERT INTO [OPTIMA2].[import].[ACCT_DOC_DATA_01] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[ACCT_DOC_DATA_01] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\ACCT_DOC_DATA_01_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\ACCT_DOC_DATA_01_2.csv"

+ 34 - 0
System/OPTIMA/SQL/batch/ACCT_DOC_KEY.bat

@@ -0,0 +1,34 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==ACCT_DOC_KEY==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\ACCT_DOC_KEY*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA2].[import].[ACCT_DOC_KEY]"
+rem Nur in Quelle: SKR51_KEY;SKR51_COST_BEARER
+  call bcp_queryout.bat "ACCT_DOC_KEY_1" "SELECT T1.[UNIQUE_IDENT], T1.[ACCT_NO], T1.[BOOKKEEP_DATE], T1.[BOOKKEEP_PERIOD], T1.[DOCUMENT_NO], T1.[BATCH_NO], T1.[JOURNAL_NO], T1.[BOOK_NO], T1.[ORIGIN], T1.[STATUS], T1.[DEBIT_AMOUNT], T1.[CREDIT_AMOUNT], T1.[DEBIT_QUANTITY], T1.[CREDIT_QUANTITY], T1.[AA_TRTYPE], T1.[SITE], T1.[STRATEGIC_AREA], T1.[DEPARTMENT], T1.[ACTIVITY], T1.[STOCK], T1.[MAKE_FAMILY], T1.[MAKE], T1.[VEHICLE_TYPE], T1.[MODEL_LINE], T1.[FACTORY_MODEL], T1.[WORKSHOP_MODEL], T1.[PRODUCT_GROUP], T1.[REPAIR_GROUP], T1.[KIT_GROUP], T1.[VAT_CODE_ORDER], T1.[TIME_CODE], T1.[INT_EXT_CODE], T1.[DESTINATION], T1.[PRICE_CODE], T1.[REDUCTION_CODE], T1.[VAT_RATE_CODE], T1.[MISC_NO], T1.[BOOKKEEPING_CODE], T1.[COST_REVENUE_CODE], T1.[REASON_CODE], T1.[PART_GROUP], T1.[OWN_DIMENSION_1], T1.[OWN_DIMENSION_2], T1.[OWN_DIMENSION_3], T1.[OWN_DIMENSION_4], T1.[OWN_DIMENSION_5], T1.[INT_VOUCHER_NO], T1.[BALANCING_MARK], T1.[ACCT_SCHEDULE_ID], T1.[REGISTER_NUMBER], T1.[PURCH_ORIGIN_CODE], T1.[USED_VEH_DEST_CODE], T1.[USE_OF_VEHICLE], T1.[ACCT_NO_NEXT_CHART], T1.[DEPARTMENT_NEXT_CHART], T1.[CONV_FLAG], T1.[timestamp], T1.[CL_DET_CODE], T1.[CL_TROUBLE_CODE], T1.[CL_TYPE], T1.[PURCH_SALESMAN], T1.[SALE_SALESMAN], '1' as [Client_DB] FROM [deop01].[dbo].[ACCT_DOC_KEY] T1  WHERE T1.[BOOKKEEP_DATE] >= '2020-01-01T00:00:00' ORDER BY T1.[timestamp] "
+  call bcp_in.bat "ACCT_DOC_KEY_1" "[import].[ACCT_DOC_KEY]" "OPTIMA2"
+rem Nur in Quelle: SKR51_KEY;SKR51_COST_BEARER
+  call bcp_queryout.bat "ACCT_DOC_KEY_2" "SELECT T1.[UNIQUE_IDENT], T1.[ACCT_NO], T1.[BOOKKEEP_DATE], T1.[BOOKKEEP_PERIOD], T1.[DOCUMENT_NO], T1.[BATCH_NO], T1.[JOURNAL_NO], T1.[BOOK_NO], T1.[ORIGIN], T1.[STATUS], T1.[DEBIT_AMOUNT], T1.[CREDIT_AMOUNT], T1.[DEBIT_QUANTITY], T1.[CREDIT_QUANTITY], T1.[AA_TRTYPE], T1.[SITE], T1.[STRATEGIC_AREA], T1.[DEPARTMENT], T1.[ACTIVITY], T1.[STOCK], T1.[MAKE_FAMILY], T1.[MAKE], T1.[VEHICLE_TYPE], T1.[MODEL_LINE], T1.[FACTORY_MODEL], T1.[WORKSHOP_MODEL], T1.[PRODUCT_GROUP], T1.[REPAIR_GROUP], T1.[KIT_GROUP], T1.[VAT_CODE_ORDER], T1.[TIME_CODE], T1.[INT_EXT_CODE], T1.[DESTINATION], T1.[PRICE_CODE], T1.[REDUCTION_CODE], T1.[VAT_RATE_CODE], T1.[MISC_NO], T1.[BOOKKEEPING_CODE], T1.[COST_REVENUE_CODE], T1.[REASON_CODE], T1.[PART_GROUP], T1.[OWN_DIMENSION_1], T1.[OWN_DIMENSION_2], T1.[OWN_DIMENSION_3], T1.[OWN_DIMENSION_4], T1.[OWN_DIMENSION_5], T1.[INT_VOUCHER_NO], T1.[BALANCING_MARK], T1.[ACCT_SCHEDULE_ID], T1.[REGISTER_NUMBER], T1.[PURCH_ORIGIN_CODE], T1.[USED_VEH_DEST_CODE], T1.[USE_OF_VEHICLE], T1.[ACCT_NO_NEXT_CHART], T1.[DEPARTMENT_NEXT_CHART], T1.[CONV_FLAG], T1.[timestamp], T1.[CL_DET_CODE], T1.[CL_TROUBLE_CODE], T1.[CL_TYPE], T1.[PURCH_SALESMAN], T1.[SALE_SALESMAN], '2' as [Client_DB] FROM [deop02].[dbo].[ACCT_DOC_KEY] T1  WHERE T1.[BOOKKEEP_DATE] >= '2020-01-01T00:00:00' ORDER BY T1.[timestamp] "
+  call bcp_in.bat "ACCT_DOC_KEY_2" "[import].[ACCT_DOC_KEY]" "OPTIMA2"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[ACCT_DOC_KEY]"
+
+  call sql_timestamp.bat "ACCT_DOC_KEY_1" "[OPTIMA2].[import].[ACCT_DOC_KEY]" "1"
+  call bcp_queryout.bat "ACCT_DOC_KEY_1" "SELECT T1.[UNIQUE_IDENT], T1.[ACCT_NO], T1.[BOOKKEEP_DATE], T1.[BOOKKEEP_PERIOD], T1.[DOCUMENT_NO], T1.[BATCH_NO], T1.[JOURNAL_NO], T1.[BOOK_NO], T1.[ORIGIN], T1.[STATUS], T1.[DEBIT_AMOUNT], T1.[CREDIT_AMOUNT], T1.[DEBIT_QUANTITY], T1.[CREDIT_QUANTITY], T1.[AA_TRTYPE], T1.[SITE], T1.[STRATEGIC_AREA], T1.[DEPARTMENT], T1.[ACTIVITY], T1.[STOCK], T1.[MAKE_FAMILY], T1.[MAKE], T1.[VEHICLE_TYPE], T1.[MODEL_LINE], T1.[FACTORY_MODEL], T1.[WORKSHOP_MODEL], T1.[PRODUCT_GROUP], T1.[REPAIR_GROUP], T1.[KIT_GROUP], T1.[VAT_CODE_ORDER], T1.[TIME_CODE], T1.[INT_EXT_CODE], T1.[DESTINATION], T1.[PRICE_CODE], T1.[REDUCTION_CODE], T1.[VAT_RATE_CODE], T1.[MISC_NO], T1.[BOOKKEEPING_CODE], T1.[COST_REVENUE_CODE], T1.[REASON_CODE], T1.[PART_GROUP], T1.[OWN_DIMENSION_1], T1.[OWN_DIMENSION_2], T1.[OWN_DIMENSION_3], T1.[OWN_DIMENSION_4], T1.[OWN_DIMENSION_5], T1.[INT_VOUCHER_NO], T1.[BALANCING_MARK], T1.[ACCT_SCHEDULE_ID], T1.[REGISTER_NUMBER], T1.[PURCH_ORIGIN_CODE], T1.[USED_VEH_DEST_CODE], T1.[USE_OF_VEHICLE], T1.[ACCT_NO_NEXT_CHART], T1.[DEPARTMENT_NEXT_CHART], T1.[CONV_FLAG], T1.[timestamp], T1.[CL_DET_CODE], T1.[CL_TROUBLE_CODE], T1.[CL_TYPE], T1.[PURCH_SALESMAN], T1.[SALE_SALESMAN], '1' as [Client_DB] FROM [deop01].[dbo].[ACCT_DOC_KEY] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND T1.[BOOKKEEP_DATE] >= '2020-01-01T00:00:00' ORDER BY T1.[timestamp] "
+  call bcp_in.bat "ACCT_DOC_KEY_1" "[temp].[ACCT_DOC_KEY]" "OPTIMAX"
+
+  call sql_timestamp.bat "ACCT_DOC_KEY_2" "[OPTIMA2].[import].[ACCT_DOC_KEY]" "2"
+  call bcp_queryout.bat "ACCT_DOC_KEY_2" "SELECT T1.[UNIQUE_IDENT], T1.[ACCT_NO], T1.[BOOKKEEP_DATE], T1.[BOOKKEEP_PERIOD], T1.[DOCUMENT_NO], T1.[BATCH_NO], T1.[JOURNAL_NO], T1.[BOOK_NO], T1.[ORIGIN], T1.[STATUS], T1.[DEBIT_AMOUNT], T1.[CREDIT_AMOUNT], T1.[DEBIT_QUANTITY], T1.[CREDIT_QUANTITY], T1.[AA_TRTYPE], T1.[SITE], T1.[STRATEGIC_AREA], T1.[DEPARTMENT], T1.[ACTIVITY], T1.[STOCK], T1.[MAKE_FAMILY], T1.[MAKE], T1.[VEHICLE_TYPE], T1.[MODEL_LINE], T1.[FACTORY_MODEL], T1.[WORKSHOP_MODEL], T1.[PRODUCT_GROUP], T1.[REPAIR_GROUP], T1.[KIT_GROUP], T1.[VAT_CODE_ORDER], T1.[TIME_CODE], T1.[INT_EXT_CODE], T1.[DESTINATION], T1.[PRICE_CODE], T1.[REDUCTION_CODE], T1.[VAT_RATE_CODE], T1.[MISC_NO], T1.[BOOKKEEPING_CODE], T1.[COST_REVENUE_CODE], T1.[REASON_CODE], T1.[PART_GROUP], T1.[OWN_DIMENSION_1], T1.[OWN_DIMENSION_2], T1.[OWN_DIMENSION_3], T1.[OWN_DIMENSION_4], T1.[OWN_DIMENSION_5], T1.[INT_VOUCHER_NO], T1.[BALANCING_MARK], T1.[ACCT_SCHEDULE_ID], T1.[REGISTER_NUMBER], T1.[PURCH_ORIGIN_CODE], T1.[USED_VEH_DEST_CODE], T1.[USE_OF_VEHICLE], T1.[ACCT_NO_NEXT_CHART], T1.[DEPARTMENT_NEXT_CHART], T1.[CONV_FLAG], T1.[timestamp], T1.[CL_DET_CODE], T1.[CL_TROUBLE_CODE], T1.[CL_TYPE], T1.[PURCH_SALESMAN], T1.[SALE_SALESMAN], '2' as [Client_DB] FROM [deop02].[dbo].[ACCT_DOC_KEY] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND T1.[BOOKKEEP_DATE] >= '2020-01-01T00:00:00' ORDER BY T1.[timestamp] "
+  call bcp_in.bat "ACCT_DOC_KEY_2" "[temp].[ACCT_DOC_KEY]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA2].[import].[ACCT_DOC_KEY] T1 INNER JOIN [OPTIMAX].[temp].[ACCT_DOC_KEY] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[UNIQUE_IDENT] = T2.[UNIQUE_IDENT]"
+  call sql_query.bat "INSERT INTO [OPTIMA2].[import].[ACCT_DOC_KEY] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[ACCT_DOC_KEY] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\ACCT_DOC_KEY_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\ACCT_DOC_KEY_2.csv"

+ 34 - 0
System/OPTIMA/SQL/batch/ACCT_DOC_KEY_01.bat

@@ -0,0 +1,34 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==ACCT_DOC_KEY_01==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\ACCT_DOC_KEY_01*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA2].[import].[ACCT_DOC_KEY_01]"
+rem Nur in Quelle: SKR51_KEY;SKR51_COST_BEARER
+  call bcp_queryout.bat "ACCT_DOC_KEY_01_1" "SELECT T1.[UNIQUE_IDENT], T1.[ACCT_NO], T1.[BOOKKEEP_DATE], T1.[BOOKKEEP_PERIOD], T1.[DOCUMENT_NO], T1.[BATCH_NO], T1.[JOURNAL_NO], T1.[BOOK_NO], T1.[ORIGIN], T1.[STATUS], T1.[DEBIT_AMOUNT], T1.[CREDIT_AMOUNT], T1.[DEBIT_QUANTITY], T1.[CREDIT_QUANTITY], T1.[AA_TRTYPE], T1.[SITE], T1.[STRATEGIC_AREA], T1.[DEPARTMENT], T1.[ACTIVITY], T1.[STOCK], T1.[MAKE_FAMILY], T1.[MAKE], T1.[VEHICLE_TYPE], T1.[MODEL_LINE], T1.[FACTORY_MODEL], T1.[WORKSHOP_MODEL], T1.[PRODUCT_GROUP], T1.[REPAIR_GROUP], T1.[KIT_GROUP], T1.[VAT_CODE_ORDER], T1.[TIME_CODE], T1.[INT_EXT_CODE], T1.[DESTINATION], T1.[PRICE_CODE], T1.[REDUCTION_CODE], T1.[VAT_RATE_CODE], T1.[MISC_NO], T1.[BOOKKEEPING_CODE], T1.[COST_REVENUE_CODE], T1.[REASON_CODE], T1.[PART_GROUP], T1.[OWN_DIMENSION_1], T1.[OWN_DIMENSION_2], T1.[OWN_DIMENSION_3], T1.[OWN_DIMENSION_4], T1.[OWN_DIMENSION_5], T1.[INT_VOUCHER_NO], T1.[BALANCING_MARK], T1.[ACCT_SCHEDULE_ID], T1.[REGISTER_NUMBER], T1.[USED_VEH_DEST_CODE], T1.[PURCH_ORIGIN_CODE], T1.[USE_OF_VEHICLE], T1.[ACCT_NO_NEXT_CHART], T1.[DEPARTMENT_NEXT_CHART], T1.[CONV_FLAG], T1.[timestamp], T1.[CL_DET_CODE], T1.[CL_TROUBLE_CODE], T1.[CL_TYPE], T1.[PURCH_SALESMAN], T1.[SALE_SALESMAN], '1' as [Client_DB] FROM [deop01].[dbo].[ACCT_DOC_KEY_01] T1  WHERE T1.[BOOKKEEP_DATE] >= '2020-01-01T00:00:00' ORDER BY T1.[timestamp] "
+  call bcp_in.bat "ACCT_DOC_KEY_01_1" "[import].[ACCT_DOC_KEY_01]" "OPTIMA2"
+rem Nur in Quelle: SKR51_KEY;SKR51_COST_BEARER
+  call bcp_queryout.bat "ACCT_DOC_KEY_01_2" "SELECT T1.[UNIQUE_IDENT], T1.[ACCT_NO], T1.[BOOKKEEP_DATE], T1.[BOOKKEEP_PERIOD], T1.[DOCUMENT_NO], T1.[BATCH_NO], T1.[JOURNAL_NO], T1.[BOOK_NO], T1.[ORIGIN], T1.[STATUS], T1.[DEBIT_AMOUNT], T1.[CREDIT_AMOUNT], T1.[DEBIT_QUANTITY], T1.[CREDIT_QUANTITY], T1.[AA_TRTYPE], T1.[SITE], T1.[STRATEGIC_AREA], T1.[DEPARTMENT], T1.[ACTIVITY], T1.[STOCK], T1.[MAKE_FAMILY], T1.[MAKE], T1.[VEHICLE_TYPE], T1.[MODEL_LINE], T1.[FACTORY_MODEL], T1.[WORKSHOP_MODEL], T1.[PRODUCT_GROUP], T1.[REPAIR_GROUP], T1.[KIT_GROUP], T1.[VAT_CODE_ORDER], T1.[TIME_CODE], T1.[INT_EXT_CODE], T1.[DESTINATION], T1.[PRICE_CODE], T1.[REDUCTION_CODE], T1.[VAT_RATE_CODE], T1.[MISC_NO], T1.[BOOKKEEPING_CODE], T1.[COST_REVENUE_CODE], T1.[REASON_CODE], T1.[PART_GROUP], T1.[OWN_DIMENSION_1], T1.[OWN_DIMENSION_2], T1.[OWN_DIMENSION_3], T1.[OWN_DIMENSION_4], T1.[OWN_DIMENSION_5], T1.[INT_VOUCHER_NO], T1.[BALANCING_MARK], T1.[ACCT_SCHEDULE_ID], T1.[REGISTER_NUMBER], T1.[USED_VEH_DEST_CODE], T1.[PURCH_ORIGIN_CODE], T1.[USE_OF_VEHICLE], T1.[ACCT_NO_NEXT_CHART], T1.[DEPARTMENT_NEXT_CHART], T1.[CONV_FLAG], T1.[timestamp], T1.[CL_DET_CODE], T1.[CL_TROUBLE_CODE], T1.[CL_TYPE], T1.[PURCH_SALESMAN], T1.[SALE_SALESMAN], '2' as [Client_DB] FROM [deop02].[dbo].[ACCT_DOC_KEY_01] T1  WHERE T1.[BOOKKEEP_DATE] >= '2020-01-01T00:00:00' ORDER BY T1.[timestamp] "
+  call bcp_in.bat "ACCT_DOC_KEY_01_2" "[import].[ACCT_DOC_KEY_01]" "OPTIMA2"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[ACCT_DOC_KEY_01]"
+
+  call sql_timestamp.bat "ACCT_DOC_KEY_01_1" "[OPTIMA2].[import].[ACCT_DOC_KEY_01]" "1"
+  call bcp_queryout.bat "ACCT_DOC_KEY_01_1" "SELECT T1.[UNIQUE_IDENT], T1.[ACCT_NO], T1.[BOOKKEEP_DATE], T1.[BOOKKEEP_PERIOD], T1.[DOCUMENT_NO], T1.[BATCH_NO], T1.[JOURNAL_NO], T1.[BOOK_NO], T1.[ORIGIN], T1.[STATUS], T1.[DEBIT_AMOUNT], T1.[CREDIT_AMOUNT], T1.[DEBIT_QUANTITY], T1.[CREDIT_QUANTITY], T1.[AA_TRTYPE], T1.[SITE], T1.[STRATEGIC_AREA], T1.[DEPARTMENT], T1.[ACTIVITY], T1.[STOCK], T1.[MAKE_FAMILY], T1.[MAKE], T1.[VEHICLE_TYPE], T1.[MODEL_LINE], T1.[FACTORY_MODEL], T1.[WORKSHOP_MODEL], T1.[PRODUCT_GROUP], T1.[REPAIR_GROUP], T1.[KIT_GROUP], T1.[VAT_CODE_ORDER], T1.[TIME_CODE], T1.[INT_EXT_CODE], T1.[DESTINATION], T1.[PRICE_CODE], T1.[REDUCTION_CODE], T1.[VAT_RATE_CODE], T1.[MISC_NO], T1.[BOOKKEEPING_CODE], T1.[COST_REVENUE_CODE], T1.[REASON_CODE], T1.[PART_GROUP], T1.[OWN_DIMENSION_1], T1.[OWN_DIMENSION_2], T1.[OWN_DIMENSION_3], T1.[OWN_DIMENSION_4], T1.[OWN_DIMENSION_5], T1.[INT_VOUCHER_NO], T1.[BALANCING_MARK], T1.[ACCT_SCHEDULE_ID], T1.[REGISTER_NUMBER], T1.[USED_VEH_DEST_CODE], T1.[PURCH_ORIGIN_CODE], T1.[USE_OF_VEHICLE], T1.[ACCT_NO_NEXT_CHART], T1.[DEPARTMENT_NEXT_CHART], T1.[CONV_FLAG], T1.[timestamp], T1.[CL_DET_CODE], T1.[CL_TROUBLE_CODE], T1.[CL_TYPE], T1.[PURCH_SALESMAN], T1.[SALE_SALESMAN], '1' as [Client_DB] FROM [deop01].[dbo].[ACCT_DOC_KEY_01] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND T1.[BOOKKEEP_DATE] >= '2020-01-01T00:00:00' ORDER BY T1.[timestamp] "
+  call bcp_in.bat "ACCT_DOC_KEY_01_1" "[temp].[ACCT_DOC_KEY_01]" "OPTIMAX"
+
+  call sql_timestamp.bat "ACCT_DOC_KEY_01_2" "[OPTIMA2].[import].[ACCT_DOC_KEY_01]" "2"
+  call bcp_queryout.bat "ACCT_DOC_KEY_01_2" "SELECT T1.[UNIQUE_IDENT], T1.[ACCT_NO], T1.[BOOKKEEP_DATE], T1.[BOOKKEEP_PERIOD], T1.[DOCUMENT_NO], T1.[BATCH_NO], T1.[JOURNAL_NO], T1.[BOOK_NO], T1.[ORIGIN], T1.[STATUS], T1.[DEBIT_AMOUNT], T1.[CREDIT_AMOUNT], T1.[DEBIT_QUANTITY], T1.[CREDIT_QUANTITY], T1.[AA_TRTYPE], T1.[SITE], T1.[STRATEGIC_AREA], T1.[DEPARTMENT], T1.[ACTIVITY], T1.[STOCK], T1.[MAKE_FAMILY], T1.[MAKE], T1.[VEHICLE_TYPE], T1.[MODEL_LINE], T1.[FACTORY_MODEL], T1.[WORKSHOP_MODEL], T1.[PRODUCT_GROUP], T1.[REPAIR_GROUP], T1.[KIT_GROUP], T1.[VAT_CODE_ORDER], T1.[TIME_CODE], T1.[INT_EXT_CODE], T1.[DESTINATION], T1.[PRICE_CODE], T1.[REDUCTION_CODE], T1.[VAT_RATE_CODE], T1.[MISC_NO], T1.[BOOKKEEPING_CODE], T1.[COST_REVENUE_CODE], T1.[REASON_CODE], T1.[PART_GROUP], T1.[OWN_DIMENSION_1], T1.[OWN_DIMENSION_2], T1.[OWN_DIMENSION_3], T1.[OWN_DIMENSION_4], T1.[OWN_DIMENSION_5], T1.[INT_VOUCHER_NO], T1.[BALANCING_MARK], T1.[ACCT_SCHEDULE_ID], T1.[REGISTER_NUMBER], T1.[USED_VEH_DEST_CODE], T1.[PURCH_ORIGIN_CODE], T1.[USE_OF_VEHICLE], T1.[ACCT_NO_NEXT_CHART], T1.[DEPARTMENT_NEXT_CHART], T1.[CONV_FLAG], T1.[timestamp], T1.[CL_DET_CODE], T1.[CL_TROUBLE_CODE], T1.[CL_TYPE], T1.[PURCH_SALESMAN], T1.[SALE_SALESMAN], '2' as [Client_DB] FROM [deop02].[dbo].[ACCT_DOC_KEY_01] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND T1.[BOOKKEEP_DATE] >= '2020-01-01T00:00:00' ORDER BY T1.[timestamp] "
+  call bcp_in.bat "ACCT_DOC_KEY_01_2" "[temp].[ACCT_DOC_KEY_01]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA2].[import].[ACCT_DOC_KEY_01] T1 INNER JOIN [OPTIMAX].[temp].[ACCT_DOC_KEY_01] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[UNIQUE_IDENT] = T2.[UNIQUE_IDENT]"
+  call sql_query.bat "INSERT INTO [OPTIMA2].[import].[ACCT_DOC_KEY_01] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[ACCT_DOC_KEY_01] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\ACCT_DOC_KEY_01_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\ACCT_DOC_KEY_01_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/ACCT_DOC_SALESCLAS.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==ACCT_DOC_SALESCLAS==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\ACCT_DOC_SALESCLAS*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA2].[import].[ACCT_DOC_SALESCLAS]"
+  call bcp_queryout.bat "ACCT_DOC_SALESCLAS_1" "SELECT T1.[REFERENCE_IDENT], T1.[INVOICE_NUMBER], T1.[ORDER_NUMBER], T1.[CLASS_LINE_TYPE], T1.[ORDER_LINE_NUMBER], T1.[SALES_SPEC_TYPE], T1.[UNDER_LINE_NUMBER], T1.[ORDER_LINE_TYPE], T1.[CUSTOMER_NUMBER], T1.[PLACE_CODE], T1.[INTERNAL_CODE], T1.[N_PRODUCT_GROUP], T1.[N_STOCK_CODE], T1.[N_DEPARTMENT], T1.[SPEC_CODE], T1.[VAT_PERC_ORDER], T1.[TRANSFERREL_CODE], T1.[M_REQUISITION_NO], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[ACCT_DOC_SALESCLAS] T1 INNER JOIN [deop01].[dbo].[ACCT_DOC_KEY] T2 ON T2.[UNIQUE_IDENT] = T1.[REFERENCE_IDENT] WHERE T2.[BOOKKEEP_DATE] >= '2020-01-01T00:00:00' ORDER BY T1.[timestamp] "
+  call bcp_in.bat "ACCT_DOC_SALESCLAS_1" "[import].[ACCT_DOC_SALESCLAS]" "OPTIMA2"
+  call bcp_queryout.bat "ACCT_DOC_SALESCLAS_2" "SELECT T1.[REFERENCE_IDENT], T1.[INVOICE_NUMBER], T1.[ORDER_NUMBER], T1.[CLASS_LINE_TYPE], T1.[ORDER_LINE_NUMBER], T1.[SALES_SPEC_TYPE], T1.[UNDER_LINE_NUMBER], T1.[ORDER_LINE_TYPE], T1.[CUSTOMER_NUMBER], T1.[PLACE_CODE], T1.[INTERNAL_CODE], T1.[N_PRODUCT_GROUP], T1.[N_STOCK_CODE], T1.[N_DEPARTMENT], T1.[SPEC_CODE], T1.[VAT_PERC_ORDER], T1.[TRANSFERREL_CODE], T1.[M_REQUISITION_NO], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[ACCT_DOC_SALESCLAS] T1 INNER JOIN [deop02].[dbo].[ACCT_DOC_KEY] T2 ON T2.[UNIQUE_IDENT] = T1.[REFERENCE_IDENT] WHERE T2.[BOOKKEEP_DATE] >= '2020-01-01T00:00:00' ORDER BY T1.[timestamp] "
+  call bcp_in.bat "ACCT_DOC_SALESCLAS_2" "[import].[ACCT_DOC_SALESCLAS]" "OPTIMA2"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[ACCT_DOC_SALESCLAS]"
+
+  call sql_timestamp.bat "ACCT_DOC_SALESCLAS_1" "[OPTIMA2].[import].[ACCT_DOC_SALESCLAS]" "1"
+  call bcp_queryout.bat "ACCT_DOC_SALESCLAS_1" "SELECT T1.[REFERENCE_IDENT], T1.[INVOICE_NUMBER], T1.[ORDER_NUMBER], T1.[CLASS_LINE_TYPE], T1.[ORDER_LINE_NUMBER], T1.[SALES_SPEC_TYPE], T1.[UNDER_LINE_NUMBER], T1.[ORDER_LINE_TYPE], T1.[CUSTOMER_NUMBER], T1.[PLACE_CODE], T1.[INTERNAL_CODE], T1.[N_PRODUCT_GROUP], T1.[N_STOCK_CODE], T1.[N_DEPARTMENT], T1.[SPEC_CODE], T1.[VAT_PERC_ORDER], T1.[TRANSFERREL_CODE], T1.[M_REQUISITION_NO], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[ACCT_DOC_SALESCLAS] T1 INNER JOIN [deop01].[dbo].[ACCT_DOC_KEY] T2 ON T2.[UNIQUE_IDENT] = T1.[REFERENCE_IDENT] WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND T2.[BOOKKEEP_DATE] >= '2020-01-01T00:00:00' ORDER BY T1.[timestamp] "
+  call bcp_in.bat "ACCT_DOC_SALESCLAS_1" "[temp].[ACCT_DOC_SALESCLAS]" "OPTIMAX"
+
+  call sql_timestamp.bat "ACCT_DOC_SALESCLAS_2" "[OPTIMA2].[import].[ACCT_DOC_SALESCLAS]" "2"
+  call bcp_queryout.bat "ACCT_DOC_SALESCLAS_2" "SELECT T1.[REFERENCE_IDENT], T1.[INVOICE_NUMBER], T1.[ORDER_NUMBER], T1.[CLASS_LINE_TYPE], T1.[ORDER_LINE_NUMBER], T1.[SALES_SPEC_TYPE], T1.[UNDER_LINE_NUMBER], T1.[ORDER_LINE_TYPE], T1.[CUSTOMER_NUMBER], T1.[PLACE_CODE], T1.[INTERNAL_CODE], T1.[N_PRODUCT_GROUP], T1.[N_STOCK_CODE], T1.[N_DEPARTMENT], T1.[SPEC_CODE], T1.[VAT_PERC_ORDER], T1.[TRANSFERREL_CODE], T1.[M_REQUISITION_NO], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[ACCT_DOC_SALESCLAS] T1 INNER JOIN [deop02].[dbo].[ACCT_DOC_KEY] T2 ON T2.[UNIQUE_IDENT] = T1.[REFERENCE_IDENT] WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND T2.[BOOKKEEP_DATE] >= '2020-01-01T00:00:00' ORDER BY T1.[timestamp] "
+  call bcp_in.bat "ACCT_DOC_SALESCLAS_2" "[temp].[ACCT_DOC_SALESCLAS]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA2].[import].[ACCT_DOC_SALESCLAS] T1 INNER JOIN [OPTIMAX].[temp].[ACCT_DOC_SALESCLAS] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[UNIQUE_IDENT] = T2.[UNIQUE_IDENT]"
+  call sql_query.bat "INSERT INTO [OPTIMA2].[import].[ACCT_DOC_SALESCLAS] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[ACCT_DOC_SALESCLAS] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\ACCT_DOC_SALESCLAS_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\ACCT_DOC_SALESCLAS_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/ACTIVITY.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==ACTIVITY==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\ACTIVITY*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[ACTIVITY]"
+  call bcp_queryout.bat "ACTIVITY_1" "SELECT T1.[UNIQUE_IDENT], T1.[ACTIVITY_CATEGORY], T1.[HANDLER], T1.[FUNCTION_CODE], T1.[PROGRAM], T1.[TRANSACT_DATE_LONG], T1.[ACTIVITY_CODE], T1.[ACTIVITY_DESCRIPTION], T1.[CREATE_ORDER_LINE], T1.[REPNO_PREFIX], T1.[PRESENT], T1.[SICKNESS], T1.[ONLY_USED_BY_LEADERS], T1.[IDLE_ORDER_ACTIVITY], T1.[ACTIVITY_OBSOLETE], T1.[USED_TIME_PAY_ACTIVITY], T1.[CONV_FLAG], T1.[timestamp], T1.[ABSENCE_CODE], T1.[EXTRACTION_MODE], T1.[DEFAULT_OVERTIME_ACTIVITY], T1.[EXCLUDE_FROM_PRINT], T1.[ABSENCE_TYPE], T1.[WAGE_ID], '1' as [Client_DB] FROM [deop01].[dbo].[ACTIVITY] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "ACTIVITY_1" "[import].[ACTIVITY]" "OPTIMA"
+  call bcp_queryout.bat "ACTIVITY_2" "SELECT T1.[UNIQUE_IDENT], T1.[ACTIVITY_CATEGORY], T1.[HANDLER], T1.[FUNCTION_CODE], T1.[PROGRAM], T1.[TRANSACT_DATE_LONG], T1.[ACTIVITY_CODE], T1.[ACTIVITY_DESCRIPTION], T1.[CREATE_ORDER_LINE], T1.[REPNO_PREFIX], T1.[PRESENT], T1.[SICKNESS], T1.[ONLY_USED_BY_LEADERS], T1.[IDLE_ORDER_ACTIVITY], T1.[ACTIVITY_OBSOLETE], T1.[USED_TIME_PAY_ACTIVITY], T1.[CONV_FLAG], T1.[timestamp], T1.[ABSENCE_CODE], T1.[EXTRACTION_MODE], T1.[DEFAULT_OVERTIME_ACTIVITY], T1.[EXCLUDE_FROM_PRINT], T1.[ABSENCE_TYPE], T1.[WAGE_ID], '2' as [Client_DB] FROM [deop02].[dbo].[ACTIVITY] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "ACTIVITY_2" "[import].[ACTIVITY]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[ACTIVITY]"
+
+  call sql_timestamp.bat "ACTIVITY_1" "[OPTIMA].[import].[ACTIVITY]" "1"
+  call bcp_queryout.bat "ACTIVITY_1" "SELECT T1.[UNIQUE_IDENT], T1.[ACTIVITY_CATEGORY], T1.[HANDLER], T1.[FUNCTION_CODE], T1.[PROGRAM], T1.[TRANSACT_DATE_LONG], T1.[ACTIVITY_CODE], T1.[ACTIVITY_DESCRIPTION], T1.[CREATE_ORDER_LINE], T1.[REPNO_PREFIX], T1.[PRESENT], T1.[SICKNESS], T1.[ONLY_USED_BY_LEADERS], T1.[IDLE_ORDER_ACTIVITY], T1.[ACTIVITY_OBSOLETE], T1.[USED_TIME_PAY_ACTIVITY], T1.[CONV_FLAG], T1.[timestamp], T1.[ABSENCE_CODE], T1.[EXTRACTION_MODE], T1.[DEFAULT_OVERTIME_ACTIVITY], T1.[EXCLUDE_FROM_PRINT], T1.[ABSENCE_TYPE], T1.[WAGE_ID], '1' as [Client_DB] FROM [deop01].[dbo].[ACTIVITY] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "ACTIVITY_1" "[temp].[ACTIVITY]" "OPTIMAX"
+
+  call sql_timestamp.bat "ACTIVITY_2" "[OPTIMA].[import].[ACTIVITY]" "2"
+  call bcp_queryout.bat "ACTIVITY_2" "SELECT T1.[UNIQUE_IDENT], T1.[ACTIVITY_CATEGORY], T1.[HANDLER], T1.[FUNCTION_CODE], T1.[PROGRAM], T1.[TRANSACT_DATE_LONG], T1.[ACTIVITY_CODE], T1.[ACTIVITY_DESCRIPTION], T1.[CREATE_ORDER_LINE], T1.[REPNO_PREFIX], T1.[PRESENT], T1.[SICKNESS], T1.[ONLY_USED_BY_LEADERS], T1.[IDLE_ORDER_ACTIVITY], T1.[ACTIVITY_OBSOLETE], T1.[USED_TIME_PAY_ACTIVITY], T1.[CONV_FLAG], T1.[timestamp], T1.[ABSENCE_CODE], T1.[EXTRACTION_MODE], T1.[DEFAULT_OVERTIME_ACTIVITY], T1.[EXCLUDE_FROM_PRINT], T1.[ABSENCE_TYPE], T1.[WAGE_ID], '2' as [Client_DB] FROM [deop02].[dbo].[ACTIVITY] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "ACTIVITY_2" "[temp].[ACTIVITY]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[ACTIVITY] T1 INNER JOIN [OPTIMAX].[temp].[ACTIVITY] T2 ON T1.[ACTIVITY_CODE] = T2.[ACTIVITY_CODE] AND T1.[CLIENT_DB] = T2.[CLIENT_DB]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[ACTIVITY] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[ACTIVITY] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\ACTIVITY_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\ACTIVITY_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/APPORTIONED_INV_TIME.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==APPORTIONED_INV_TIME==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\APPORTIONED_INV_TIME*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[APPORTIONED_INV_TIME]"
+  call bcp_queryout.bat "APPORTIONED_INV_TIME_1" "SELECT T1.[UNIQUE_IDENT], T1.[PROFILE_CODE], T1.[ORDER_LINE_ID], T1.[HANDLER], T1.[FUNCTION_CODE], T1.[PROGRAM], T1.[TRANSACT_DATE_LONG], T1.[ORDER_NUMBER], T1.[EDITED_INV_TIME_INT], T1.[EDITED_INV_TIME], T1.[MANUAL_EDITED], T1.[CONV_FLAG], T1.[timestamp], '1' as [Client_DB] FROM [deop01].[dbo].[APPORTIONED_INV_TIME] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "APPORTIONED_INV_TIME_1" "[import].[APPORTIONED_INV_TIME]" "OPTIMA"
+  call bcp_queryout.bat "APPORTIONED_INV_TIME_2" "SELECT T1.[UNIQUE_IDENT], T1.[PROFILE_CODE], T1.[ORDER_LINE_ID], T1.[HANDLER], T1.[FUNCTION_CODE], T1.[PROGRAM], T1.[TRANSACT_DATE_LONG], T1.[ORDER_NUMBER], T1.[EDITED_INV_TIME_INT], T1.[EDITED_INV_TIME], T1.[MANUAL_EDITED], T1.[CONV_FLAG], T1.[timestamp], '2' as [Client_DB] FROM [deop02].[dbo].[APPORTIONED_INV_TIME] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "APPORTIONED_INV_TIME_2" "[import].[APPORTIONED_INV_TIME]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[APPORTIONED_INV_TIME]"
+
+  call sql_timestamp.bat "APPORTIONED_INV_TIME_1" "[OPTIMA].[import].[APPORTIONED_INV_TIME]" "1"
+  call bcp_queryout.bat "APPORTIONED_INV_TIME_1" "SELECT T1.[UNIQUE_IDENT], T1.[PROFILE_CODE], T1.[ORDER_LINE_ID], T1.[HANDLER], T1.[FUNCTION_CODE], T1.[PROGRAM], T1.[TRANSACT_DATE_LONG], T1.[ORDER_NUMBER], T1.[EDITED_INV_TIME_INT], T1.[EDITED_INV_TIME], T1.[MANUAL_EDITED], T1.[CONV_FLAG], T1.[timestamp], '1' as [Client_DB] FROM [deop01].[dbo].[APPORTIONED_INV_TIME] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "APPORTIONED_INV_TIME_1" "[temp].[APPORTIONED_INV_TIME]" "OPTIMAX"
+
+  call sql_timestamp.bat "APPORTIONED_INV_TIME_2" "[OPTIMA].[import].[APPORTIONED_INV_TIME]" "2"
+  call bcp_queryout.bat "APPORTIONED_INV_TIME_2" "SELECT T1.[UNIQUE_IDENT], T1.[PROFILE_CODE], T1.[ORDER_LINE_ID], T1.[HANDLER], T1.[FUNCTION_CODE], T1.[PROGRAM], T1.[TRANSACT_DATE_LONG], T1.[ORDER_NUMBER], T1.[EDITED_INV_TIME_INT], T1.[EDITED_INV_TIME], T1.[MANUAL_EDITED], T1.[CONV_FLAG], T1.[timestamp], '2' as [Client_DB] FROM [deop02].[dbo].[APPORTIONED_INV_TIME] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "APPORTIONED_INV_TIME_2" "[temp].[APPORTIONED_INV_TIME]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[APPORTIONED_INV_TIME] T1 INNER JOIN [OPTIMAX].[temp].[APPORTIONED_INV_TIME] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[UNIQUE_IDENT] = T2.[UNIQUE_IDENT]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[APPORTIONED_INV_TIME] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[APPORTIONED_INV_TIME] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\APPORTIONED_INV_TIME_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\APPORTIONED_INV_TIME_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/APPORTIONED_USED_TIME.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==APPORTIONED_USED_TIME==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\APPORTIONED_USED_TIME*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[APPORTIONED_USED_TIME]"
+  call bcp_queryout.bat "APPORTIONED_USED_TIME_1" "SELECT T1.[UNIQUE_IDENT], T1.[PROFILE_CODE], T1.[ORDER_LINE_ID], T1.[HANDLER], T1.[FUNCTION_CODE], T1.[PROGRAM], T1.[TRANSACT_DATE_LONG], T1.[ORDER_NUMBER], T1.[COST_PRICE], T1.[EDITED_USED_TIME_INT], T1.[EDITED_USED_TIME], T1.[MANUAL_EDITED], T1.[CONV_FLAG], T1.[timestamp], '1' as [Client_DB] FROM [deop01].[dbo].[APPORTIONED_USED_TIME] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "APPORTIONED_USED_TIME_1" "[import].[APPORTIONED_USED_TIME]" "OPTIMA"
+  call bcp_queryout.bat "APPORTIONED_USED_TIME_2" "SELECT T1.[UNIQUE_IDENT], T1.[PROFILE_CODE], T1.[ORDER_LINE_ID], T1.[HANDLER], T1.[FUNCTION_CODE], T1.[PROGRAM], T1.[TRANSACT_DATE_LONG], T1.[ORDER_NUMBER], T1.[COST_PRICE], T1.[EDITED_USED_TIME_INT], T1.[EDITED_USED_TIME], T1.[MANUAL_EDITED], T1.[CONV_FLAG], T1.[timestamp], '2' as [Client_DB] FROM [deop02].[dbo].[APPORTIONED_USED_TIME] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "APPORTIONED_USED_TIME_2" "[import].[APPORTIONED_USED_TIME]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[APPORTIONED_USED_TIME]"
+
+  call sql_timestamp.bat "APPORTIONED_USED_TIME_1" "[OPTIMA].[import].[APPORTIONED_USED_TIME]" "1"
+  call bcp_queryout.bat "APPORTIONED_USED_TIME_1" "SELECT T1.[UNIQUE_IDENT], T1.[PROFILE_CODE], T1.[ORDER_LINE_ID], T1.[HANDLER], T1.[FUNCTION_CODE], T1.[PROGRAM], T1.[TRANSACT_DATE_LONG], T1.[ORDER_NUMBER], T1.[COST_PRICE], T1.[EDITED_USED_TIME_INT], T1.[EDITED_USED_TIME], T1.[MANUAL_EDITED], T1.[CONV_FLAG], T1.[timestamp], '1' as [Client_DB] FROM [deop01].[dbo].[APPORTIONED_USED_TIME] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "APPORTIONED_USED_TIME_1" "[temp].[APPORTIONED_USED_TIME]" "OPTIMAX"
+
+  call sql_timestamp.bat "APPORTIONED_USED_TIME_2" "[OPTIMA].[import].[APPORTIONED_USED_TIME]" "2"
+  call bcp_queryout.bat "APPORTIONED_USED_TIME_2" "SELECT T1.[UNIQUE_IDENT], T1.[PROFILE_CODE], T1.[ORDER_LINE_ID], T1.[HANDLER], T1.[FUNCTION_CODE], T1.[PROGRAM], T1.[TRANSACT_DATE_LONG], T1.[ORDER_NUMBER], T1.[COST_PRICE], T1.[EDITED_USED_TIME_INT], T1.[EDITED_USED_TIME], T1.[MANUAL_EDITED], T1.[CONV_FLAG], T1.[timestamp], '2' as [Client_DB] FROM [deop02].[dbo].[APPORTIONED_USED_TIME] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "APPORTIONED_USED_TIME_2" "[temp].[APPORTIONED_USED_TIME]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[APPORTIONED_USED_TIME] T1 INNER JOIN [OPTIMAX].[temp].[APPORTIONED_USED_TIME] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[UNIQUE_IDENT] = T2.[UNIQUE_IDENT]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[APPORTIONED_USED_TIME] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[APPORTIONED_USED_TIME] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\APPORTIONED_USED_TIME_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\APPORTIONED_USED_TIME_2.csv"

+ 34 - 0
System/OPTIMA/SQL/batch/CALENDAR_EVENT.bat

@@ -0,0 +1,34 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==CALENDAR_EVENT==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\CALENDAR_EVENT*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[CALENDAR_EVENT]"
+rem Nur in Quelle: CREATION_DATETIME
+  call bcp_queryout.bat "CALENDAR_EVENT_1" "SELECT T1.[CALENDAR_EVENT_NAME], T1.[EVENT_START], T1.[EVENT_END], T1.[OCCURRENCE], T1.[ALL_DAY_EVENT], T1.[RECURRING_PATTERN_ID], T1.[ACTIVITY_ID], T1.[CALENDAR_INFO_ID], T1.[CALENDAR_TYPE_ID], T1.[RECURRING_TYPE_ID], T1.[HOLIDAY_ID], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_ID], '1' as [Client_DB] FROM [deop01].[dbo].[CALENDAR_EVENT] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "CALENDAR_EVENT_1" "[import].[CALENDAR_EVENT]" "OPTIMA"
+rem Nur in Quelle: CREATION_DATETIME
+  call bcp_queryout.bat "CALENDAR_EVENT_2" "SELECT T1.[CALENDAR_EVENT_NAME], T1.[EVENT_START], T1.[EVENT_END], T1.[OCCURRENCE], T1.[ALL_DAY_EVENT], T1.[RECURRING_PATTERN_ID], T1.[ACTIVITY_ID], T1.[CALENDAR_INFO_ID], T1.[CALENDAR_TYPE_ID], T1.[RECURRING_TYPE_ID], T1.[HOLIDAY_ID], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_ID], '2' as [Client_DB] FROM [deop02].[dbo].[CALENDAR_EVENT] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "CALENDAR_EVENT_2" "[import].[CALENDAR_EVENT]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[CALENDAR_EVENT]"
+
+  call sql_timestamp.bat "CALENDAR_EVENT_1" "[OPTIMA].[import].[CALENDAR_EVENT]" "1"
+  call bcp_queryout.bat "CALENDAR_EVENT_1" "SELECT T1.[CALENDAR_EVENT_NAME], T1.[EVENT_START], T1.[EVENT_END], T1.[OCCURRENCE], T1.[ALL_DAY_EVENT], T1.[RECURRING_PATTERN_ID], T1.[ACTIVITY_ID], T1.[CALENDAR_INFO_ID], T1.[CALENDAR_TYPE_ID], T1.[RECURRING_TYPE_ID], T1.[HOLIDAY_ID], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_ID], '1' as [Client_DB] FROM [deop01].[dbo].[CALENDAR_EVENT] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "CALENDAR_EVENT_1" "[temp].[CALENDAR_EVENT]" "OPTIMAX"
+
+  call sql_timestamp.bat "CALENDAR_EVENT_2" "[OPTIMA].[import].[CALENDAR_EVENT]" "2"
+  call bcp_queryout.bat "CALENDAR_EVENT_2" "SELECT T1.[CALENDAR_EVENT_NAME], T1.[EVENT_START], T1.[EVENT_END], T1.[OCCURRENCE], T1.[ALL_DAY_EVENT], T1.[RECURRING_PATTERN_ID], T1.[ACTIVITY_ID], T1.[CALENDAR_INFO_ID], T1.[CALENDAR_TYPE_ID], T1.[RECURRING_TYPE_ID], T1.[HOLIDAY_ID], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_ID], '2' as [Client_DB] FROM [deop02].[dbo].[CALENDAR_EVENT] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "CALENDAR_EVENT_2" "[temp].[CALENDAR_EVENT]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[CALENDAR_EVENT] T1 INNER JOIN [OPTIMAX].[temp].[CALENDAR_EVENT] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[UNIQUE_ID] = T2.[UNIQUE_ID]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[CALENDAR_EVENT] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[CALENDAR_EVENT] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\CALENDAR_EVENT_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\CALENDAR_EVENT_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/CALENDAR_INFO.bat

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

+ 32 - 0
System/OPTIMA/SQL/batch/CALENDAR_PATTERN.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==CALENDAR_PATTERN==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\CALENDAR_PATTERN*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[CALENDAR_PATTERN]"
+  call bcp_queryout.bat "CALENDAR_PATTERN_1" "SELECT T1.[CALENDAR_INFO_ID], T1.[CALENDAR_TYPE_ID], T1.[RECURRING_PATTERN_ID], T1.[RECURRING_PATTERN_PRIORITY], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[timestamp], T1.[CONV_FLAG], T1.[UNIQUE_ID], '1' as [Client_DB] FROM [deop01].[dbo].[CALENDAR_PATTERN] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "CALENDAR_PATTERN_1" "[import].[CALENDAR_PATTERN]" "OPTIMA"
+  call bcp_queryout.bat "CALENDAR_PATTERN_2" "SELECT T1.[CALENDAR_INFO_ID], T1.[CALENDAR_TYPE_ID], T1.[RECURRING_PATTERN_ID], T1.[RECURRING_PATTERN_PRIORITY], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[timestamp], T1.[CONV_FLAG], T1.[UNIQUE_ID], '2' as [Client_DB] FROM [deop02].[dbo].[CALENDAR_PATTERN] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "CALENDAR_PATTERN_2" "[import].[CALENDAR_PATTERN]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[CALENDAR_PATTERN]"
+
+  call sql_timestamp.bat "CALENDAR_PATTERN_1" "[OPTIMA].[import].[CALENDAR_PATTERN]" "1"
+  call bcp_queryout.bat "CALENDAR_PATTERN_1" "SELECT T1.[CALENDAR_INFO_ID], T1.[CALENDAR_TYPE_ID], T1.[RECURRING_PATTERN_ID], T1.[RECURRING_PATTERN_PRIORITY], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[timestamp], T1.[CONV_FLAG], T1.[UNIQUE_ID], '1' as [Client_DB] FROM [deop01].[dbo].[CALENDAR_PATTERN] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "CALENDAR_PATTERN_1" "[temp].[CALENDAR_PATTERN]" "OPTIMAX"
+
+  call sql_timestamp.bat "CALENDAR_PATTERN_2" "[OPTIMA].[import].[CALENDAR_PATTERN]" "2"
+  call bcp_queryout.bat "CALENDAR_PATTERN_2" "SELECT T1.[CALENDAR_INFO_ID], T1.[CALENDAR_TYPE_ID], T1.[RECURRING_PATTERN_ID], T1.[RECURRING_PATTERN_PRIORITY], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[timestamp], T1.[CONV_FLAG], T1.[UNIQUE_ID], '2' as [Client_DB] FROM [deop02].[dbo].[CALENDAR_PATTERN] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "CALENDAR_PATTERN_2" "[temp].[CALENDAR_PATTERN]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[CALENDAR_PATTERN] T1 INNER JOIN [OPTIMAX].[temp].[CALENDAR_PATTERN] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[UNIQUE_ID] = T2.[UNIQUE_ID]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[CALENDAR_PATTERN] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[CALENDAR_PATTERN] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\CALENDAR_PATTERN_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\CALENDAR_PATTERN_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/CAR_STATISTIC.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==CAR_STATISTIC==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\CAR_STATISTIC*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[CAR_STATISTIC]"
+  call bcp_queryout.bat "CAR_STATISTIC_1" "SELECT T1.[DEBIT_ACCOUNT], T1.[INVOICE_DATE], T1.[ORDER_NUMBER], T1.[BASIS_NUMBER], T1.[DEPARTMENT], T1.[STATE_CODE], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[SALESMAN], T1.[REGISTER_NUMBER], T1.[DELIVERY_DATE], T1.[INVOICE_NUMBER], T1.[STATUS], T1.[TAX_CODE], T1.[ORDERS_GROSSVALUE], T1.[DISCOUNT_AMOUNT], T1.[COSTS], T1.[PURCH_TAX], T1.[TAX_SHARE], T1.[REFERENCE], T1.[NOTE], T1.[DELIVERY_WAY_CODE], T1.[DELIVERY_TERM], T1.[CAR_IN_CHANGE_C_U], T1.[ORDER_DATE], T1.[MILEAGE], T1.[STAT_REDUCT_CODES], T1.[STAT_REPAIR_CODES], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[CAR_STATISTIC] T1  WHERE T1.[INVOICE_DATE] >= '2018-01-01T00:00:00' ORDER BY T1.[timestamp] "
+  call bcp_in.bat "CAR_STATISTIC_1" "[import].[CAR_STATISTIC]" "OPTIMA"
+  call bcp_queryout.bat "CAR_STATISTIC_2" "SELECT T1.[DEBIT_ACCOUNT], T1.[INVOICE_DATE], T1.[ORDER_NUMBER], T1.[BASIS_NUMBER], T1.[DEPARTMENT], T1.[STATE_CODE], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[SALESMAN], T1.[REGISTER_NUMBER], T1.[DELIVERY_DATE], T1.[INVOICE_NUMBER], T1.[STATUS], T1.[TAX_CODE], T1.[ORDERS_GROSSVALUE], T1.[DISCOUNT_AMOUNT], T1.[COSTS], T1.[PURCH_TAX], T1.[TAX_SHARE], T1.[REFERENCE], T1.[NOTE], T1.[DELIVERY_WAY_CODE], T1.[DELIVERY_TERM], T1.[CAR_IN_CHANGE_C_U], T1.[ORDER_DATE], T1.[MILEAGE], T1.[STAT_REDUCT_CODES], T1.[STAT_REPAIR_CODES], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[CAR_STATISTIC] T1  WHERE T1.[INVOICE_DATE] >= '2018-01-01T00:00:00' ORDER BY T1.[timestamp] "
+  call bcp_in.bat "CAR_STATISTIC_2" "[import].[CAR_STATISTIC]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[CAR_STATISTIC]"
+
+  call sql_timestamp.bat "CAR_STATISTIC_1" "[OPTIMA].[import].[CAR_STATISTIC]" "1"
+  call bcp_queryout.bat "CAR_STATISTIC_1" "SELECT T1.[DEBIT_ACCOUNT], T1.[INVOICE_DATE], T1.[ORDER_NUMBER], T1.[BASIS_NUMBER], T1.[DEPARTMENT], T1.[STATE_CODE], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[SALESMAN], T1.[REGISTER_NUMBER], T1.[DELIVERY_DATE], T1.[INVOICE_NUMBER], T1.[STATUS], T1.[TAX_CODE], T1.[ORDERS_GROSSVALUE], T1.[DISCOUNT_AMOUNT], T1.[COSTS], T1.[PURCH_TAX], T1.[TAX_SHARE], T1.[REFERENCE], T1.[NOTE], T1.[DELIVERY_WAY_CODE], T1.[DELIVERY_TERM], T1.[CAR_IN_CHANGE_C_U], T1.[ORDER_DATE], T1.[MILEAGE], T1.[STAT_REDUCT_CODES], T1.[STAT_REPAIR_CODES], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[CAR_STATISTIC] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND T1.[INVOICE_DATE] >= '2018-01-01T00:00:00' ORDER BY T1.[timestamp] "
+  call bcp_in.bat "CAR_STATISTIC_1" "[temp].[CAR_STATISTIC]" "OPTIMAX"
+
+  call sql_timestamp.bat "CAR_STATISTIC_2" "[OPTIMA].[import].[CAR_STATISTIC]" "2"
+  call bcp_queryout.bat "CAR_STATISTIC_2" "SELECT T1.[DEBIT_ACCOUNT], T1.[INVOICE_DATE], T1.[ORDER_NUMBER], T1.[BASIS_NUMBER], T1.[DEPARTMENT], T1.[STATE_CODE], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[SALESMAN], T1.[REGISTER_NUMBER], T1.[DELIVERY_DATE], T1.[INVOICE_NUMBER], T1.[STATUS], T1.[TAX_CODE], T1.[ORDERS_GROSSVALUE], T1.[DISCOUNT_AMOUNT], T1.[COSTS], T1.[PURCH_TAX], T1.[TAX_SHARE], T1.[REFERENCE], T1.[NOTE], T1.[DELIVERY_WAY_CODE], T1.[DELIVERY_TERM], T1.[CAR_IN_CHANGE_C_U], T1.[ORDER_DATE], T1.[MILEAGE], T1.[STAT_REDUCT_CODES], T1.[STAT_REPAIR_CODES], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[CAR_STATISTIC] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND T1.[INVOICE_DATE] >= '2018-01-01T00:00:00' ORDER BY T1.[timestamp] "
+  call bcp_in.bat "CAR_STATISTIC_2" "[temp].[CAR_STATISTIC]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[CAR_STATISTIC] T1 INNER JOIN [OPTIMAX].[temp].[CAR_STATISTIC] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[DEBIT_ACCOUNT] = T2.[DEBIT_ACCOUNT] AND T1.[INVOICE_DATE] = T2.[INVOICE_DATE] AND T1.[ORDER_NUMBER] = T2.[ORDER_NUMBER]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[CAR_STATISTIC] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[CAR_STATISTIC] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\CAR_STATISTIC_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\CAR_STATISTIC_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/COMM_TRANS_UNIT.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==COMM_TRANS_UNIT==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\COMM_TRANS_UNIT*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[COMM_TRANS_UNIT]"
+  call bcp_queryout.bat "COMM_TRANS_UNIT_1" "SELECT T1.[PER_DATE], T1.[UNIT_NO], T1.[ROW_NO], T1.[HANDLER], T1.[DATE], T1.[TEXT], T1.[AMOUNT], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[COMM_TRANS_UNIT] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "COMM_TRANS_UNIT_1" "[import].[COMM_TRANS_UNIT]" "OPTIMA"
+  call bcp_queryout.bat "COMM_TRANS_UNIT_2" "SELECT T1.[PER_DATE], T1.[UNIT_NO], T1.[ROW_NO], T1.[HANDLER], T1.[DATE], T1.[TEXT], T1.[AMOUNT], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[COMM_TRANS_UNIT] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "COMM_TRANS_UNIT_2" "[import].[COMM_TRANS_UNIT]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[COMM_TRANS_UNIT]"
+
+  call sql_timestamp.bat "COMM_TRANS_UNIT_1" "[OPTIMA].[import].[COMM_TRANS_UNIT]" "1"
+  call bcp_queryout.bat "COMM_TRANS_UNIT_1" "SELECT T1.[PER_DATE], T1.[UNIT_NO], T1.[ROW_NO], T1.[HANDLER], T1.[DATE], T1.[TEXT], T1.[AMOUNT], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[COMM_TRANS_UNIT] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "COMM_TRANS_UNIT_1" "[temp].[COMM_TRANS_UNIT]" "OPTIMAX"
+
+  call sql_timestamp.bat "COMM_TRANS_UNIT_2" "[OPTIMA].[import].[COMM_TRANS_UNIT]" "2"
+  call bcp_queryout.bat "COMM_TRANS_UNIT_2" "SELECT T1.[PER_DATE], T1.[UNIT_NO], T1.[ROW_NO], T1.[HANDLER], T1.[DATE], T1.[TEXT], T1.[AMOUNT], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[COMM_TRANS_UNIT] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "COMM_TRANS_UNIT_2" "[temp].[COMM_TRANS_UNIT]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[COMM_TRANS_UNIT] T1 INNER JOIN [OPTIMAX].[temp].[COMM_TRANS_UNIT] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[PER_DATE] = T2.[PER_DATE] AND T1.[ROW_NO] = T2.[ROW_NO] AND T1.[UNIT_NO] = T2.[UNIT_NO]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[COMM_TRANS_UNIT] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[COMM_TRANS_UNIT] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\COMM_TRANS_UNIT_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\COMM_TRANS_UNIT_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/COMM_UNIT.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==COMM_UNIT==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\COMM_UNIT*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[COMM_UNIT]"
+  call bcp_queryout.bat "COMM_UNIT_1" "SELECT T1.[UNIT_NO], T1.[PERIOD], T1.[DEPARTMENT], T1.[SALESMAN], T1.[UNIT_TYPE], T1.[MODELLINE], T1.[PER_DATE], T1.[HANDLER], T1.[DATE], T1.[CALCULATE_FINAL], T1.[CALCULATE_DAY], T1.[COMM_AMOUNT_1], T1.[COMM_SW_1], T1.[COMM_AMOUNT_2], T1.[COMM_SW_2], T1.[COMM_AMOUNT_3], T1.[COMM_SW_3], T1.[COMM_AMOUNT_4], T1.[COMM_SW_4], T1.[COMM_AMOUNT_5], T1.[COMM_SW_5], T1.[COMM_AMOUNT_6], T1.[COMM_SW_6], T1.[COMM_AMOUNT_7], T1.[COMM_SW_7], T1.[COMM_AMOUNT_8], T1.[COMM_SW_8], T1.[MILEAGE], T1.[STOCK_DAYS], T1.[POINTS], T1.[ORDER_NO], T1.[SALES_PRICE], T1.[LIST_PRICE], T1.[PURCH_PRICE], T1.[BUD_PURCH_PRICE], T1.[COST], T1.[COST_PRICE_1], T1.[SALES_COST], T1.[COST_PRICE_2], T1.[MARGIN], T1.[BUD_MARGIN], T1.[OVER_PRICE], T1.[INTEREST], T1.[GEMEIN_COST], T1.[MODEL_CODE_X], T1.[DELIVERY_DAY], T1.[SOLD_TO], T1.[TOTAL_COMM], T1.[CUSTOMER_NUMBER], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[CALCULATION_TYPE], T1.[FINAL_COMM_DATE], T1.[FIXED_COMM], T1.[OWN_SALES_PRICE], T1.[USE_FIXED_COMM], T1.[COMM_OWN_SALES_PRICE], '1' as [Client_DB] FROM [deop01].[dbo].[COMM_UNIT] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "COMM_UNIT_1" "[import].[COMM_UNIT]" "OPTIMA"
+  call bcp_queryout.bat "COMM_UNIT_2" "SELECT T1.[UNIT_NO], T1.[PERIOD], T1.[DEPARTMENT], T1.[SALESMAN], T1.[UNIT_TYPE], T1.[MODELLINE], T1.[PER_DATE], T1.[HANDLER], T1.[DATE], T1.[CALCULATE_FINAL], T1.[CALCULATE_DAY], T1.[COMM_AMOUNT_1], T1.[COMM_SW_1], T1.[COMM_AMOUNT_2], T1.[COMM_SW_2], T1.[COMM_AMOUNT_3], T1.[COMM_SW_3], T1.[COMM_AMOUNT_4], T1.[COMM_SW_4], T1.[COMM_AMOUNT_5], T1.[COMM_SW_5], T1.[COMM_AMOUNT_6], T1.[COMM_SW_6], T1.[COMM_AMOUNT_7], T1.[COMM_SW_7], T1.[COMM_AMOUNT_8], T1.[COMM_SW_8], T1.[MILEAGE], T1.[STOCK_DAYS], T1.[POINTS], T1.[ORDER_NO], T1.[SALES_PRICE], T1.[LIST_PRICE], T1.[PURCH_PRICE], T1.[BUD_PURCH_PRICE], T1.[COST], T1.[COST_PRICE_1], T1.[SALES_COST], T1.[COST_PRICE_2], T1.[MARGIN], T1.[BUD_MARGIN], T1.[OVER_PRICE], T1.[INTEREST], T1.[GEMEIN_COST], T1.[MODEL_CODE_X], T1.[DELIVERY_DAY], T1.[SOLD_TO], T1.[TOTAL_COMM], T1.[CUSTOMER_NUMBER], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[CALCULATION_TYPE], T1.[FINAL_COMM_DATE], T1.[FIXED_COMM], T1.[OWN_SALES_PRICE], T1.[USE_FIXED_COMM], T1.[COMM_OWN_SALES_PRICE], '2' as [Client_DB] FROM [deop02].[dbo].[COMM_UNIT] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "COMM_UNIT_2" "[import].[COMM_UNIT]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[COMM_UNIT]"
+
+  call sql_timestamp.bat "COMM_UNIT_1" "[OPTIMA].[import].[COMM_UNIT]" "1"
+  call bcp_queryout.bat "COMM_UNIT_1" "SELECT T1.[UNIT_NO], T1.[PERIOD], T1.[DEPARTMENT], T1.[SALESMAN], T1.[UNIT_TYPE], T1.[MODELLINE], T1.[PER_DATE], T1.[HANDLER], T1.[DATE], T1.[CALCULATE_FINAL], T1.[CALCULATE_DAY], T1.[COMM_AMOUNT_1], T1.[COMM_SW_1], T1.[COMM_AMOUNT_2], T1.[COMM_SW_2], T1.[COMM_AMOUNT_3], T1.[COMM_SW_3], T1.[COMM_AMOUNT_4], T1.[COMM_SW_4], T1.[COMM_AMOUNT_5], T1.[COMM_SW_5], T1.[COMM_AMOUNT_6], T1.[COMM_SW_6], T1.[COMM_AMOUNT_7], T1.[COMM_SW_7], T1.[COMM_AMOUNT_8], T1.[COMM_SW_8], T1.[MILEAGE], T1.[STOCK_DAYS], T1.[POINTS], T1.[ORDER_NO], T1.[SALES_PRICE], T1.[LIST_PRICE], T1.[PURCH_PRICE], T1.[BUD_PURCH_PRICE], T1.[COST], T1.[COST_PRICE_1], T1.[SALES_COST], T1.[COST_PRICE_2], T1.[MARGIN], T1.[BUD_MARGIN], T1.[OVER_PRICE], T1.[INTEREST], T1.[GEMEIN_COST], T1.[MODEL_CODE_X], T1.[DELIVERY_DAY], T1.[SOLD_TO], T1.[TOTAL_COMM], T1.[CUSTOMER_NUMBER], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[CALCULATION_TYPE], T1.[FINAL_COMM_DATE], T1.[FIXED_COMM], T1.[OWN_SALES_PRICE], T1.[USE_FIXED_COMM], T1.[COMM_OWN_SALES_PRICE], '1' as [Client_DB] FROM [deop01].[dbo].[COMM_UNIT] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "COMM_UNIT_1" "[temp].[COMM_UNIT]" "OPTIMAX"
+
+  call sql_timestamp.bat "COMM_UNIT_2" "[OPTIMA].[import].[COMM_UNIT]" "2"
+  call bcp_queryout.bat "COMM_UNIT_2" "SELECT T1.[UNIT_NO], T1.[PERIOD], T1.[DEPARTMENT], T1.[SALESMAN], T1.[UNIT_TYPE], T1.[MODELLINE], T1.[PER_DATE], T1.[HANDLER], T1.[DATE], T1.[CALCULATE_FINAL], T1.[CALCULATE_DAY], T1.[COMM_AMOUNT_1], T1.[COMM_SW_1], T1.[COMM_AMOUNT_2], T1.[COMM_SW_2], T1.[COMM_AMOUNT_3], T1.[COMM_SW_3], T1.[COMM_AMOUNT_4], T1.[COMM_SW_4], T1.[COMM_AMOUNT_5], T1.[COMM_SW_5], T1.[COMM_AMOUNT_6], T1.[COMM_SW_6], T1.[COMM_AMOUNT_7], T1.[COMM_SW_7], T1.[COMM_AMOUNT_8], T1.[COMM_SW_8], T1.[MILEAGE], T1.[STOCK_DAYS], T1.[POINTS], T1.[ORDER_NO], T1.[SALES_PRICE], T1.[LIST_PRICE], T1.[PURCH_PRICE], T1.[BUD_PURCH_PRICE], T1.[COST], T1.[COST_PRICE_1], T1.[SALES_COST], T1.[COST_PRICE_2], T1.[MARGIN], T1.[BUD_MARGIN], T1.[OVER_PRICE], T1.[INTEREST], T1.[GEMEIN_COST], T1.[MODEL_CODE_X], T1.[DELIVERY_DAY], T1.[SOLD_TO], T1.[TOTAL_COMM], T1.[CUSTOMER_NUMBER], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[CALCULATION_TYPE], T1.[FINAL_COMM_DATE], T1.[FIXED_COMM], T1.[OWN_SALES_PRICE], T1.[USE_FIXED_COMM], T1.[COMM_OWN_SALES_PRICE], '2' as [Client_DB] FROM [deop02].[dbo].[COMM_UNIT] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "COMM_UNIT_2" "[temp].[COMM_UNIT]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[COMM_UNIT] T1 INNER JOIN [OPTIMAX].[temp].[COMM_UNIT] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[UNIT_NO] = T2.[UNIT_NO]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[COMM_UNIT] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[COMM_UNIT] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\COMM_UNIT_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\COMM_UNIT_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/COURTESY_CAR.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==COURTESY_CAR==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\COURTESY_CAR*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[COURTESY_CAR]"
+  call bcp_queryout.bat "COURTESY_CAR_1" "SELECT T1.[COURTESY_CAR_ID], T1.[DEPARTMENT], T1.[UNIT_NUMBER], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[CREATION_DATE], T1.[CREATION_TIME], T1.[DESCRIPTION], T1.[COURTESY_CAR_TYPE], T1.[COURTESY_VEH_TYPE], T1.[START_MILEAGE], T1.[MILEAGE], T1.[ACTIVE], T1.[CAR_LOCATION], T1.[CSY_PRICE_KM], T1.[CSY_MISC_NUMBER_KM], T1.[CSY_MAKE_CD_KM], T1.[CSY_PRICE_1], T1.[CSY_INCLUDED_KM_1], T1.[CSY_MISC_NUMBER_1], T1.[CSY_MAKE_CD_1], T1.[CSY_PRICE_2], T1.[CSY_INCLUDED_KM_2], T1.[CSY_MISC_NUMBER_2], T1.[CSY_MAKE_CD_2], T1.[CSY_PRICE_3], T1.[CSY_INCLUDED_KM_3], T1.[CSY_MISC_NUMBER_3], T1.[CSY_MAKE_CD_3], T1.[CSY_PRICE_4], T1.[CSY_INCLUDED_KM_4], T1.[CSY_MISC_NUMBER_4], T1.[CSY_MAKE_CD_4], T1.[CSY_PRICE_I], T1.[CSY_MISC_NUMBER_I], T1.[CSY_MAKE_CD_I], T1.[CSY_PRICE_CW], T1.[CSY_MISC_NUMBER_CW], T1.[CSY_MAKE_CD_CW], T1.[CSY_PRICE_F], T1.[CSY_MISC_NUMBER_F], T1.[CSY_MAKE_CD_F], T1.[FUELTYPE], T1.[CSY_PRICE_C], T1.[CSY_PRICE_KM_2], T1.[START_DATE], T1.[END_DATE], T1.[REGISTER_NUMBER], T1.[WORKSHOP_MODEL], T1.[MODEL_TEXT], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[COURTESY_CAR] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "COURTESY_CAR_1" "[import].[COURTESY_CAR]" "OPTIMA"
+  call bcp_queryout.bat "COURTESY_CAR_2" "SELECT T1.[COURTESY_CAR_ID], T1.[DEPARTMENT], T1.[UNIT_NUMBER], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[CREATION_DATE], T1.[CREATION_TIME], T1.[DESCRIPTION], T1.[COURTESY_CAR_TYPE], T1.[COURTESY_VEH_TYPE], T1.[START_MILEAGE], T1.[MILEAGE], T1.[ACTIVE], T1.[CAR_LOCATION], T1.[CSY_PRICE_KM], T1.[CSY_MISC_NUMBER_KM], T1.[CSY_MAKE_CD_KM], T1.[CSY_PRICE_1], T1.[CSY_INCLUDED_KM_1], T1.[CSY_MISC_NUMBER_1], T1.[CSY_MAKE_CD_1], T1.[CSY_PRICE_2], T1.[CSY_INCLUDED_KM_2], T1.[CSY_MISC_NUMBER_2], T1.[CSY_MAKE_CD_2], T1.[CSY_PRICE_3], T1.[CSY_INCLUDED_KM_3], T1.[CSY_MISC_NUMBER_3], T1.[CSY_MAKE_CD_3], T1.[CSY_PRICE_4], T1.[CSY_INCLUDED_KM_4], T1.[CSY_MISC_NUMBER_4], T1.[CSY_MAKE_CD_4], T1.[CSY_PRICE_I], T1.[CSY_MISC_NUMBER_I], T1.[CSY_MAKE_CD_I], T1.[CSY_PRICE_CW], T1.[CSY_MISC_NUMBER_CW], T1.[CSY_MAKE_CD_CW], T1.[CSY_PRICE_F], T1.[CSY_MISC_NUMBER_F], T1.[CSY_MAKE_CD_F], T1.[FUELTYPE], T1.[CSY_PRICE_C], T1.[CSY_PRICE_KM_2], T1.[START_DATE], T1.[END_DATE], T1.[REGISTER_NUMBER], T1.[WORKSHOP_MODEL], T1.[MODEL_TEXT], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[COURTESY_CAR] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "COURTESY_CAR_2" "[import].[COURTESY_CAR]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[COURTESY_CAR]"
+
+  call sql_timestamp.bat "COURTESY_CAR_1" "[OPTIMA].[import].[COURTESY_CAR]" "1"
+  call bcp_queryout.bat "COURTESY_CAR_1" "SELECT T1.[COURTESY_CAR_ID], T1.[DEPARTMENT], T1.[UNIT_NUMBER], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[CREATION_DATE], T1.[CREATION_TIME], T1.[DESCRIPTION], T1.[COURTESY_CAR_TYPE], T1.[COURTESY_VEH_TYPE], T1.[START_MILEAGE], T1.[MILEAGE], T1.[ACTIVE], T1.[CAR_LOCATION], T1.[CSY_PRICE_KM], T1.[CSY_MISC_NUMBER_KM], T1.[CSY_MAKE_CD_KM], T1.[CSY_PRICE_1], T1.[CSY_INCLUDED_KM_1], T1.[CSY_MISC_NUMBER_1], T1.[CSY_MAKE_CD_1], T1.[CSY_PRICE_2], T1.[CSY_INCLUDED_KM_2], T1.[CSY_MISC_NUMBER_2], T1.[CSY_MAKE_CD_2], T1.[CSY_PRICE_3], T1.[CSY_INCLUDED_KM_3], T1.[CSY_MISC_NUMBER_3], T1.[CSY_MAKE_CD_3], T1.[CSY_PRICE_4], T1.[CSY_INCLUDED_KM_4], T1.[CSY_MISC_NUMBER_4], T1.[CSY_MAKE_CD_4], T1.[CSY_PRICE_I], T1.[CSY_MISC_NUMBER_I], T1.[CSY_MAKE_CD_I], T1.[CSY_PRICE_CW], T1.[CSY_MISC_NUMBER_CW], T1.[CSY_MAKE_CD_CW], T1.[CSY_PRICE_F], T1.[CSY_MISC_NUMBER_F], T1.[CSY_MAKE_CD_F], T1.[FUELTYPE], T1.[CSY_PRICE_C], T1.[CSY_PRICE_KM_2], T1.[START_DATE], T1.[END_DATE], T1.[REGISTER_NUMBER], T1.[WORKSHOP_MODEL], T1.[MODEL_TEXT], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[COURTESY_CAR] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "COURTESY_CAR_1" "[temp].[COURTESY_CAR]" "OPTIMAX"
+
+  call sql_timestamp.bat "COURTESY_CAR_2" "[OPTIMA].[import].[COURTESY_CAR]" "2"
+  call bcp_queryout.bat "COURTESY_CAR_2" "SELECT T1.[COURTESY_CAR_ID], T1.[DEPARTMENT], T1.[UNIT_NUMBER], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[CREATION_DATE], T1.[CREATION_TIME], T1.[DESCRIPTION], T1.[COURTESY_CAR_TYPE], T1.[COURTESY_VEH_TYPE], T1.[START_MILEAGE], T1.[MILEAGE], T1.[ACTIVE], T1.[CAR_LOCATION], T1.[CSY_PRICE_KM], T1.[CSY_MISC_NUMBER_KM], T1.[CSY_MAKE_CD_KM], T1.[CSY_PRICE_1], T1.[CSY_INCLUDED_KM_1], T1.[CSY_MISC_NUMBER_1], T1.[CSY_MAKE_CD_1], T1.[CSY_PRICE_2], T1.[CSY_INCLUDED_KM_2], T1.[CSY_MISC_NUMBER_2], T1.[CSY_MAKE_CD_2], T1.[CSY_PRICE_3], T1.[CSY_INCLUDED_KM_3], T1.[CSY_MISC_NUMBER_3], T1.[CSY_MAKE_CD_3], T1.[CSY_PRICE_4], T1.[CSY_INCLUDED_KM_4], T1.[CSY_MISC_NUMBER_4], T1.[CSY_MAKE_CD_4], T1.[CSY_PRICE_I], T1.[CSY_MISC_NUMBER_I], T1.[CSY_MAKE_CD_I], T1.[CSY_PRICE_CW], T1.[CSY_MISC_NUMBER_CW], T1.[CSY_MAKE_CD_CW], T1.[CSY_PRICE_F], T1.[CSY_MISC_NUMBER_F], T1.[CSY_MAKE_CD_F], T1.[FUELTYPE], T1.[CSY_PRICE_C], T1.[CSY_PRICE_KM_2], T1.[START_DATE], T1.[END_DATE], T1.[REGISTER_NUMBER], T1.[WORKSHOP_MODEL], T1.[MODEL_TEXT], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[COURTESY_CAR] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "COURTESY_CAR_2" "[temp].[COURTESY_CAR]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[COURTESY_CAR] T1 INNER JOIN [OPTIMAX].[temp].[COURTESY_CAR] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[COURTESY_CAR_ID] = T2.[COURTESY_CAR_ID] AND T1.[DEPARTMENT] = T2.[DEPARTMENT]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[COURTESY_CAR] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[COURTESY_CAR] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\COURTESY_CAR_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\COURTESY_CAR_2.csv"

Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 10 - 0
System/OPTIMA/SQL/batch/CUSTOMER.bat


+ 34 - 0
System/OPTIMA/SQL/batch/CUSTOMER_TRANSACT.bat

@@ -0,0 +1,34 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==CUSTOMER_TRANSACT==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\CUSTOMER_TRANSACT*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[CUSTOMER_TRANSACT]"
+rem Nur in Quelle: LS_CONTRACT_NUMBER;DEBT_COLLECTION
+  call bcp_queryout.bat "CUSTOMER_TRANSACT_1" "SELECT T1.[CUSTOMER_NUMBER], T1.[VOUCHER_NO], T1.[LINE_NO_CU], T1.[TRANSACTION_STATUS], T1.[DUE_DATE], T1.[BOOKKEEP_DATE], T1.[STATE_CODE], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[CREATION_DATE], T1.[CREATION_TIME_8], T1.[STATUS], T1.[MODUL], T1.[BATCH_NUMBER], T1.[JOURNAL_NO], T1.[DOCUMENT_NO], T1.[DOCUMENT_DATE], T1.[DISCOUNT_DATE], T1.[DUNNING_DATE], T1.[START_INT_DATE], T1.[LAST_INT_DATE], T1.[PMT_TERM], T1.[DUNTIMES], T1.[TAX_CODE], T1.[REMINDER_CODE], T1.[SUM_C_U], T1.[TAX_C_U], T1.[CASH_DISCOUNT_C_U], T1.[INTEREST_PERC], T1.[PAID_C_U], T1.[COMMENT_CU], T1.[SETOFF_ACCT], T1.[COLLECT_ACCT], T1.[INTEREST_CALC], T1.[EEC_VAT_WORK_CODE], T1.[EEC_VAT_LIST_NO], T1.[SPLIT_CODE_CU], T1.[PMT_PROPOSAL], T1.[APPROVED], T1.[BOOK_NO], T1.[CHECK_NUMBER], T1.[ACTIVITY_CODE], T1.[SALES_TYPE], T1.[INT_VOUCHER_NO], T1.[DEPARTMENT], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[FEE_STATUS], '1' as [Client_DB] FROM [deop01].[dbo].[CUSTOMER_TRANSACT] T1  WHERE T1.[BOOKKEEP_DATE] >= '2018-01-01T00:00:00' ORDER BY T1.[timestamp] "
+  call bcp_in.bat "CUSTOMER_TRANSACT_1" "[import].[CUSTOMER_TRANSACT]" "OPTIMA"
+rem Nur in Quelle: LS_CONTRACT_NUMBER;DEBT_COLLECTION
+  call bcp_queryout.bat "CUSTOMER_TRANSACT_2" "SELECT T1.[CUSTOMER_NUMBER], T1.[VOUCHER_NO], T1.[LINE_NO_CU], T1.[TRANSACTION_STATUS], T1.[DUE_DATE], T1.[BOOKKEEP_DATE], T1.[STATE_CODE], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[CREATION_DATE], T1.[CREATION_TIME_8], T1.[STATUS], T1.[MODUL], T1.[BATCH_NUMBER], T1.[JOURNAL_NO], T1.[DOCUMENT_NO], T1.[DOCUMENT_DATE], T1.[DISCOUNT_DATE], T1.[DUNNING_DATE], T1.[START_INT_DATE], T1.[LAST_INT_DATE], T1.[PMT_TERM], T1.[DUNTIMES], T1.[TAX_CODE], T1.[REMINDER_CODE], T1.[SUM_C_U], T1.[TAX_C_U], T1.[CASH_DISCOUNT_C_U], T1.[INTEREST_PERC], T1.[PAID_C_U], T1.[COMMENT_CU], T1.[SETOFF_ACCT], T1.[COLLECT_ACCT], T1.[INTEREST_CALC], T1.[EEC_VAT_WORK_CODE], T1.[EEC_VAT_LIST_NO], T1.[SPLIT_CODE_CU], T1.[PMT_PROPOSAL], T1.[APPROVED], T1.[BOOK_NO], T1.[CHECK_NUMBER], T1.[ACTIVITY_CODE], T1.[SALES_TYPE], T1.[INT_VOUCHER_NO], T1.[DEPARTMENT], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[FEE_STATUS], '2' as [Client_DB] FROM [deop02].[dbo].[CUSTOMER_TRANSACT] T1  WHERE T1.[BOOKKEEP_DATE] >= '2018-01-01T00:00:00' ORDER BY T1.[timestamp] "
+  call bcp_in.bat "CUSTOMER_TRANSACT_2" "[import].[CUSTOMER_TRANSACT]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[CUSTOMER_TRANSACT]"
+
+  call sql_timestamp.bat "CUSTOMER_TRANSACT_1" "[OPTIMA].[import].[CUSTOMER_TRANSACT]" "1"
+  call bcp_queryout.bat "CUSTOMER_TRANSACT_1" "SELECT T1.[CUSTOMER_NUMBER], T1.[VOUCHER_NO], T1.[LINE_NO_CU], T1.[TRANSACTION_STATUS], T1.[DUE_DATE], T1.[BOOKKEEP_DATE], T1.[STATE_CODE], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[CREATION_DATE], T1.[CREATION_TIME_8], T1.[STATUS], T1.[MODUL], T1.[BATCH_NUMBER], T1.[JOURNAL_NO], T1.[DOCUMENT_NO], T1.[DOCUMENT_DATE], T1.[DISCOUNT_DATE], T1.[DUNNING_DATE], T1.[START_INT_DATE], T1.[LAST_INT_DATE], T1.[PMT_TERM], T1.[DUNTIMES], T1.[TAX_CODE], T1.[REMINDER_CODE], T1.[SUM_C_U], T1.[TAX_C_U], T1.[CASH_DISCOUNT_C_U], T1.[INTEREST_PERC], T1.[PAID_C_U], T1.[COMMENT_CU], T1.[SETOFF_ACCT], T1.[COLLECT_ACCT], T1.[INTEREST_CALC], T1.[EEC_VAT_WORK_CODE], T1.[EEC_VAT_LIST_NO], T1.[SPLIT_CODE_CU], T1.[PMT_PROPOSAL], T1.[APPROVED], T1.[BOOK_NO], T1.[CHECK_NUMBER], T1.[ACTIVITY_CODE], T1.[SALES_TYPE], T1.[INT_VOUCHER_NO], T1.[DEPARTMENT], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[FEE_STATUS], '1' as [Client_DB] FROM [deop01].[dbo].[CUSTOMER_TRANSACT] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND T1.[BOOKKEEP_DATE] >= '2018-01-01T00:00:00' ORDER BY T1.[timestamp] "
+  call bcp_in.bat "CUSTOMER_TRANSACT_1" "[temp].[CUSTOMER_TRANSACT]" "OPTIMAX"
+
+  call sql_timestamp.bat "CUSTOMER_TRANSACT_2" "[OPTIMA].[import].[CUSTOMER_TRANSACT]" "2"
+  call bcp_queryout.bat "CUSTOMER_TRANSACT_2" "SELECT T1.[CUSTOMER_NUMBER], T1.[VOUCHER_NO], T1.[LINE_NO_CU], T1.[TRANSACTION_STATUS], T1.[DUE_DATE], T1.[BOOKKEEP_DATE], T1.[STATE_CODE], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[CREATION_DATE], T1.[CREATION_TIME_8], T1.[STATUS], T1.[MODUL], T1.[BATCH_NUMBER], T1.[JOURNAL_NO], T1.[DOCUMENT_NO], T1.[DOCUMENT_DATE], T1.[DISCOUNT_DATE], T1.[DUNNING_DATE], T1.[START_INT_DATE], T1.[LAST_INT_DATE], T1.[PMT_TERM], T1.[DUNTIMES], T1.[TAX_CODE], T1.[REMINDER_CODE], T1.[SUM_C_U], T1.[TAX_C_U], T1.[CASH_DISCOUNT_C_U], T1.[INTEREST_PERC], T1.[PAID_C_U], T1.[COMMENT_CU], T1.[SETOFF_ACCT], T1.[COLLECT_ACCT], T1.[INTEREST_CALC], T1.[EEC_VAT_WORK_CODE], T1.[EEC_VAT_LIST_NO], T1.[SPLIT_CODE_CU], T1.[PMT_PROPOSAL], T1.[APPROVED], T1.[BOOK_NO], T1.[CHECK_NUMBER], T1.[ACTIVITY_CODE], T1.[SALES_TYPE], T1.[INT_VOUCHER_NO], T1.[DEPARTMENT], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[FEE_STATUS], '2' as [Client_DB] FROM [deop02].[dbo].[CUSTOMER_TRANSACT] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND T1.[BOOKKEEP_DATE] >= '2018-01-01T00:00:00' ORDER BY T1.[timestamp] "
+  call bcp_in.bat "CUSTOMER_TRANSACT_2" "[temp].[CUSTOMER_TRANSACT]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[CUSTOMER_TRANSACT] T1 INNER JOIN [OPTIMAX].[temp].[CUSTOMER_TRANSACT] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[UNIQUE_IDENT] = T2.[UNIQUE_IDENT]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[CUSTOMER_TRANSACT] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[CUSTOMER_TRANSACT] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\CUSTOMER_TRANSACT_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\CUSTOMER_TRANSACT_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/DEPARTMENT_TYPE.bat

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

+ 32 - 0
System/OPTIMA/SQL/batch/EMPLOYEE.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==EMPLOYEE==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\EMPLOYEE*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[EMPLOYEE]"
+  call bcp_queryout.bat "EMPLOYEE_1" "SELECT T1.[UNIQUE_IDENT], T1.[PERSON_ID], T1.[FLEX_BALANCE], T1.[OVERWORK_CODE], T1.[WAGE_NO], T1.[EFFICIENCY_PRC], T1.[JOB_START_DATE], T1.[JOB_END_DATE], T1.[PROFESSION_GROUP_ID], T1.[WORK_LEADER_GROUP_ID], T1.[EMPLOYEE_GROUP], T1.[WORKSHOP_TEAM], T1.[EXTERNAL_PERSON_NO], T1.[TRAINEE_YEARS], T1.[MAX_FLEX_HOURS], T1.[MIN_FLEX_HOURS], T1.[FLEX_PATTERN_ALLOWED], T1.[CH_WORK_PATTERN_ALLOWED], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[FUNCTION_CODE], T1.[PROGRAM], T1.[CONV_FLAG], T1.[timestamp], T1.[T350_ACCESS_RULE], '1' as [Client_DB] FROM [deop01].[dbo].[EMPLOYEE] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "EMPLOYEE_1" "[import].[EMPLOYEE]" "OPTIMA"
+  call bcp_queryout.bat "EMPLOYEE_2" "SELECT T1.[UNIQUE_IDENT], T1.[PERSON_ID], T1.[FLEX_BALANCE], T1.[OVERWORK_CODE], T1.[WAGE_NO], T1.[EFFICIENCY_PRC], T1.[JOB_START_DATE], T1.[JOB_END_DATE], T1.[PROFESSION_GROUP_ID], T1.[WORK_LEADER_GROUP_ID], T1.[EMPLOYEE_GROUP], T1.[WORKSHOP_TEAM], T1.[EXTERNAL_PERSON_NO], T1.[TRAINEE_YEARS], T1.[MAX_FLEX_HOURS], T1.[MIN_FLEX_HOURS], T1.[FLEX_PATTERN_ALLOWED], T1.[CH_WORK_PATTERN_ALLOWED], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[FUNCTION_CODE], T1.[PROGRAM], T1.[CONV_FLAG], T1.[timestamp], T1.[T350_ACCESS_RULE], '2' as [Client_DB] FROM [deop02].[dbo].[EMPLOYEE] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "EMPLOYEE_2" "[import].[EMPLOYEE]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[EMPLOYEE]"
+
+  call sql_timestamp.bat "EMPLOYEE_1" "[OPTIMA].[import].[EMPLOYEE]" "1"
+  call bcp_queryout.bat "EMPLOYEE_1" "SELECT T1.[UNIQUE_IDENT], T1.[PERSON_ID], T1.[FLEX_BALANCE], T1.[OVERWORK_CODE], T1.[WAGE_NO], T1.[EFFICIENCY_PRC], T1.[JOB_START_DATE], T1.[JOB_END_DATE], T1.[PROFESSION_GROUP_ID], T1.[WORK_LEADER_GROUP_ID], T1.[EMPLOYEE_GROUP], T1.[WORKSHOP_TEAM], T1.[EXTERNAL_PERSON_NO], T1.[TRAINEE_YEARS], T1.[MAX_FLEX_HOURS], T1.[MIN_FLEX_HOURS], T1.[FLEX_PATTERN_ALLOWED], T1.[CH_WORK_PATTERN_ALLOWED], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[FUNCTION_CODE], T1.[PROGRAM], T1.[CONV_FLAG], T1.[timestamp], T1.[T350_ACCESS_RULE], '1' as [Client_DB] FROM [deop01].[dbo].[EMPLOYEE] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "EMPLOYEE_1" "[temp].[EMPLOYEE]" "OPTIMAX"
+
+  call sql_timestamp.bat "EMPLOYEE_2" "[OPTIMA].[import].[EMPLOYEE]" "2"
+  call bcp_queryout.bat "EMPLOYEE_2" "SELECT T1.[UNIQUE_IDENT], T1.[PERSON_ID], T1.[FLEX_BALANCE], T1.[OVERWORK_CODE], T1.[WAGE_NO], T1.[EFFICIENCY_PRC], T1.[JOB_START_DATE], T1.[JOB_END_DATE], T1.[PROFESSION_GROUP_ID], T1.[WORK_LEADER_GROUP_ID], T1.[EMPLOYEE_GROUP], T1.[WORKSHOP_TEAM], T1.[EXTERNAL_PERSON_NO], T1.[TRAINEE_YEARS], T1.[MAX_FLEX_HOURS], T1.[MIN_FLEX_HOURS], T1.[FLEX_PATTERN_ALLOWED], T1.[CH_WORK_PATTERN_ALLOWED], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[FUNCTION_CODE], T1.[PROGRAM], T1.[CONV_FLAG], T1.[timestamp], T1.[T350_ACCESS_RULE], '2' as [Client_DB] FROM [deop02].[dbo].[EMPLOYEE] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "EMPLOYEE_2" "[temp].[EMPLOYEE]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[EMPLOYEE] T1 INNER JOIN [OPTIMAX].[temp].[EMPLOYEE] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[PERSON_ID] = T2.[PERSON_ID]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[EMPLOYEE] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[EMPLOYEE] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\EMPLOYEE_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\EMPLOYEE_2.csv"

+ 34 - 0
System/OPTIMA/SQL/batch/GLOBAL_MAKE.bat

@@ -0,0 +1,34 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==GLOBAL_MAKE==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\GLOBAL_MAKE*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[GLOBAL_MAKE]"
+rem Nur in Quelle: BRAND_CODE
+  call bcp_queryout.bat "GLOBAL_MAKE_1" "SELECT T1.[GLOBAL_MAKE_CD], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[DESCRIPTION], T1.[ADP_MAKE], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[ADP_EXCHANGE_MAKE_CD], T1.[CBR_MAKE_CD], T1.[SKR51_MAKE_CD], '1' as [Client_DB] FROM [deop01].[dbo].[GLOBAL_MAKE] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "GLOBAL_MAKE_1" "[import].[GLOBAL_MAKE]" "OPTIMA"
+rem Nur in Quelle: BRAND_CODE
+  call bcp_queryout.bat "GLOBAL_MAKE_2" "SELECT T1.[GLOBAL_MAKE_CD], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[DESCRIPTION], T1.[ADP_MAKE], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[ADP_EXCHANGE_MAKE_CD], T1.[CBR_MAKE_CD], T1.[SKR51_MAKE_CD], '2' as [Client_DB] FROM [deop02].[dbo].[GLOBAL_MAKE] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "GLOBAL_MAKE_2" "[import].[GLOBAL_MAKE]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[GLOBAL_MAKE]"
+
+  call sql_timestamp.bat "GLOBAL_MAKE_1" "[OPTIMA].[import].[GLOBAL_MAKE]" "1"
+  call bcp_queryout.bat "GLOBAL_MAKE_1" "SELECT T1.[GLOBAL_MAKE_CD], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[DESCRIPTION], T1.[ADP_MAKE], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[ADP_EXCHANGE_MAKE_CD], T1.[CBR_MAKE_CD], T1.[SKR51_MAKE_CD], '1' as [Client_DB] FROM [deop01].[dbo].[GLOBAL_MAKE] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "GLOBAL_MAKE_1" "[temp].[GLOBAL_MAKE]" "OPTIMAX"
+
+  call sql_timestamp.bat "GLOBAL_MAKE_2" "[OPTIMA].[import].[GLOBAL_MAKE]" "2"
+  call bcp_queryout.bat "GLOBAL_MAKE_2" "SELECT T1.[GLOBAL_MAKE_CD], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[DESCRIPTION], T1.[ADP_MAKE], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[ADP_EXCHANGE_MAKE_CD], T1.[CBR_MAKE_CD], T1.[SKR51_MAKE_CD], '2' as [Client_DB] FROM [deop02].[dbo].[GLOBAL_MAKE] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "GLOBAL_MAKE_2" "[temp].[GLOBAL_MAKE]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[GLOBAL_MAKE] T1 INNER JOIN [OPTIMAX].[temp].[GLOBAL_MAKE] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[GLOBAL_MAKE_CD] = T2.[GLOBAL_MAKE_CD]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[GLOBAL_MAKE] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[GLOBAL_MAKE] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\GLOBAL_MAKE_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\GLOBAL_MAKE_2.csv"

Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 9 - 0
System/OPTIMA/SQL/batch/GM_DRIVE_ORDER.bat


+ 32 - 0
System/OPTIMA/SQL/batch/ORDER_ACCUMULATION.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==ORDER_ACCUMULATION==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\ORDER_ACCUMULATION*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[ORDER_ACCUMULATION]"
+  call bcp_queryout.bat "ORDER_ACCUMULATION_1" "SELECT T1.[ORDER_NUMBER], T1.[ACCU_LEVEL], T1.[ACCU_TYPE], T1.[ACCU_CODE], T1.[VAT_TABLE], T1.[STATE_CODE_ACCU], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[TAX_PERC], T1.[EXCHANGE_PART], T1.[AMOUNT_EXCL], T1.[TAX_SHARE], T1.[PRINT_CHARS], T1.[WUST_CODE], T1.[TAX_DIFF_LINE], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[ORDER_ACCUMULATION] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "ORDER_ACCUMULATION_1" "[import].[ORDER_ACCUMULATION]" "OPTIMA"
+  call bcp_queryout.bat "ORDER_ACCUMULATION_2" "SELECT T1.[ORDER_NUMBER], T1.[ACCU_LEVEL], T1.[ACCU_TYPE], T1.[ACCU_CODE], T1.[VAT_TABLE], T1.[STATE_CODE_ACCU], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[TAX_PERC], T1.[EXCHANGE_PART], T1.[AMOUNT_EXCL], T1.[TAX_SHARE], T1.[PRINT_CHARS], T1.[WUST_CODE], T1.[TAX_DIFF_LINE], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[ORDER_ACCUMULATION] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "ORDER_ACCUMULATION_2" "[import].[ORDER_ACCUMULATION]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[ORDER_ACCUMULATION]"
+
+  call sql_timestamp.bat "ORDER_ACCUMULATION_1" "[OPTIMA].[import].[ORDER_ACCUMULATION]" "1"
+  call bcp_queryout.bat "ORDER_ACCUMULATION_1" "SELECT T1.[ORDER_NUMBER], T1.[ACCU_LEVEL], T1.[ACCU_TYPE], T1.[ACCU_CODE], T1.[VAT_TABLE], T1.[STATE_CODE_ACCU], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[TAX_PERC], T1.[EXCHANGE_PART], T1.[AMOUNT_EXCL], T1.[TAX_SHARE], T1.[PRINT_CHARS], T1.[WUST_CODE], T1.[TAX_DIFF_LINE], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[ORDER_ACCUMULATION] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "ORDER_ACCUMULATION_1" "[temp].[ORDER_ACCUMULATION]" "OPTIMAX"
+
+  call sql_timestamp.bat "ORDER_ACCUMULATION_2" "[OPTIMA].[import].[ORDER_ACCUMULATION]" "2"
+  call bcp_queryout.bat "ORDER_ACCUMULATION_2" "SELECT T1.[ORDER_NUMBER], T1.[ACCU_LEVEL], T1.[ACCU_TYPE], T1.[ACCU_CODE], T1.[VAT_TABLE], T1.[STATE_CODE_ACCU], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[TAX_PERC], T1.[EXCHANGE_PART], T1.[AMOUNT_EXCL], T1.[TAX_SHARE], T1.[PRINT_CHARS], T1.[WUST_CODE], T1.[TAX_DIFF_LINE], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[ORDER_ACCUMULATION] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "ORDER_ACCUMULATION_2" "[temp].[ORDER_ACCUMULATION]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[ORDER_ACCUMULATION] T1 INNER JOIN [OPTIMAX].[temp].[ORDER_ACCUMULATION] T2 ON T1.[ACCU_CODE] = T2.[ACCU_CODE] AND T1.[ACCU_LEVEL] = T2.[ACCU_LEVEL] AND T1.[ACCU_TYPE] = T2.[ACCU_TYPE] AND T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[ORDER_NUMBER] = T2.[ORDER_NUMBER] AND T1.[VAT_TABLE] = T2.[VAT_TABLE]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[ORDER_ACCUMULATION] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[ORDER_ACCUMULATION] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\ORDER_ACCUMULATION_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\ORDER_ACCUMULATION_2.csv"

Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 10 - 0
System/OPTIMA/SQL/batch/ORDER_HEADER.bat


Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 9 - 0
System/OPTIMA/SQL/batch/ORDER_LINE.bat


+ 32 - 0
System/OPTIMA/SQL/batch/ORDER_OPEN_ITEMS.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==ORDER_OPEN_ITEMS==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\ORDER_OPEN_ITEMS*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[ORDER_OPEN_ITEMS]"
+  call bcp_queryout.bat "ORDER_OPEN_ITEMS_1" "SELECT T1.[VEH_ORDER_OPTION_ID], T1.[LINE_NO], T1.[CREATION_DATE], T1.[HANDLER], T1.[CUSTOMER_TRANSACT_ID], T1.[SUPPLIER_TRANSACT_ID], T1.[MATCH_AMOUNT], T1.[ORIG_CUSTOMER_TRANSACT_ID], T1.[ORIG_SUPPLIER_TRANSACT_ID], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[ORDER_OPEN_ITEMS] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "ORDER_OPEN_ITEMS_1" "[import].[ORDER_OPEN_ITEMS]" "OPTIMA"
+  call bcp_queryout.bat "ORDER_OPEN_ITEMS_2" "SELECT T1.[VEH_ORDER_OPTION_ID], T1.[LINE_NO], T1.[CREATION_DATE], T1.[HANDLER], T1.[CUSTOMER_TRANSACT_ID], T1.[SUPPLIER_TRANSACT_ID], T1.[MATCH_AMOUNT], T1.[ORIG_CUSTOMER_TRANSACT_ID], T1.[ORIG_SUPPLIER_TRANSACT_ID], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[ORDER_OPEN_ITEMS] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "ORDER_OPEN_ITEMS_2" "[import].[ORDER_OPEN_ITEMS]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[ORDER_OPEN_ITEMS]"
+
+  call sql_timestamp.bat "ORDER_OPEN_ITEMS_1" "[OPTIMA].[import].[ORDER_OPEN_ITEMS]" "1"
+  call bcp_queryout.bat "ORDER_OPEN_ITEMS_1" "SELECT T1.[VEH_ORDER_OPTION_ID], T1.[LINE_NO], T1.[CREATION_DATE], T1.[HANDLER], T1.[CUSTOMER_TRANSACT_ID], T1.[SUPPLIER_TRANSACT_ID], T1.[MATCH_AMOUNT], T1.[ORIG_CUSTOMER_TRANSACT_ID], T1.[ORIG_SUPPLIER_TRANSACT_ID], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[ORDER_OPEN_ITEMS] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "ORDER_OPEN_ITEMS_1" "[temp].[ORDER_OPEN_ITEMS]" "OPTIMAX"
+
+  call sql_timestamp.bat "ORDER_OPEN_ITEMS_2" "[OPTIMA].[import].[ORDER_OPEN_ITEMS]" "2"
+  call bcp_queryout.bat "ORDER_OPEN_ITEMS_2" "SELECT T1.[VEH_ORDER_OPTION_ID], T1.[LINE_NO], T1.[CREATION_DATE], T1.[HANDLER], T1.[CUSTOMER_TRANSACT_ID], T1.[SUPPLIER_TRANSACT_ID], T1.[MATCH_AMOUNT], T1.[ORIG_CUSTOMER_TRANSACT_ID], T1.[ORIG_SUPPLIER_TRANSACT_ID], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[ORDER_OPEN_ITEMS] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "ORDER_OPEN_ITEMS_2" "[temp].[ORDER_OPEN_ITEMS]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[ORDER_OPEN_ITEMS] T1 INNER JOIN [OPTIMAX].[temp].[ORDER_OPEN_ITEMS] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[LINE_NO] = T2.[LINE_NO] AND T1.[VEH_ORDER_OPTION_ID] = T2.[VEH_ORDER_OPTION_ID]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[ORDER_OPEN_ITEMS] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[ORDER_OPEN_ITEMS] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\ORDER_OPEN_ITEMS_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\ORDER_OPEN_ITEMS_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/ORDER_SERVICE_SCHEMES.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==ORDER_SERVICE_SCHEMES==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\ORDER_SERVICE_SCHEMES*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[ORDER_SERVICE_SCHEMES]"
+  call bcp_queryout.bat "ORDER_SERVICE_SCHEMES_1" "SELECT T1.[ORDER_NUMBER], T1.[SCHEME_NO], T1.[GUIDING_TEXT_NO], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[FIELD_NO], T1.[GUIDING_TEXT], T1.[FIELD_A], T1.[FIELD_B], T1.[FIELD_C], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[ORDER_SERVICE_SCHEMES] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "ORDER_SERVICE_SCHEMES_1" "[import].[ORDER_SERVICE_SCHEMES]" "OPTIMA"
+  call bcp_queryout.bat "ORDER_SERVICE_SCHEMES_2" "SELECT T1.[ORDER_NUMBER], T1.[SCHEME_NO], T1.[GUIDING_TEXT_NO], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[FIELD_NO], T1.[GUIDING_TEXT], T1.[FIELD_A], T1.[FIELD_B], T1.[FIELD_C], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[ORDER_SERVICE_SCHEMES] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "ORDER_SERVICE_SCHEMES_2" "[import].[ORDER_SERVICE_SCHEMES]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[ORDER_SERVICE_SCHEMES]"
+
+  call sql_timestamp.bat "ORDER_SERVICE_SCHEMES_1" "[OPTIMA].[import].[ORDER_SERVICE_SCHEMES]" "1"
+  call bcp_queryout.bat "ORDER_SERVICE_SCHEMES_1" "SELECT T1.[ORDER_NUMBER], T1.[SCHEME_NO], T1.[GUIDING_TEXT_NO], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[FIELD_NO], T1.[GUIDING_TEXT], T1.[FIELD_A], T1.[FIELD_B], T1.[FIELD_C], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[ORDER_SERVICE_SCHEMES] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "ORDER_SERVICE_SCHEMES_1" "[temp].[ORDER_SERVICE_SCHEMES]" "OPTIMAX"
+
+  call sql_timestamp.bat "ORDER_SERVICE_SCHEMES_2" "[OPTIMA].[import].[ORDER_SERVICE_SCHEMES]" "2"
+  call bcp_queryout.bat "ORDER_SERVICE_SCHEMES_2" "SELECT T1.[ORDER_NUMBER], T1.[SCHEME_NO], T1.[GUIDING_TEXT_NO], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[FIELD_NO], T1.[GUIDING_TEXT], T1.[FIELD_A], T1.[FIELD_B], T1.[FIELD_C], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[ORDER_SERVICE_SCHEMES] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "ORDER_SERVICE_SCHEMES_2" "[temp].[ORDER_SERVICE_SCHEMES]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[ORDER_SERVICE_SCHEMES] T1 INNER JOIN [OPTIMAX].[temp].[ORDER_SERVICE_SCHEMES] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[GUIDING_TEXT_NO] = T2.[GUIDING_TEXT_NO] AND T1.[ORDER_NUMBER] = T2.[ORDER_NUMBER] AND T1.[SCHEME_NO] = T2.[SCHEME_NO]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[ORDER_SERVICE_SCHEMES] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[ORDER_SERVICE_SCHEMES] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\ORDER_SERVICE_SCHEMES_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\ORDER_SERVICE_SCHEMES_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/PERSON.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==PERSON==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\PERSON*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[PERSON]"
+  call bcp_queryout.bat "PERSON_1" "SELECT T1.[UNIQUE_IDENT], T1.[DISPLAY_NAME], T1.[FIRST_NAME], T1.[LAST_NAME], T1.[PERSON_CODE], T1.[GENDER], T1.[TITLE], T1.[BIRTH_PLACE], T1.[BIRTHDAY], T1.[BANK_NAME], T1.[ACCOUNT_NO], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[FUNCTION_CODE], T1.[PROGRAM], T1.[CONV_FLAG], T1.[timestamp], '1' as [Client_DB] FROM [deop01].[dbo].[PERSON] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "PERSON_1" "[import].[PERSON]" "OPTIMA"
+  call bcp_queryout.bat "PERSON_2" "SELECT T1.[UNIQUE_IDENT], T1.[DISPLAY_NAME], T1.[FIRST_NAME], T1.[LAST_NAME], T1.[PERSON_CODE], T1.[GENDER], T1.[TITLE], T1.[BIRTH_PLACE], T1.[BIRTHDAY], T1.[BANK_NAME], T1.[ACCOUNT_NO], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[FUNCTION_CODE], T1.[PROGRAM], T1.[CONV_FLAG], T1.[timestamp], '2' as [Client_DB] FROM [deop02].[dbo].[PERSON] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "PERSON_2" "[import].[PERSON]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[PERSON]"
+
+  call sql_timestamp.bat "PERSON_1" "[OPTIMA].[import].[PERSON]" "1"
+  call bcp_queryout.bat "PERSON_1" "SELECT T1.[UNIQUE_IDENT], T1.[DISPLAY_NAME], T1.[FIRST_NAME], T1.[LAST_NAME], T1.[PERSON_CODE], T1.[GENDER], T1.[TITLE], T1.[BIRTH_PLACE], T1.[BIRTHDAY], T1.[BANK_NAME], T1.[ACCOUNT_NO], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[FUNCTION_CODE], T1.[PROGRAM], T1.[CONV_FLAG], T1.[timestamp], '1' as [Client_DB] FROM [deop01].[dbo].[PERSON] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "PERSON_1" "[temp].[PERSON]" "OPTIMAX"
+
+  call sql_timestamp.bat "PERSON_2" "[OPTIMA].[import].[PERSON]" "2"
+  call bcp_queryout.bat "PERSON_2" "SELECT T1.[UNIQUE_IDENT], T1.[DISPLAY_NAME], T1.[FIRST_NAME], T1.[LAST_NAME], T1.[PERSON_CODE], T1.[GENDER], T1.[TITLE], T1.[BIRTH_PLACE], T1.[BIRTHDAY], T1.[BANK_NAME], T1.[ACCOUNT_NO], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[FUNCTION_CODE], T1.[PROGRAM], T1.[CONV_FLAG], T1.[timestamp], '2' as [Client_DB] FROM [deop02].[dbo].[PERSON] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "PERSON_2" "[temp].[PERSON]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[PERSON] T1 INNER JOIN [OPTIMAX].[temp].[PERSON] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[UNIQUE_IDENT] = T2.[UNIQUE_IDENT]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[PERSON] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[PERSON] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\PERSON_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\PERSON_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/PERSON_INFO.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==PERSON_INFO==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\PERSON_INFO*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[PERSON_INFO]"
+  call bcp_queryout.bat "PERSON_INFO_1" "SELECT T1.[PERSON_GROUP], T1.[PERSON_NUMBER], T1.[NAME], T1.[PERS_DEPARTMENT], T1.[PERS_STATE_CODE], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PERS_PERSON_CODE], T1.[PERS_STREET_ADDR], T1.[PERS_MAIL_ADDR], T1.[PERS_ZIPCODE], T1.[PERS_PHONE], T1.[PERS_SEX], T1.[PERS_TASK], T1.[PERS_BIRTH_PLACE], T1.[PERS_BANK], T1.[PERS_ACCT_NR], T1.[PERS_JOB_START], T1.[PERS_JOB_END], T1.[PERS_MECHNO_GROUP], T1.[PERS_UNION_START], T1.[PERS_MM_HOURS], T1.[PERS_ACT_CODE], T1.[PERS_PERSONAL_NO], T1.[PERS_OVERWORK], T1.[PERS_EFF_AW_DIV], T1.[OVERWORK_TIME], T1.[ADDR_3], T1.[COUNTY], T1.[DEF_DAY_ACTIVITY], T1.[DEF_JOB_ORDER_ACTIVITY], T1.[DEF_JOB_ACTIVITY], T1.[PERSON_NUMBER_NUM], T1.[WORKSHOP_TEAM], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[PERSON_INFO] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "PERSON_INFO_1" "[import].[PERSON_INFO]" "OPTIMA"
+  call bcp_queryout.bat "PERSON_INFO_2" "SELECT T1.[PERSON_GROUP], T1.[PERSON_NUMBER], T1.[NAME], T1.[PERS_DEPARTMENT], T1.[PERS_STATE_CODE], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PERS_PERSON_CODE], T1.[PERS_STREET_ADDR], T1.[PERS_MAIL_ADDR], T1.[PERS_ZIPCODE], T1.[PERS_PHONE], T1.[PERS_SEX], T1.[PERS_TASK], T1.[PERS_BIRTH_PLACE], T1.[PERS_BANK], T1.[PERS_ACCT_NR], T1.[PERS_JOB_START], T1.[PERS_JOB_END], T1.[PERS_MECHNO_GROUP], T1.[PERS_UNION_START], T1.[PERS_MM_HOURS], T1.[PERS_ACT_CODE], T1.[PERS_PERSONAL_NO], T1.[PERS_OVERWORK], T1.[PERS_EFF_AW_DIV], T1.[OVERWORK_TIME], T1.[ADDR_3], T1.[COUNTY], T1.[DEF_DAY_ACTIVITY], T1.[DEF_JOB_ORDER_ACTIVITY], T1.[DEF_JOB_ACTIVITY], T1.[PERSON_NUMBER_NUM], T1.[WORKSHOP_TEAM], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[PERSON_INFO] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "PERSON_INFO_2" "[import].[PERSON_INFO]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[PERSON_INFO]"
+
+  call sql_timestamp.bat "PERSON_INFO_1" "[OPTIMA].[import].[PERSON_INFO]" "1"
+  call bcp_queryout.bat "PERSON_INFO_1" "SELECT T1.[PERSON_GROUP], T1.[PERSON_NUMBER], T1.[NAME], T1.[PERS_DEPARTMENT], T1.[PERS_STATE_CODE], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PERS_PERSON_CODE], T1.[PERS_STREET_ADDR], T1.[PERS_MAIL_ADDR], T1.[PERS_ZIPCODE], T1.[PERS_PHONE], T1.[PERS_SEX], T1.[PERS_TASK], T1.[PERS_BIRTH_PLACE], T1.[PERS_BANK], T1.[PERS_ACCT_NR], T1.[PERS_JOB_START], T1.[PERS_JOB_END], T1.[PERS_MECHNO_GROUP], T1.[PERS_UNION_START], T1.[PERS_MM_HOURS], T1.[PERS_ACT_CODE], T1.[PERS_PERSONAL_NO], T1.[PERS_OVERWORK], T1.[PERS_EFF_AW_DIV], T1.[OVERWORK_TIME], T1.[ADDR_3], T1.[COUNTY], T1.[DEF_DAY_ACTIVITY], T1.[DEF_JOB_ORDER_ACTIVITY], T1.[DEF_JOB_ACTIVITY], T1.[PERSON_NUMBER_NUM], T1.[WORKSHOP_TEAM], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[PERSON_INFO] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "PERSON_INFO_1" "[temp].[PERSON_INFO]" "OPTIMAX"
+
+  call sql_timestamp.bat "PERSON_INFO_2" "[OPTIMA].[import].[PERSON_INFO]" "2"
+  call bcp_queryout.bat "PERSON_INFO_2" "SELECT T1.[PERSON_GROUP], T1.[PERSON_NUMBER], T1.[NAME], T1.[PERS_DEPARTMENT], T1.[PERS_STATE_CODE], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PERS_PERSON_CODE], T1.[PERS_STREET_ADDR], T1.[PERS_MAIL_ADDR], T1.[PERS_ZIPCODE], T1.[PERS_PHONE], T1.[PERS_SEX], T1.[PERS_TASK], T1.[PERS_BIRTH_PLACE], T1.[PERS_BANK], T1.[PERS_ACCT_NR], T1.[PERS_JOB_START], T1.[PERS_JOB_END], T1.[PERS_MECHNO_GROUP], T1.[PERS_UNION_START], T1.[PERS_MM_HOURS], T1.[PERS_ACT_CODE], T1.[PERS_PERSONAL_NO], T1.[PERS_OVERWORK], T1.[PERS_EFF_AW_DIV], T1.[OVERWORK_TIME], T1.[ADDR_3], T1.[COUNTY], T1.[DEF_DAY_ACTIVITY], T1.[DEF_JOB_ORDER_ACTIVITY], T1.[DEF_JOB_ACTIVITY], T1.[PERSON_NUMBER_NUM], T1.[WORKSHOP_TEAM], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[PERSON_INFO] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "PERSON_INFO_2" "[temp].[PERSON_INFO]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[PERSON_INFO] T1 INNER JOIN [OPTIMAX].[temp].[PERSON_INFO] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[PERSON_NUMBER] = T2.[PERSON_NUMBER]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[PERSON_INFO] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[PERSON_INFO] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\PERSON_INFO_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\PERSON_INFO_2.csv"

Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 10 - 0
System/OPTIMA/SQL/batch/PRODUCT_FILE.bat


+ 32 - 0
System/OPTIMA/SQL/batch/PRODUCT_STOCK_FILE.bat

@@ -0,0 +1,32 @@
+@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"

+ 32 - 0
System/OPTIMA/SQL/batch/PROFILE.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==PROFILE==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\PROFILE*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[PROFILE]"
+  call bcp_queryout.bat "PROFILE_1" "SELECT T1.[PERSON_ID], T1.[PROFILE_CODE], T1.[MECHANIC_PAY_GROUP], T1.[COMMISSION], T1.[EFFICIENCY_FACTOR], T1.[EMPLOYEE_CATEGORY], T1.[LICENCE_ID], T1.[OCCUPATION], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[SERVICE_ADVISOR_NUMBER], T1.[ONLINE_BOOK_PARTICIPATION], T1.[SKODA_SERVICE_ID], '1' as [Client_DB] FROM [deop01].[dbo].[PROFILE] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "PROFILE_1" "[import].[PROFILE]" "OPTIMA"
+  call bcp_queryout.bat "PROFILE_2" "SELECT T1.[PERSON_ID], T1.[PROFILE_CODE], T1.[MECHANIC_PAY_GROUP], T1.[COMMISSION], T1.[EFFICIENCY_FACTOR], T1.[EMPLOYEE_CATEGORY], T1.[LICENCE_ID], T1.[OCCUPATION], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[SERVICE_ADVISOR_NUMBER], T1.[ONLINE_BOOK_PARTICIPATION], T1.[SKODA_SERVICE_ID], '2' as [Client_DB] FROM [deop02].[dbo].[PROFILE] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "PROFILE_2" "[import].[PROFILE]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[PROFILE]"
+
+  call sql_timestamp.bat "PROFILE_1" "[OPTIMA].[import].[PROFILE]" "1"
+  call bcp_queryout.bat "PROFILE_1" "SELECT T1.[PERSON_ID], T1.[PROFILE_CODE], T1.[MECHANIC_PAY_GROUP], T1.[COMMISSION], T1.[EFFICIENCY_FACTOR], T1.[EMPLOYEE_CATEGORY], T1.[LICENCE_ID], T1.[OCCUPATION], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[SERVICE_ADVISOR_NUMBER], T1.[ONLINE_BOOK_PARTICIPATION], T1.[SKODA_SERVICE_ID], '1' as [Client_DB] FROM [deop01].[dbo].[PROFILE] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "PROFILE_1" "[temp].[PROFILE]" "OPTIMAX"
+
+  call sql_timestamp.bat "PROFILE_2" "[OPTIMA].[import].[PROFILE]" "2"
+  call bcp_queryout.bat "PROFILE_2" "SELECT T1.[PERSON_ID], T1.[PROFILE_CODE], T1.[MECHANIC_PAY_GROUP], T1.[COMMISSION], T1.[EFFICIENCY_FACTOR], T1.[EMPLOYEE_CATEGORY], T1.[LICENCE_ID], T1.[OCCUPATION], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[SERVICE_ADVISOR_NUMBER], T1.[ONLINE_BOOK_PARTICIPATION], T1.[SKODA_SERVICE_ID], '2' as [Client_DB] FROM [deop02].[dbo].[PROFILE] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "PROFILE_2" "[temp].[PROFILE]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[PROFILE] T1 INNER JOIN [OPTIMAX].[temp].[PROFILE] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[UNIQUE_IDENT] = T2.[UNIQUE_IDENT]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[PROFILE] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[PROFILE] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\PROFILE_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\PROFILE_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/PROFILE_TYPE.bat

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

+ 32 - 0
System/OPTIMA/SQL/batch/PUNCH.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==PUNCH==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\PUNCH*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[PUNCH]"
+  call bcp_queryout.bat "PUNCH_1" "SELECT T1.[UNIQUE_IDENT], T1.[ACTIVITY_CODE], T1.[PROFILE_CODE], T1.[HANDLER], T1.[FUNCTION_CODE], T1.[PROGRAM], T1.[TRANSACT_DATE_LONG], T1.[START_PUNCH_FUNCTION], T1.[START_PUNCH_PROGRAM], T1.[END_PUNCH_FUNCTION], T1.[END_PUNCH_PROGRAM], T1.[DONE_FOR_DEPARTMENT], T1.[DONE_FOR_WORK_LEADER], T1.[ENDED_PUNCH], T1.[ORDER_NUMBER], T1.[LINE_NUMBER], T1.[START_DATE_TIME], T1.[END_DATE_TIME], T1.[TMCS_IDLE_PUNCH], T1.[DURATION_INT], T1.[USED_TIME_INT], T1.[WAGE_EXTRACTED], T1.[PUNCH_REMARK_CODE], T1.[REMARK_ACCEPTED], T1.[PUNCH_PERIOD_START_ID], T1.[CONV_FLAG], T1.[timestamp], T1.[ORIGINAL_ACTIVITY_CD], T1.[ORIGINAL_ORDER_NR], '1' as [Client_DB] FROM [deop01].[dbo].[PUNCH] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "PUNCH_1" "[import].[PUNCH]" "OPTIMA"
+  call bcp_queryout.bat "PUNCH_2" "SELECT T1.[UNIQUE_IDENT], T1.[ACTIVITY_CODE], T1.[PROFILE_CODE], T1.[HANDLER], T1.[FUNCTION_CODE], T1.[PROGRAM], T1.[TRANSACT_DATE_LONG], T1.[START_PUNCH_FUNCTION], T1.[START_PUNCH_PROGRAM], T1.[END_PUNCH_FUNCTION], T1.[END_PUNCH_PROGRAM], T1.[DONE_FOR_DEPARTMENT], T1.[DONE_FOR_WORK_LEADER], T1.[ENDED_PUNCH], T1.[ORDER_NUMBER], T1.[LINE_NUMBER], T1.[START_DATE_TIME], T1.[END_DATE_TIME], T1.[TMCS_IDLE_PUNCH], T1.[DURATION_INT], T1.[USED_TIME_INT], T1.[WAGE_EXTRACTED], T1.[PUNCH_REMARK_CODE], T1.[REMARK_ACCEPTED], T1.[PUNCH_PERIOD_START_ID], T1.[CONV_FLAG], T1.[timestamp], T1.[ORIGINAL_ACTIVITY_CD], T1.[ORIGINAL_ORDER_NR], '2' as [Client_DB] FROM [deop02].[dbo].[PUNCH] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "PUNCH_2" "[import].[PUNCH]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[PUNCH]"
+
+  call sql_timestamp.bat "PUNCH_1" "[OPTIMA].[import].[PUNCH]" "1"
+  call bcp_queryout.bat "PUNCH_1" "SELECT T1.[UNIQUE_IDENT], T1.[ACTIVITY_CODE], T1.[PROFILE_CODE], T1.[HANDLER], T1.[FUNCTION_CODE], T1.[PROGRAM], T1.[TRANSACT_DATE_LONG], T1.[START_PUNCH_FUNCTION], T1.[START_PUNCH_PROGRAM], T1.[END_PUNCH_FUNCTION], T1.[END_PUNCH_PROGRAM], T1.[DONE_FOR_DEPARTMENT], T1.[DONE_FOR_WORK_LEADER], T1.[ENDED_PUNCH], T1.[ORDER_NUMBER], T1.[LINE_NUMBER], T1.[START_DATE_TIME], T1.[END_DATE_TIME], T1.[TMCS_IDLE_PUNCH], T1.[DURATION_INT], T1.[USED_TIME_INT], T1.[WAGE_EXTRACTED], T1.[PUNCH_REMARK_CODE], T1.[REMARK_ACCEPTED], T1.[PUNCH_PERIOD_START_ID], T1.[CONV_FLAG], T1.[timestamp], T1.[ORIGINAL_ACTIVITY_CD], T1.[ORIGINAL_ORDER_NR], '1' as [Client_DB] FROM [deop01].[dbo].[PUNCH] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "PUNCH_1" "[temp].[PUNCH]" "OPTIMAX"
+
+  call sql_timestamp.bat "PUNCH_2" "[OPTIMA].[import].[PUNCH]" "2"
+  call bcp_queryout.bat "PUNCH_2" "SELECT T1.[UNIQUE_IDENT], T1.[ACTIVITY_CODE], T1.[PROFILE_CODE], T1.[HANDLER], T1.[FUNCTION_CODE], T1.[PROGRAM], T1.[TRANSACT_DATE_LONG], T1.[START_PUNCH_FUNCTION], T1.[START_PUNCH_PROGRAM], T1.[END_PUNCH_FUNCTION], T1.[END_PUNCH_PROGRAM], T1.[DONE_FOR_DEPARTMENT], T1.[DONE_FOR_WORK_LEADER], T1.[ENDED_PUNCH], T1.[ORDER_NUMBER], T1.[LINE_NUMBER], T1.[START_DATE_TIME], T1.[END_DATE_TIME], T1.[TMCS_IDLE_PUNCH], T1.[DURATION_INT], T1.[USED_TIME_INT], T1.[WAGE_EXTRACTED], T1.[PUNCH_REMARK_CODE], T1.[REMARK_ACCEPTED], T1.[PUNCH_PERIOD_START_ID], T1.[CONV_FLAG], T1.[timestamp], T1.[ORIGINAL_ACTIVITY_CD], T1.[ORIGINAL_ORDER_NR], '2' as [Client_DB] FROM [deop02].[dbo].[PUNCH] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "PUNCH_2" "[temp].[PUNCH]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[PUNCH] T1 INNER JOIN [OPTIMAX].[temp].[PUNCH] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[UNIQUE_IDENT] = T2.[UNIQUE_IDENT]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[PUNCH] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[PUNCH] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\PUNCH_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\PUNCH_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/PURCH_DISCOUNTS.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==PURCH_DISCOUNTS==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\PURCH_DISCOUNTS*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[PURCH_DISCOUNTS]"
+  call bcp_queryout.bat "PURCH_DISCOUNTS_1" "SELECT T1.[DISCOUNT_CD], T1.[DISCOUNT_NUMBER], T1.[CHASSIS_NO_MODIF], T1.[LINE_NO], T1.[STATE_CODE], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[VEHICLE_NUMBER], T1.[DATE], T1.[AMOUNT], T1.[FRAMEWORK_AGREE], T1.[STATUS_X], T1.[VOUCHER_NUMBER_X], T1.[BATCH_NUMBER], T1.[DEALER_6], T1.[AOS_DEALER], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[PURCH_DISCOUNTS] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "PURCH_DISCOUNTS_1" "[import].[PURCH_DISCOUNTS]" "OPTIMA"
+  call bcp_queryout.bat "PURCH_DISCOUNTS_2" "SELECT T1.[DISCOUNT_CD], T1.[DISCOUNT_NUMBER], T1.[CHASSIS_NO_MODIF], T1.[LINE_NO], T1.[STATE_CODE], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[VEHICLE_NUMBER], T1.[DATE], T1.[AMOUNT], T1.[FRAMEWORK_AGREE], T1.[STATUS_X], T1.[VOUCHER_NUMBER_X], T1.[BATCH_NUMBER], T1.[DEALER_6], T1.[AOS_DEALER], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[PURCH_DISCOUNTS] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "PURCH_DISCOUNTS_2" "[import].[PURCH_DISCOUNTS]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[PURCH_DISCOUNTS]"
+
+  call sql_timestamp.bat "PURCH_DISCOUNTS_1" "[OPTIMA].[import].[PURCH_DISCOUNTS]" "1"
+  call bcp_queryout.bat "PURCH_DISCOUNTS_1" "SELECT T1.[DISCOUNT_CD], T1.[DISCOUNT_NUMBER], T1.[CHASSIS_NO_MODIF], T1.[LINE_NO], T1.[STATE_CODE], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[VEHICLE_NUMBER], T1.[DATE], T1.[AMOUNT], T1.[FRAMEWORK_AGREE], T1.[STATUS_X], T1.[VOUCHER_NUMBER_X], T1.[BATCH_NUMBER], T1.[DEALER_6], T1.[AOS_DEALER], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[PURCH_DISCOUNTS] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "PURCH_DISCOUNTS_1" "[temp].[PURCH_DISCOUNTS]" "OPTIMAX"
+
+  call sql_timestamp.bat "PURCH_DISCOUNTS_2" "[OPTIMA].[import].[PURCH_DISCOUNTS]" "2"
+  call bcp_queryout.bat "PURCH_DISCOUNTS_2" "SELECT T1.[DISCOUNT_CD], T1.[DISCOUNT_NUMBER], T1.[CHASSIS_NO_MODIF], T1.[LINE_NO], T1.[STATE_CODE], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[VEHICLE_NUMBER], T1.[DATE], T1.[AMOUNT], T1.[FRAMEWORK_AGREE], T1.[STATUS_X], T1.[VOUCHER_NUMBER_X], T1.[BATCH_NUMBER], T1.[DEALER_6], T1.[AOS_DEALER], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[PURCH_DISCOUNTS] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "PURCH_DISCOUNTS_2" "[temp].[PURCH_DISCOUNTS]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[PURCH_DISCOUNTS] T1 INNER JOIN [OPTIMAX].[temp].[PURCH_DISCOUNTS] T2 ON T1.[CHASSIS_NO_MODIF] = T2.[CHASSIS_NO_MODIF] AND T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[DISCOUNT_CD] = T2.[DISCOUNT_CD] AND T1.[DISCOUNT_NUMBER] = T2.[DISCOUNT_NUMBER]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[PURCH_DISCOUNTS] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[PURCH_DISCOUNTS] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\PURCH_DISCOUNTS_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\PURCH_DISCOUNTS_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/PURCH_DISC_TYPES.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==PURCH_DISC_TYPES==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\PURCH_DISC_TYPES*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[PURCH_DISC_TYPES]"
+  call bcp_queryout.bat "PURCH_DISC_TYPES_1" "SELECT T1.[DISCOUNT_CD], T1.[DISCOUNT_NUMBER], T1.[FACTORY_MODEL_CODE], T1.[OPTIONS_1], T1.[OPTIONS_2], T1.[OPTIONS_3], T1.[OPTIONS_4], T1.[OPTIONS_5], T1.[STATE_CODE], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[DISCOUNT_TEXT], T1.[DISCOUNT_PERCENT], T1.[DISCOUNT_AMOUNT_X], T1.[PERCENT_CALC_BASIS], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[PURCH_DISC_TYPES] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "PURCH_DISC_TYPES_1" "[import].[PURCH_DISC_TYPES]" "OPTIMA"
+  call bcp_queryout.bat "PURCH_DISC_TYPES_2" "SELECT T1.[DISCOUNT_CD], T1.[DISCOUNT_NUMBER], T1.[FACTORY_MODEL_CODE], T1.[OPTIONS_1], T1.[OPTIONS_2], T1.[OPTIONS_3], T1.[OPTIONS_4], T1.[OPTIONS_5], T1.[STATE_CODE], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[DISCOUNT_TEXT], T1.[DISCOUNT_PERCENT], T1.[DISCOUNT_AMOUNT_X], T1.[PERCENT_CALC_BASIS], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[PURCH_DISC_TYPES] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "PURCH_DISC_TYPES_2" "[import].[PURCH_DISC_TYPES]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[PURCH_DISC_TYPES]"
+
+  call sql_timestamp.bat "PURCH_DISC_TYPES_1" "[OPTIMA].[import].[PURCH_DISC_TYPES]" "1"
+  call bcp_queryout.bat "PURCH_DISC_TYPES_1" "SELECT T1.[DISCOUNT_CD], T1.[DISCOUNT_NUMBER], T1.[FACTORY_MODEL_CODE], T1.[OPTIONS_1], T1.[OPTIONS_2], T1.[OPTIONS_3], T1.[OPTIONS_4], T1.[OPTIONS_5], T1.[STATE_CODE], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[DISCOUNT_TEXT], T1.[DISCOUNT_PERCENT], T1.[DISCOUNT_AMOUNT_X], T1.[PERCENT_CALC_BASIS], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[PURCH_DISC_TYPES] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "PURCH_DISC_TYPES_1" "[temp].[PURCH_DISC_TYPES]" "OPTIMAX"
+
+  call sql_timestamp.bat "PURCH_DISC_TYPES_2" "[OPTIMA].[import].[PURCH_DISC_TYPES]" "2"
+  call bcp_queryout.bat "PURCH_DISC_TYPES_2" "SELECT T1.[DISCOUNT_CD], T1.[DISCOUNT_NUMBER], T1.[FACTORY_MODEL_CODE], T1.[OPTIONS_1], T1.[OPTIONS_2], T1.[OPTIONS_3], T1.[OPTIONS_4], T1.[OPTIONS_5], T1.[STATE_CODE], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[DISCOUNT_TEXT], T1.[DISCOUNT_PERCENT], T1.[DISCOUNT_AMOUNT_X], T1.[PERCENT_CALC_BASIS], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[PURCH_DISC_TYPES] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "PURCH_DISC_TYPES_2" "[temp].[PURCH_DISC_TYPES]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[PURCH_DISC_TYPES] T1 INNER JOIN [OPTIMAX].[temp].[PURCH_DISC_TYPES] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[DISCOUNT_CD] = T2.[DISCOUNT_CD] AND T1.[DISCOUNT_NUMBER] = T2.[DISCOUNT_NUMBER] AND T1.[FACTORY_MODEL_CODE] = T2.[FACTORY_MODEL_CODE] AND T1.[OPTIONS_1] = T2.[OPTIONS_1] AND T1.[OPTIONS_2] = T2.[OPTIONS_2] AND T1.[OPTIONS_3] = T2.[OPTIONS_3] AND T1.[OPTIONS_4] = T2.[OPTIONS_4] AND T1.[OPTIONS_5] = T2.[OPTIONS_5]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[PURCH_DISC_TYPES] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[PURCH_DISC_TYPES] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\PURCH_DISC_TYPES_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\PURCH_DISC_TYPES_2.csv"

Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 9 - 0
System/OPTIMA/SQL/batch/SERVICE_2000_FILE.bat


+ 32 - 0
System/OPTIMA/SQL/batch/SITE.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==SITE==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\SITE*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[SITE]"
+  call bcp_queryout.bat "SITE_1" "SELECT T1.[SITE_ID], T1.[DESCRIPTION], T1.[HANDLER], T1.[TRANSACT_DATE], T1.[BM_CODE], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[SITE] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "SITE_1" "[import].[SITE]" "OPTIMA"
+  call bcp_queryout.bat "SITE_2" "SELECT T1.[SITE_ID], T1.[DESCRIPTION], T1.[HANDLER], T1.[TRANSACT_DATE], T1.[BM_CODE], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[SITE] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "SITE_2" "[import].[SITE]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[SITE]"
+
+  call sql_timestamp.bat "SITE_1" "[OPTIMA].[import].[SITE]" "1"
+  call bcp_queryout.bat "SITE_1" "SELECT T1.[SITE_ID], T1.[DESCRIPTION], T1.[HANDLER], T1.[TRANSACT_DATE], T1.[BM_CODE], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[SITE] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "SITE_1" "[temp].[SITE]" "OPTIMAX"
+
+  call sql_timestamp.bat "SITE_2" "[OPTIMA].[import].[SITE]" "2"
+  call bcp_queryout.bat "SITE_2" "SELECT T1.[SITE_ID], T1.[DESCRIPTION], T1.[HANDLER], T1.[TRANSACT_DATE], T1.[BM_CODE], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[SITE] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "SITE_2" "[temp].[SITE]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[SITE] T1 INNER JOIN [OPTIMAX].[temp].[SITE] T2 ON T1.[Client_DB] = T2.[Client_DB] AND T1.[SITE_ID] = T2.[SITE_ID]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[SITE] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[SITE] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\SITE_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\SITE_2.csv"

Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 10 - 0
System/OPTIMA/SQL/batch/SUPPLIER.bat


+ 32 - 0
System/OPTIMA/SQL/batch/SUPPLIER_TRANSACT.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==SUPPLIER_TRANSACT==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\SUPPLIER_TRANSACT*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[SUPPLIER_TRANSACT]"
+  call bcp_queryout.bat "SUPPLIER_TRANSACT_1" "SELECT T1.[SUPPLIER_CODE], T1.[VOUCHER_NO], T1.[LINE_NO_SU], T1.[DOCUMENT_NO_SU], T1.[TRANSACT_STATUS_SU], T1.[DUE_DATE], T1.[BOOKKEEP_DATE], T1.[STATE_CODE_SU], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[CREATION_DATE], T1.[CREATION_TIME], T1.[TRANSACT_CODE_SU], T1.[MODUL], T1.[BATCH_NUMBER], T1.[JOURNAL_NO], T1.[DOCUMENT_DATE], T1.[DISCOUNT_DATE], T1.[PMT_TERM], T1.[SUM_C_U], T1.[TAX_C_U], T1.[CASH_DISCOUNT_C_U], T1.[PAID_C_U], T1.[COMMENT_SU], T1.[SETOFF_ACCT], T1.[COLLECT_ACCT], T1.[PMT_WAY], T1.[APPROVED], T1.[PMT_PROPOSAL], T1.[ACCEPT_PERSON], T1.[ACCEPT_DATE], T1.[ARCHIVE_NO], T1.[REMARK_1], T1.[REMARK_2], T1.[REMARK_3], T1.[REFERENCE_TYPE_SU], T1.[REFERENCE_SU], T1.[EEC_TAX_C_U], T1.[EEC_INVOICE], T1.[CURRENCY_CODE4], T1.[ORG_EXCHANGE_RATE], T1.[CURRENCY_SUM_C_U], T1.[CURRENCY_PAID_C_U], T1.[BOOK_NO], T1.[CHECK_NUMBER], T1.[PRELIM_PURCH_ACCT], T1.[FINAL_BATCH_NO], T1.[INT_VOUCHER_NO], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[PROCESS_DATE], '1' as [Client_DB] FROM [deop01].[dbo].[SUPPLIER_TRANSACT] T1  WHERE T1.[BOOKKEEP_DATE] >= '2018-01-01T00:00:00' ORDER BY T1.[timestamp] "
+  call bcp_in.bat "SUPPLIER_TRANSACT_1" "[import].[SUPPLIER_TRANSACT]" "OPTIMA"
+  call bcp_queryout.bat "SUPPLIER_TRANSACT_2" "SELECT T1.[SUPPLIER_CODE], T1.[VOUCHER_NO], T1.[LINE_NO_SU], T1.[DOCUMENT_NO_SU], T1.[TRANSACT_STATUS_SU], T1.[DUE_DATE], T1.[BOOKKEEP_DATE], T1.[STATE_CODE_SU], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[CREATION_DATE], T1.[CREATION_TIME], T1.[TRANSACT_CODE_SU], T1.[MODUL], T1.[BATCH_NUMBER], T1.[JOURNAL_NO], T1.[DOCUMENT_DATE], T1.[DISCOUNT_DATE], T1.[PMT_TERM], T1.[SUM_C_U], T1.[TAX_C_U], T1.[CASH_DISCOUNT_C_U], T1.[PAID_C_U], T1.[COMMENT_SU], T1.[SETOFF_ACCT], T1.[COLLECT_ACCT], T1.[PMT_WAY], T1.[APPROVED], T1.[PMT_PROPOSAL], T1.[ACCEPT_PERSON], T1.[ACCEPT_DATE], T1.[ARCHIVE_NO], T1.[REMARK_1], T1.[REMARK_2], T1.[REMARK_3], T1.[REFERENCE_TYPE_SU], T1.[REFERENCE_SU], T1.[EEC_TAX_C_U], T1.[EEC_INVOICE], T1.[CURRENCY_CODE4], T1.[ORG_EXCHANGE_RATE], T1.[CURRENCY_SUM_C_U], T1.[CURRENCY_PAID_C_U], T1.[BOOK_NO], T1.[CHECK_NUMBER], T1.[PRELIM_PURCH_ACCT], T1.[FINAL_BATCH_NO], T1.[INT_VOUCHER_NO], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[PROCESS_DATE], '2' as [Client_DB] FROM [deop02].[dbo].[SUPPLIER_TRANSACT] T1  WHERE T1.[BOOKKEEP_DATE] >= '2018-01-01T00:00:00' ORDER BY T1.[timestamp] "
+  call bcp_in.bat "SUPPLIER_TRANSACT_2" "[import].[SUPPLIER_TRANSACT]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[SUPPLIER_TRANSACT]"
+
+  call sql_timestamp.bat "SUPPLIER_TRANSACT_1" "[OPTIMA].[import].[SUPPLIER_TRANSACT]" "1"
+  call bcp_queryout.bat "SUPPLIER_TRANSACT_1" "SELECT T1.[SUPPLIER_CODE], T1.[VOUCHER_NO], T1.[LINE_NO_SU], T1.[DOCUMENT_NO_SU], T1.[TRANSACT_STATUS_SU], T1.[DUE_DATE], T1.[BOOKKEEP_DATE], T1.[STATE_CODE_SU], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[CREATION_DATE], T1.[CREATION_TIME], T1.[TRANSACT_CODE_SU], T1.[MODUL], T1.[BATCH_NUMBER], T1.[JOURNAL_NO], T1.[DOCUMENT_DATE], T1.[DISCOUNT_DATE], T1.[PMT_TERM], T1.[SUM_C_U], T1.[TAX_C_U], T1.[CASH_DISCOUNT_C_U], T1.[PAID_C_U], T1.[COMMENT_SU], T1.[SETOFF_ACCT], T1.[COLLECT_ACCT], T1.[PMT_WAY], T1.[APPROVED], T1.[PMT_PROPOSAL], T1.[ACCEPT_PERSON], T1.[ACCEPT_DATE], T1.[ARCHIVE_NO], T1.[REMARK_1], T1.[REMARK_2], T1.[REMARK_3], T1.[REFERENCE_TYPE_SU], T1.[REFERENCE_SU], T1.[EEC_TAX_C_U], T1.[EEC_INVOICE], T1.[CURRENCY_CODE4], T1.[ORG_EXCHANGE_RATE], T1.[CURRENCY_SUM_C_U], T1.[CURRENCY_PAID_C_U], T1.[BOOK_NO], T1.[CHECK_NUMBER], T1.[PRELIM_PURCH_ACCT], T1.[FINAL_BATCH_NO], T1.[INT_VOUCHER_NO], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[PROCESS_DATE], '1' as [Client_DB] FROM [deop01].[dbo].[SUPPLIER_TRANSACT] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND T1.[BOOKKEEP_DATE] >= '2018-01-01T00:00:00' ORDER BY T1.[timestamp] "
+  call bcp_in.bat "SUPPLIER_TRANSACT_1" "[temp].[SUPPLIER_TRANSACT]" "OPTIMAX"
+
+  call sql_timestamp.bat "SUPPLIER_TRANSACT_2" "[OPTIMA].[import].[SUPPLIER_TRANSACT]" "2"
+  call bcp_queryout.bat "SUPPLIER_TRANSACT_2" "SELECT T1.[SUPPLIER_CODE], T1.[VOUCHER_NO], T1.[LINE_NO_SU], T1.[DOCUMENT_NO_SU], T1.[TRANSACT_STATUS_SU], T1.[DUE_DATE], T1.[BOOKKEEP_DATE], T1.[STATE_CODE_SU], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[CREATION_DATE], T1.[CREATION_TIME], T1.[TRANSACT_CODE_SU], T1.[MODUL], T1.[BATCH_NUMBER], T1.[JOURNAL_NO], T1.[DOCUMENT_DATE], T1.[DISCOUNT_DATE], T1.[PMT_TERM], T1.[SUM_C_U], T1.[TAX_C_U], T1.[CASH_DISCOUNT_C_U], T1.[PAID_C_U], T1.[COMMENT_SU], T1.[SETOFF_ACCT], T1.[COLLECT_ACCT], T1.[PMT_WAY], T1.[APPROVED], T1.[PMT_PROPOSAL], T1.[ACCEPT_PERSON], T1.[ACCEPT_DATE], T1.[ARCHIVE_NO], T1.[REMARK_1], T1.[REMARK_2], T1.[REMARK_3], T1.[REFERENCE_TYPE_SU], T1.[REFERENCE_SU], T1.[EEC_TAX_C_U], T1.[EEC_INVOICE], T1.[CURRENCY_CODE4], T1.[ORG_EXCHANGE_RATE], T1.[CURRENCY_SUM_C_U], T1.[CURRENCY_PAID_C_U], T1.[BOOK_NO], T1.[CHECK_NUMBER], T1.[PRELIM_PURCH_ACCT], T1.[FINAL_BATCH_NO], T1.[INT_VOUCHER_NO], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[PROCESS_DATE], '2' as [Client_DB] FROM [deop02].[dbo].[SUPPLIER_TRANSACT] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND T1.[BOOKKEEP_DATE] >= '2018-01-01T00:00:00' ORDER BY T1.[timestamp] "
+  call bcp_in.bat "SUPPLIER_TRANSACT_2" "[temp].[SUPPLIER_TRANSACT]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[SUPPLIER_TRANSACT] T1 INNER JOIN [OPTIMAX].[temp].[SUPPLIER_TRANSACT] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[UNIQUE_IDENT] = T2.[UNIQUE_IDENT]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[SUPPLIER_TRANSACT] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[SUPPLIER_TRANSACT] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\SUPPLIER_TRANSACT_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\SUPPLIER_TRANSACT_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/TIME_CONTROL_END.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==TIME_CONTROL_END==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\TIME_CONTROL_END*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[TIME_CONTROL_END]"
+  call bcp_queryout.bat "TIME_CONTROL_END_1" "SELECT T1.[PERSON_GROUP], T1.[PERSON_NUMBER], T1.[WORK_TRANS_DATE], T1.[WORK_START_TIME], T1.[ORDER_NUMBER], T1.[LINE_NUMBER], T1.[WORK_STATE_CODE], T1.[HANDLER], T1.[WORK_ACT_CODE], T1.[WORK_ACT_TEXT], T1.[WORK_END_DATE], T1.[WORK_END_TIME], T1.[REPAIR_CODE], T1.[REPAIR_NAME], T1.[WORK_ORDER_TIME], T1.[WORK_USED_TIME], T1.[WORK_INVOICED_TIME], T1.[WORK_ESTIM_TIME], T1.[WORK_PRINT_INVOICE], T1.[WORK_SALESPRICE], T1.[DAYTIME_START_1], T1.[DAYTIME_END_1], T1.[DAYTIME_START_2], T1.[DAYTIME_END_2], T1.[DAYTIME_START_3], T1.[DAYTIME_END_3], T1.[DAYTIME_START_4], T1.[DAYTIME_END_4], T1.[DAYTIME_START_5], T1.[DAYTIME_END_5], T1.[EXTRACTED], T1.[REDUCE_TIME], T1.[PROGRAM], T1.[CLOCK_IN_PROGRAM], T1.[FUNCTION_CODE], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[TIME_CONTROL_END] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "TIME_CONTROL_END_1" "[import].[TIME_CONTROL_END]" "OPTIMA"
+  call bcp_queryout.bat "TIME_CONTROL_END_2" "SELECT T1.[PERSON_GROUP], T1.[PERSON_NUMBER], T1.[WORK_TRANS_DATE], T1.[WORK_START_TIME], T1.[ORDER_NUMBER], T1.[LINE_NUMBER], T1.[WORK_STATE_CODE], T1.[HANDLER], T1.[WORK_ACT_CODE], T1.[WORK_ACT_TEXT], T1.[WORK_END_DATE], T1.[WORK_END_TIME], T1.[REPAIR_CODE], T1.[REPAIR_NAME], T1.[WORK_ORDER_TIME], T1.[WORK_USED_TIME], T1.[WORK_INVOICED_TIME], T1.[WORK_ESTIM_TIME], T1.[WORK_PRINT_INVOICE], T1.[WORK_SALESPRICE], T1.[DAYTIME_START_1], T1.[DAYTIME_END_1], T1.[DAYTIME_START_2], T1.[DAYTIME_END_2], T1.[DAYTIME_START_3], T1.[DAYTIME_END_3], T1.[DAYTIME_START_4], T1.[DAYTIME_END_4], T1.[DAYTIME_START_5], T1.[DAYTIME_END_5], T1.[EXTRACTED], T1.[REDUCE_TIME], T1.[PROGRAM], T1.[CLOCK_IN_PROGRAM], T1.[FUNCTION_CODE], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[TIME_CONTROL_END] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "TIME_CONTROL_END_2" "[import].[TIME_CONTROL_END]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[TIME_CONTROL_END]"
+
+  call sql_timestamp.bat "TIME_CONTROL_END_1" "[OPTIMA].[import].[TIME_CONTROL_END]" "1"
+  call bcp_queryout.bat "TIME_CONTROL_END_1" "SELECT T1.[PERSON_GROUP], T1.[PERSON_NUMBER], T1.[WORK_TRANS_DATE], T1.[WORK_START_TIME], T1.[ORDER_NUMBER], T1.[LINE_NUMBER], T1.[WORK_STATE_CODE], T1.[HANDLER], T1.[WORK_ACT_CODE], T1.[WORK_ACT_TEXT], T1.[WORK_END_DATE], T1.[WORK_END_TIME], T1.[REPAIR_CODE], T1.[REPAIR_NAME], T1.[WORK_ORDER_TIME], T1.[WORK_USED_TIME], T1.[WORK_INVOICED_TIME], T1.[WORK_ESTIM_TIME], T1.[WORK_PRINT_INVOICE], T1.[WORK_SALESPRICE], T1.[DAYTIME_START_1], T1.[DAYTIME_END_1], T1.[DAYTIME_START_2], T1.[DAYTIME_END_2], T1.[DAYTIME_START_3], T1.[DAYTIME_END_3], T1.[DAYTIME_START_4], T1.[DAYTIME_END_4], T1.[DAYTIME_START_5], T1.[DAYTIME_END_5], T1.[EXTRACTED], T1.[REDUCE_TIME], T1.[PROGRAM], T1.[CLOCK_IN_PROGRAM], T1.[FUNCTION_CODE], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[TIME_CONTROL_END] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "TIME_CONTROL_END_1" "[temp].[TIME_CONTROL_END]" "OPTIMAX"
+
+  call sql_timestamp.bat "TIME_CONTROL_END_2" "[OPTIMA].[import].[TIME_CONTROL_END]" "2"
+  call bcp_queryout.bat "TIME_CONTROL_END_2" "SELECT T1.[PERSON_GROUP], T1.[PERSON_NUMBER], T1.[WORK_TRANS_DATE], T1.[WORK_START_TIME], T1.[ORDER_NUMBER], T1.[LINE_NUMBER], T1.[WORK_STATE_CODE], T1.[HANDLER], T1.[WORK_ACT_CODE], T1.[WORK_ACT_TEXT], T1.[WORK_END_DATE], T1.[WORK_END_TIME], T1.[REPAIR_CODE], T1.[REPAIR_NAME], T1.[WORK_ORDER_TIME], T1.[WORK_USED_TIME], T1.[WORK_INVOICED_TIME], T1.[WORK_ESTIM_TIME], T1.[WORK_PRINT_INVOICE], T1.[WORK_SALESPRICE], T1.[DAYTIME_START_1], T1.[DAYTIME_END_1], T1.[DAYTIME_START_2], T1.[DAYTIME_END_2], T1.[DAYTIME_START_3], T1.[DAYTIME_END_3], T1.[DAYTIME_START_4], T1.[DAYTIME_END_4], T1.[DAYTIME_START_5], T1.[DAYTIME_END_5], T1.[EXTRACTED], T1.[REDUCE_TIME], T1.[PROGRAM], T1.[CLOCK_IN_PROGRAM], T1.[FUNCTION_CODE], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[TIME_CONTROL_END] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "TIME_CONTROL_END_2" "[temp].[TIME_CONTROL_END]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[TIME_CONTROL_END] T1 INNER JOIN [OPTIMAX].[temp].[TIME_CONTROL_END] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[LINE_NUMBER] = T2.[LINE_NUMBER] AND T1.[ORDER_NUMBER] = T2.[ORDER_NUMBER] AND T1.[UNIQUE_IDENT] = T2.[UNIQUE_IDENT]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[TIME_CONTROL_END] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[TIME_CONTROL_END] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\TIME_CONTROL_END_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\TIME_CONTROL_END_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/TIME_CONTROL_OPEN.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==TIME_CONTROL_OPEN==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\TIME_CONTROL_OPEN*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[TIME_CONTROL_OPEN]"
+  call bcp_queryout.bat "TIME_CONTROL_OPEN_1" "SELECT T1.[PERSON_GROUP], T1.[PERSON_NUMBER], T1.[WORK_TRANS_DATE], T1.[WORK_START_TIME], T1.[ORDER_NUMBER], T1.[LINE_NUMBER], T1.[WORK_STATE_CODE], T1.[HANDLER], T1.[WORK_ACT_CODE], T1.[WORK_ACT_TEXT], T1.[WORK_END_DATE], T1.[WORK_END_TIME], T1.[REPAIR_CODE], T1.[REPAIR_NAME], T1.[WORK_ORDER_TIME], T1.[WORK_USED_TIME], T1.[WORK_INVOICED_TIME], T1.[WORK_ESTIM_TIME], T1.[WORK_PRINT_INVOICE], T1.[WORK_SALESPRICE], T1.[DAYTIME_START_1], T1.[DAYTIME_END_1], T1.[DAYTIME_START_2], T1.[DAYTIME_END_2], T1.[DAYTIME_START_3], T1.[DAYTIME_END_3], T1.[DAYTIME_START_4], T1.[DAYTIME_END_4], T1.[DAYTIME_START_5], T1.[DAYTIME_END_5], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[TIME_CONTROL_OPEN] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "TIME_CONTROL_OPEN_1" "[import].[TIME_CONTROL_OPEN]" "OPTIMA"
+  call bcp_queryout.bat "TIME_CONTROL_OPEN_2" "SELECT T1.[PERSON_GROUP], T1.[PERSON_NUMBER], T1.[WORK_TRANS_DATE], T1.[WORK_START_TIME], T1.[ORDER_NUMBER], T1.[LINE_NUMBER], T1.[WORK_STATE_CODE], T1.[HANDLER], T1.[WORK_ACT_CODE], T1.[WORK_ACT_TEXT], T1.[WORK_END_DATE], T1.[WORK_END_TIME], T1.[REPAIR_CODE], T1.[REPAIR_NAME], T1.[WORK_ORDER_TIME], T1.[WORK_USED_TIME], T1.[WORK_INVOICED_TIME], T1.[WORK_ESTIM_TIME], T1.[WORK_PRINT_INVOICE], T1.[WORK_SALESPRICE], T1.[DAYTIME_START_1], T1.[DAYTIME_END_1], T1.[DAYTIME_START_2], T1.[DAYTIME_END_2], T1.[DAYTIME_START_3], T1.[DAYTIME_END_3], T1.[DAYTIME_START_4], T1.[DAYTIME_END_4], T1.[DAYTIME_START_5], T1.[DAYTIME_END_5], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[TIME_CONTROL_OPEN] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "TIME_CONTROL_OPEN_2" "[import].[TIME_CONTROL_OPEN]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[TIME_CONTROL_OPEN]"
+
+  call sql_timestamp.bat "TIME_CONTROL_OPEN_1" "[OPTIMA].[import].[TIME_CONTROL_OPEN]" "1"
+  call bcp_queryout.bat "TIME_CONTROL_OPEN_1" "SELECT T1.[PERSON_GROUP], T1.[PERSON_NUMBER], T1.[WORK_TRANS_DATE], T1.[WORK_START_TIME], T1.[ORDER_NUMBER], T1.[LINE_NUMBER], T1.[WORK_STATE_CODE], T1.[HANDLER], T1.[WORK_ACT_CODE], T1.[WORK_ACT_TEXT], T1.[WORK_END_DATE], T1.[WORK_END_TIME], T1.[REPAIR_CODE], T1.[REPAIR_NAME], T1.[WORK_ORDER_TIME], T1.[WORK_USED_TIME], T1.[WORK_INVOICED_TIME], T1.[WORK_ESTIM_TIME], T1.[WORK_PRINT_INVOICE], T1.[WORK_SALESPRICE], T1.[DAYTIME_START_1], T1.[DAYTIME_END_1], T1.[DAYTIME_START_2], T1.[DAYTIME_END_2], T1.[DAYTIME_START_3], T1.[DAYTIME_END_3], T1.[DAYTIME_START_4], T1.[DAYTIME_END_4], T1.[DAYTIME_START_5], T1.[DAYTIME_END_5], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[TIME_CONTROL_OPEN] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "TIME_CONTROL_OPEN_1" "[temp].[TIME_CONTROL_OPEN]" "OPTIMAX"
+
+  call sql_timestamp.bat "TIME_CONTROL_OPEN_2" "[OPTIMA].[import].[TIME_CONTROL_OPEN]" "2"
+  call bcp_queryout.bat "TIME_CONTROL_OPEN_2" "SELECT T1.[PERSON_GROUP], T1.[PERSON_NUMBER], T1.[WORK_TRANS_DATE], T1.[WORK_START_TIME], T1.[ORDER_NUMBER], T1.[LINE_NUMBER], T1.[WORK_STATE_CODE], T1.[HANDLER], T1.[WORK_ACT_CODE], T1.[WORK_ACT_TEXT], T1.[WORK_END_DATE], T1.[WORK_END_TIME], T1.[REPAIR_CODE], T1.[REPAIR_NAME], T1.[WORK_ORDER_TIME], T1.[WORK_USED_TIME], T1.[WORK_INVOICED_TIME], T1.[WORK_ESTIM_TIME], T1.[WORK_PRINT_INVOICE], T1.[WORK_SALESPRICE], T1.[DAYTIME_START_1], T1.[DAYTIME_END_1], T1.[DAYTIME_START_2], T1.[DAYTIME_END_2], T1.[DAYTIME_START_3], T1.[DAYTIME_END_3], T1.[DAYTIME_START_4], T1.[DAYTIME_END_4], T1.[DAYTIME_START_5], T1.[DAYTIME_END_5], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[TIME_CONTROL_OPEN] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "TIME_CONTROL_OPEN_2" "[temp].[TIME_CONTROL_OPEN]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[TIME_CONTROL_OPEN] T1 INNER JOIN [OPTIMAX].[temp].[TIME_CONTROL_OPEN] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[LINE_NUMBER] = T2.[LINE_NUMBER] AND T1.[ORDER_NUMBER] = T2.[ORDER_NUMBER] AND T1.[UNIQUE_IDENT] = T2.[UNIQUE_IDENT]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[TIME_CONTROL_OPEN] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[TIME_CONTROL_OPEN] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\TIME_CONTROL_OPEN_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\TIME_CONTROL_OPEN_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/TIME_CONTROL_TRANS.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==TIME_CONTROL_TRANS==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\TIME_CONTROL_TRANS*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[TIME_CONTROL_TRANS]"
+  call bcp_queryout.bat "TIME_CONTROL_TRANS_1" "SELECT T1.[PERSON_GROUP], T1.[PERSON_NUMBER], T1.[WORK_TRANS_DATE], T1.[WORK_START_TIME], T1.[WORK_END_TIME], T1.[ORDER_NUMBER], T1.[LINE_NUMBER], T1.[REPAIR_CODE], T1.[WORK_ACT_CODE], T1.[TMCS_TRANS_TYPE], T1.[HANDLER], T1.[FUNCTION_CODE], T1.[PROGRAM], T1.[UNIQUE_IDENT], T1.[timestamp], T1.[CONV_FLAG], T1.[EXTERNAL_SYSTEM], '1' as [Client_DB] FROM [deop01].[dbo].[TIME_CONTROL_TRANS] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "TIME_CONTROL_TRANS_1" "[import].[TIME_CONTROL_TRANS]" "OPTIMA"
+  call bcp_queryout.bat "TIME_CONTROL_TRANS_2" "SELECT T1.[PERSON_GROUP], T1.[PERSON_NUMBER], T1.[WORK_TRANS_DATE], T1.[WORK_START_TIME], T1.[WORK_END_TIME], T1.[ORDER_NUMBER], T1.[LINE_NUMBER], T1.[REPAIR_CODE], T1.[WORK_ACT_CODE], T1.[TMCS_TRANS_TYPE], T1.[HANDLER], T1.[FUNCTION_CODE], T1.[PROGRAM], T1.[UNIQUE_IDENT], T1.[timestamp], T1.[CONV_FLAG], T1.[EXTERNAL_SYSTEM], '2' as [Client_DB] FROM [deop02].[dbo].[TIME_CONTROL_TRANS] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "TIME_CONTROL_TRANS_2" "[import].[TIME_CONTROL_TRANS]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[TIME_CONTROL_TRANS]"
+
+  call sql_timestamp.bat "TIME_CONTROL_TRANS_1" "[OPTIMA].[import].[TIME_CONTROL_TRANS]" "1"
+  call bcp_queryout.bat "TIME_CONTROL_TRANS_1" "SELECT T1.[PERSON_GROUP], T1.[PERSON_NUMBER], T1.[WORK_TRANS_DATE], T1.[WORK_START_TIME], T1.[WORK_END_TIME], T1.[ORDER_NUMBER], T1.[LINE_NUMBER], T1.[REPAIR_CODE], T1.[WORK_ACT_CODE], T1.[TMCS_TRANS_TYPE], T1.[HANDLER], T1.[FUNCTION_CODE], T1.[PROGRAM], T1.[UNIQUE_IDENT], T1.[timestamp], T1.[CONV_FLAG], T1.[EXTERNAL_SYSTEM], '1' as [Client_DB] FROM [deop01].[dbo].[TIME_CONTROL_TRANS] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "TIME_CONTROL_TRANS_1" "[temp].[TIME_CONTROL_TRANS]" "OPTIMAX"
+
+  call sql_timestamp.bat "TIME_CONTROL_TRANS_2" "[OPTIMA].[import].[TIME_CONTROL_TRANS]" "2"
+  call bcp_queryout.bat "TIME_CONTROL_TRANS_2" "SELECT T1.[PERSON_GROUP], T1.[PERSON_NUMBER], T1.[WORK_TRANS_DATE], T1.[WORK_START_TIME], T1.[WORK_END_TIME], T1.[ORDER_NUMBER], T1.[LINE_NUMBER], T1.[REPAIR_CODE], T1.[WORK_ACT_CODE], T1.[TMCS_TRANS_TYPE], T1.[HANDLER], T1.[FUNCTION_CODE], T1.[PROGRAM], T1.[UNIQUE_IDENT], T1.[timestamp], T1.[CONV_FLAG], T1.[EXTERNAL_SYSTEM], '2' as [Client_DB] FROM [deop02].[dbo].[TIME_CONTROL_TRANS] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "TIME_CONTROL_TRANS_2" "[temp].[TIME_CONTROL_TRANS]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[TIME_CONTROL_TRANS] T1 INNER JOIN [OPTIMAX].[temp].[TIME_CONTROL_TRANS] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[UNIQUE_IDENT] = T2.[UNIQUE_IDENT]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[TIME_CONTROL_TRANS] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[TIME_CONTROL_TRANS] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\TIME_CONTROL_TRANS_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\TIME_CONTROL_TRANS_2.csv"

+ 34 - 0
System/OPTIMA/SQL/batch/TRANSACTION_TYPE.bat

@@ -0,0 +1,34 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==TRANSACTION_TYPE==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\TRANSACTION_TYPE*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[TRANSACTION_TYPE]"
+rem Nur in Ziel:   timestamp
+  call bcp_queryout.bat "TRANSACTION_TYPE_1" "SELECT T1.[TRANSACTION_TYPE_ID], T1.[NAME], '' as [timestamp], '1' as [Client_DB] FROM [deop01].[dbo].[TRANSACTION_TYPE] T1  WHERE 1 = 1"
+  call bcp_in.bat "TRANSACTION_TYPE_1" "[import].[TRANSACTION_TYPE]" "OPTIMA"
+rem Nur in Ziel:   timestamp
+  call bcp_queryout.bat "TRANSACTION_TYPE_2" "SELECT T1.[TRANSACTION_TYPE_ID], T1.[NAME], '' as [timestamp], '2' as [Client_DB] FROM [deop02].[dbo].[TRANSACTION_TYPE] T1  WHERE 1 = 1"
+  call bcp_in.bat "TRANSACTION_TYPE_2" "[import].[TRANSACTION_TYPE]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[TRANSACTION_TYPE]"
+
+  call sql_timestamp.bat "TRANSACTION_TYPE_1" "[OPTIMA].[import].[TRANSACTION_TYPE]" "1"
+  call bcp_queryout.bat "TRANSACTION_TYPE_1" "SELECT T1.[TRANSACTION_TYPE_ID], T1.[NAME], '' as [timestamp], '1' as [Client_DB] FROM [deop01].[dbo].[TRANSACTION_TYPE] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1"
+  call bcp_in.bat "TRANSACTION_TYPE_1" "[temp].[TRANSACTION_TYPE]" "OPTIMAX"
+
+  call sql_timestamp.bat "TRANSACTION_TYPE_2" "[OPTIMA].[import].[TRANSACTION_TYPE]" "2"
+  call bcp_queryout.bat "TRANSACTION_TYPE_2" "SELECT T1.[TRANSACTION_TYPE_ID], T1.[NAME], '' as [timestamp], '2' as [Client_DB] FROM [deop02].[dbo].[TRANSACTION_TYPE] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1"
+  call bcp_in.bat "TRANSACTION_TYPE_2" "[temp].[TRANSACTION_TYPE]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[TRANSACTION_TYPE] T1 INNER JOIN [OPTIMAX].[temp].[TRANSACTION_TYPE] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[TRANSACTION_TYPE_ID] = T2.[TRANSACTION_TYPE_ID]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[TRANSACTION_TYPE] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[TRANSACTION_TYPE] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\TRANSACTION_TYPE_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\TRANSACTION_TYPE_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/UNIT_CHANGE_HIST.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==UNIT_CHANGE_HIST==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\UNIT_CHANGE_HIST*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[UNIT_CHANGE_HIST]"
+  call bcp_queryout.bat "UNIT_CHANGE_HIST_1" "SELECT T1.[UNIT_NUMBER], T1.[VAL_DATE], T1.[SEQ_NO], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[BOOK_KEEPING_CODE], T1.[TAX_HANDLING], T1.[VAT_RATE_CODE], T1.[DEPARTMENT], T1.[CLASSIFICATION_DTE], T1.[VEHICLE_TYPE], T1.[MAKE_CD], T1.[MAKE_FAMILY_CD], T1.[MODEL_LINE], T1.[WORKSHOP_MODEL], T1.[FAC_MODEL_CODE], T1.[USED_VEH_DEST_CODE], T1.[PURCH_ORIGIN_CODE], T1.[USE_OF_VEHICLE], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[PURCH_SALESMAN], T1.[SALE_SALESMAN], '1' as [Client_DB] FROM [deop01].[dbo].[UNIT_CHANGE_HIST] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "UNIT_CHANGE_HIST_1" "[import].[UNIT_CHANGE_HIST]" "OPTIMA"
+  call bcp_queryout.bat "UNIT_CHANGE_HIST_2" "SELECT T1.[UNIT_NUMBER], T1.[VAL_DATE], T1.[SEQ_NO], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[BOOK_KEEPING_CODE], T1.[TAX_HANDLING], T1.[VAT_RATE_CODE], T1.[DEPARTMENT], T1.[CLASSIFICATION_DTE], T1.[VEHICLE_TYPE], T1.[MAKE_CD], T1.[MAKE_FAMILY_CD], T1.[MODEL_LINE], T1.[WORKSHOP_MODEL], T1.[FAC_MODEL_CODE], T1.[USED_VEH_DEST_CODE], T1.[PURCH_ORIGIN_CODE], T1.[USE_OF_VEHICLE], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[PURCH_SALESMAN], T1.[SALE_SALESMAN], '2' as [Client_DB] FROM [deop02].[dbo].[UNIT_CHANGE_HIST] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "UNIT_CHANGE_HIST_2" "[import].[UNIT_CHANGE_HIST]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[UNIT_CHANGE_HIST]"
+
+  call sql_timestamp.bat "UNIT_CHANGE_HIST_1" "[OPTIMA].[import].[UNIT_CHANGE_HIST]" "1"
+  call bcp_queryout.bat "UNIT_CHANGE_HIST_1" "SELECT T1.[UNIT_NUMBER], T1.[VAL_DATE], T1.[SEQ_NO], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[BOOK_KEEPING_CODE], T1.[TAX_HANDLING], T1.[VAT_RATE_CODE], T1.[DEPARTMENT], T1.[CLASSIFICATION_DTE], T1.[VEHICLE_TYPE], T1.[MAKE_CD], T1.[MAKE_FAMILY_CD], T1.[MODEL_LINE], T1.[WORKSHOP_MODEL], T1.[FAC_MODEL_CODE], T1.[USED_VEH_DEST_CODE], T1.[PURCH_ORIGIN_CODE], T1.[USE_OF_VEHICLE], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[PURCH_SALESMAN], T1.[SALE_SALESMAN], '1' as [Client_DB] FROM [deop01].[dbo].[UNIT_CHANGE_HIST] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "UNIT_CHANGE_HIST_1" "[temp].[UNIT_CHANGE_HIST]" "OPTIMAX"
+
+  call sql_timestamp.bat "UNIT_CHANGE_HIST_2" "[OPTIMA].[import].[UNIT_CHANGE_HIST]" "2"
+  call bcp_queryout.bat "UNIT_CHANGE_HIST_2" "SELECT T1.[UNIT_NUMBER], T1.[VAL_DATE], T1.[SEQ_NO], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[BOOK_KEEPING_CODE], T1.[TAX_HANDLING], T1.[VAT_RATE_CODE], T1.[DEPARTMENT], T1.[CLASSIFICATION_DTE], T1.[VEHICLE_TYPE], T1.[MAKE_CD], T1.[MAKE_FAMILY_CD], T1.[MODEL_LINE], T1.[WORKSHOP_MODEL], T1.[FAC_MODEL_CODE], T1.[USED_VEH_DEST_CODE], T1.[PURCH_ORIGIN_CODE], T1.[USE_OF_VEHICLE], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[PURCH_SALESMAN], T1.[SALE_SALESMAN], '2' as [Client_DB] FROM [deop02].[dbo].[UNIT_CHANGE_HIST] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "UNIT_CHANGE_HIST_2" "[temp].[UNIT_CHANGE_HIST]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[UNIT_CHANGE_HIST] T1 INNER JOIN [OPTIMAX].[temp].[UNIT_CHANGE_HIST] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[SEQ_NO] = T2.[SEQ_NO] AND T1.[UNIT_NUMBER] = T2.[UNIT_NUMBER] AND T1.[VAL_DATE] = T2.[VAL_DATE]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[UNIT_CHANGE_HIST] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[UNIT_CHANGE_HIST] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\UNIT_CHANGE_HIST_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\UNIT_CHANGE_HIST_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/UNIT_CLASSIFICAT.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==UNIT_CLASSIFICAT==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\UNIT_CLASSIFICAT*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA2].[import].[UNIT_CLASSIFICAT]"
+  call bcp_queryout.bat "UNIT_CLASSIFICAT_1" "SELECT T1.[UNIT_NUMBER], T1.[BATCH_NUMBER_S], T1.[ACCTNG_PERIOD], T1.[LINE_NO], T1.[ACCT_NR], T1.[DEPARTMENT], T1.[BOOK_KEEPING_CODE], T1.[TRANSFER_CODE], T1.[TRANSACTION_DATE], T1.[TRANSACTION_CODE], T1.[TRANSACTION_AMOUNT], T1.[DOCUMENT_NR], T1.[TRANSFER_DIFFTAX], T1.[TRF_TAXBASIS_SALES], T1.[TRF_TAXBASIS_PURCH], T1.[BOOK_NO], T1.[PURCH_INVNO], T1.[ORIGINAL_BATCH_NO], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[UNIT_CLASSIFICAT] T1 INNER JOIN [deop01].[dbo].[UNIT_FILE] T2 ON T1.[UNIT_NUMBER] = T2.[UNIT_NUMBER] INNER JOIN [deop01].[dbo].[VEHICLE] T3 ON T2.[BASIS_NUMBER] = T3.[BASIS_NUMBER]  WHERE T3.[LAST_INVOICE_DTE] >= '2018-01-01T00:00:00' ORDER BY T1.[timestamp] "
+  call bcp_in.bat "UNIT_CLASSIFICAT_1" "[import].[UNIT_CLASSIFICAT]" "OPTIMA2"
+  call bcp_queryout.bat "UNIT_CLASSIFICAT_2" "SELECT T1.[UNIT_NUMBER], T1.[BATCH_NUMBER_S], T1.[ACCTNG_PERIOD], T1.[LINE_NO], T1.[ACCT_NR], T1.[DEPARTMENT], T1.[BOOK_KEEPING_CODE], T1.[TRANSFER_CODE], T1.[TRANSACTION_DATE], T1.[TRANSACTION_CODE], T1.[TRANSACTION_AMOUNT], T1.[DOCUMENT_NR], T1.[TRANSFER_DIFFTAX], T1.[TRF_TAXBASIS_SALES], T1.[TRF_TAXBASIS_PURCH], T1.[BOOK_NO], T1.[PURCH_INVNO], T1.[ORIGINAL_BATCH_NO], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[UNIT_CLASSIFICAT] T1 INNER JOIN [deop02].[dbo].[UNIT_FILE] T2 ON T1.[UNIT_NUMBER] = T2.[UNIT_NUMBER] INNER JOIN [deop02].[dbo].[VEHICLE] T3 ON T2.[BASIS_NUMBER] = T3.[BASIS_NUMBER]  WHERE T3.[LAST_INVOICE_DTE] >= '2018-01-01T00:00:00' ORDER BY T1.[timestamp] "
+  call bcp_in.bat "UNIT_CLASSIFICAT_2" "[import].[UNIT_CLASSIFICAT]" "OPTIMA2"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[UNIT_CLASSIFICAT]"
+
+  call sql_timestamp.bat "UNIT_CLASSIFICAT_1" "[OPTIMA2].[import].[UNIT_CLASSIFICAT]" "1"
+  call bcp_queryout.bat "UNIT_CLASSIFICAT_1" "SELECT T1.[UNIT_NUMBER], T1.[BATCH_NUMBER_S], T1.[ACCTNG_PERIOD], T1.[LINE_NO], T1.[ACCT_NR], T1.[DEPARTMENT], T1.[BOOK_KEEPING_CODE], T1.[TRANSFER_CODE], T1.[TRANSACTION_DATE], T1.[TRANSACTION_CODE], T1.[TRANSACTION_AMOUNT], T1.[DOCUMENT_NR], T1.[TRANSFER_DIFFTAX], T1.[TRF_TAXBASIS_SALES], T1.[TRF_TAXBASIS_PURCH], T1.[BOOK_NO], T1.[PURCH_INVNO], T1.[ORIGINAL_BATCH_NO], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[UNIT_CLASSIFICAT] T1 INNER JOIN [deop01].[dbo].[UNIT_FILE] T2 ON T1.[UNIT_NUMBER] = T2.[UNIT_NUMBER] INNER JOIN [deop01].[dbo].[VEHICLE] T3 ON T2.[BASIS_NUMBER] = T3.[BASIS_NUMBER]  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND T3.[LAST_INVOICE_DTE] >= '2018-01-01T00:00:00' ORDER BY T1.[timestamp] "
+  call bcp_in.bat "UNIT_CLASSIFICAT_1" "[temp].[UNIT_CLASSIFICAT]" "OPTIMAX"
+
+  call sql_timestamp.bat "UNIT_CLASSIFICAT_2" "[OPTIMA2].[import].[UNIT_CLASSIFICAT]" "2"
+  call bcp_queryout.bat "UNIT_CLASSIFICAT_2" "SELECT T1.[UNIT_NUMBER], T1.[BATCH_NUMBER_S], T1.[ACCTNG_PERIOD], T1.[LINE_NO], T1.[ACCT_NR], T1.[DEPARTMENT], T1.[BOOK_KEEPING_CODE], T1.[TRANSFER_CODE], T1.[TRANSACTION_DATE], T1.[TRANSACTION_CODE], T1.[TRANSACTION_AMOUNT], T1.[DOCUMENT_NR], T1.[TRANSFER_DIFFTAX], T1.[TRF_TAXBASIS_SALES], T1.[TRF_TAXBASIS_PURCH], T1.[BOOK_NO], T1.[PURCH_INVNO], T1.[ORIGINAL_BATCH_NO], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[UNIT_CLASSIFICAT] T1 INNER JOIN [deop02].[dbo].[UNIT_FILE] T2 ON T1.[UNIT_NUMBER] = T2.[UNIT_NUMBER] INNER JOIN [deop02].[dbo].[VEHICLE] T3 ON T2.[BASIS_NUMBER] = T3.[BASIS_NUMBER]  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND T3.[LAST_INVOICE_DTE] >= '2018-01-01T00:00:00' ORDER BY T1.[timestamp] "
+  call bcp_in.bat "UNIT_CLASSIFICAT_2" "[temp].[UNIT_CLASSIFICAT]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA2].[import].[UNIT_CLASSIFICAT] T1 INNER JOIN [OPTIMAX].[temp].[UNIT_CLASSIFICAT] T2 ON T1.[ACCTNG_PERIOD] = T2.[ACCTNG_PERIOD] AND T1.[BATCH_NUMBER_S] = T2.[BATCH_NUMBER_S] AND T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[LINE_NO] = T2.[LINE_NO] AND T1.[UNIT_NUMBER] = T2.[UNIT_NUMBER]"
+  call sql_query.bat "INSERT INTO [OPTIMA2].[import].[UNIT_CLASSIFICAT] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[UNIT_CLASSIFICAT] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\UNIT_CLASSIFICAT_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\UNIT_CLASSIFICAT_2.csv"

Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 10 - 0
System/OPTIMA/SQL/batch/UNIT_FILE.bat


+ 32 - 0
System/OPTIMA/SQL/batch/UNIT_HISTORY.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==UNIT_HISTORY==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\UNIT_HISTORY*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA2].[import].[UNIT_HISTORY]"
+  call bcp_queryout.bat "UNIT_HISTORY_1" "SELECT T1.[UNIT_NUMBER], T1.[LINE_TYPE], T1.[LINE_NO], T1.[STATE_CODE_UNIT], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[DOCUMENT_DATE], T1.[DOCUMENT_NR], T1.[ORDER_DATE], T1.[ORDER_NUMBER], T1.[TRANSACTION_CODE], T1.[TAX_CODE], T1.[REFERENCE], T1.[COSTS], T1.[PURCH_TAX], T1.[ORDERS_GROSSVALUE], T1.[TAX_SHARE], T1.[DISCOUNT], T1.[CLASSIFICATION_DTE], T1.[BOOK_KEEPING_CODE], T1.[TAX_HANDLING], T1.[TRANSFER_TAX_PCT], T1.[TRANSFER_DATE], T1.[TRANSFER_SALES_TAX], T1.[TRANSFER_PURCH_TAX], T1.[DEPARTMENT], T1.[BOOK_NO], T1.[PURCH_INVNO], T1.[BATCH_NUMBER_S], T1.[SETOFF_ACCT], T1.[INT_EXT_CODE], T1.[DESTINATION], T1.[OWN_DIMENSION_1], T1.[OWN_DIMENSION_2], T1.[OWN_DIMENSION_3], T1.[OWN_DIMENSION_4], T1.[OWN_DIMENSION_5], T1.[ACTIVITY], T1.[VAT_RATE_CODE], T1.[CALC_RULE_SYSTEM], T1.[ACC_AMOUNT_TYPE], T1.[TRANSACT_CODE_REV], T1.[INT_VOUCHER_NO], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[UNIT_HISTORY] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "UNIT_HISTORY_1" "[import].[UNIT_HISTORY]" "OPTIMA2"
+  call bcp_queryout.bat "UNIT_HISTORY_2" "SELECT T1.[UNIT_NUMBER], T1.[LINE_TYPE], T1.[LINE_NO], T1.[STATE_CODE_UNIT], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[DOCUMENT_DATE], T1.[DOCUMENT_NR], T1.[ORDER_DATE], T1.[ORDER_NUMBER], T1.[TRANSACTION_CODE], T1.[TAX_CODE], T1.[REFERENCE], T1.[COSTS], T1.[PURCH_TAX], T1.[ORDERS_GROSSVALUE], T1.[TAX_SHARE], T1.[DISCOUNT], T1.[CLASSIFICATION_DTE], T1.[BOOK_KEEPING_CODE], T1.[TAX_HANDLING], T1.[TRANSFER_TAX_PCT], T1.[TRANSFER_DATE], T1.[TRANSFER_SALES_TAX], T1.[TRANSFER_PURCH_TAX], T1.[DEPARTMENT], T1.[BOOK_NO], T1.[PURCH_INVNO], T1.[BATCH_NUMBER_S], T1.[SETOFF_ACCT], T1.[INT_EXT_CODE], T1.[DESTINATION], T1.[OWN_DIMENSION_1], T1.[OWN_DIMENSION_2], T1.[OWN_DIMENSION_3], T1.[OWN_DIMENSION_4], T1.[OWN_DIMENSION_5], T1.[ACTIVITY], T1.[VAT_RATE_CODE], T1.[CALC_RULE_SYSTEM], T1.[ACC_AMOUNT_TYPE], T1.[TRANSACT_CODE_REV], T1.[INT_VOUCHER_NO], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[UNIT_HISTORY] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "UNIT_HISTORY_2" "[import].[UNIT_HISTORY]" "OPTIMA2"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[UNIT_HISTORY]"
+
+  call sql_timestamp.bat "UNIT_HISTORY_1" "[OPTIMA2].[import].[UNIT_HISTORY]" "1"
+  call bcp_queryout.bat "UNIT_HISTORY_1" "SELECT T1.[UNIT_NUMBER], T1.[LINE_TYPE], T1.[LINE_NO], T1.[STATE_CODE_UNIT], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[DOCUMENT_DATE], T1.[DOCUMENT_NR], T1.[ORDER_DATE], T1.[ORDER_NUMBER], T1.[TRANSACTION_CODE], T1.[TAX_CODE], T1.[REFERENCE], T1.[COSTS], T1.[PURCH_TAX], T1.[ORDERS_GROSSVALUE], T1.[TAX_SHARE], T1.[DISCOUNT], T1.[CLASSIFICATION_DTE], T1.[BOOK_KEEPING_CODE], T1.[TAX_HANDLING], T1.[TRANSFER_TAX_PCT], T1.[TRANSFER_DATE], T1.[TRANSFER_SALES_TAX], T1.[TRANSFER_PURCH_TAX], T1.[DEPARTMENT], T1.[BOOK_NO], T1.[PURCH_INVNO], T1.[BATCH_NUMBER_S], T1.[SETOFF_ACCT], T1.[INT_EXT_CODE], T1.[DESTINATION], T1.[OWN_DIMENSION_1], T1.[OWN_DIMENSION_2], T1.[OWN_DIMENSION_3], T1.[OWN_DIMENSION_4], T1.[OWN_DIMENSION_5], T1.[ACTIVITY], T1.[VAT_RATE_CODE], T1.[CALC_RULE_SYSTEM], T1.[ACC_AMOUNT_TYPE], T1.[TRANSACT_CODE_REV], T1.[INT_VOUCHER_NO], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[UNIT_HISTORY] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "UNIT_HISTORY_1" "[temp].[UNIT_HISTORY]" "OPTIMAX"
+
+  call sql_timestamp.bat "UNIT_HISTORY_2" "[OPTIMA2].[import].[UNIT_HISTORY]" "2"
+  call bcp_queryout.bat "UNIT_HISTORY_2" "SELECT T1.[UNIT_NUMBER], T1.[LINE_TYPE], T1.[LINE_NO], T1.[STATE_CODE_UNIT], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[DOCUMENT_DATE], T1.[DOCUMENT_NR], T1.[ORDER_DATE], T1.[ORDER_NUMBER], T1.[TRANSACTION_CODE], T1.[TAX_CODE], T1.[REFERENCE], T1.[COSTS], T1.[PURCH_TAX], T1.[ORDERS_GROSSVALUE], T1.[TAX_SHARE], T1.[DISCOUNT], T1.[CLASSIFICATION_DTE], T1.[BOOK_KEEPING_CODE], T1.[TAX_HANDLING], T1.[TRANSFER_TAX_PCT], T1.[TRANSFER_DATE], T1.[TRANSFER_SALES_TAX], T1.[TRANSFER_PURCH_TAX], T1.[DEPARTMENT], T1.[BOOK_NO], T1.[PURCH_INVNO], T1.[BATCH_NUMBER_S], T1.[SETOFF_ACCT], T1.[INT_EXT_CODE], T1.[DESTINATION], T1.[OWN_DIMENSION_1], T1.[OWN_DIMENSION_2], T1.[OWN_DIMENSION_3], T1.[OWN_DIMENSION_4], T1.[OWN_DIMENSION_5], T1.[ACTIVITY], T1.[VAT_RATE_CODE], T1.[CALC_RULE_SYSTEM], T1.[ACC_AMOUNT_TYPE], T1.[TRANSACT_CODE_REV], T1.[INT_VOUCHER_NO], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[UNIT_HISTORY] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "UNIT_HISTORY_2" "[temp].[UNIT_HISTORY]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA2].[import].[UNIT_HISTORY] T1 INNER JOIN [OPTIMAX].[temp].[UNIT_HISTORY] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[LINE_NO] = T2.[LINE_NO] AND T1.[LINE_TYPE] = T2.[LINE_TYPE] AND T1.[UNIT_NUMBER] = T2.[UNIT_NUMBER]"
+  call sql_query.bat "INSERT INTO [OPTIMA2].[import].[UNIT_HISTORY] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[UNIT_HISTORY] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\UNIT_HISTORY_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\UNIT_HISTORY_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/UNIT_LINK_EXT.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==UNIT_LINK_EXT==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\UNIT_LINK_EXT*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[UNIT_LINK_EXT]"
+  call bcp_queryout.bat "UNIT_LINK_EXT_1" "SELECT T1.[UNIT_NUMBER], T1.[BASIS_NUMBER], T1.[HANDLER], T1.[TIME_STAMP_DATE], T1.[TIME_STAMP_TIME_8], T1.[ACTION_CODE], T1.[EXTERNAL_SYSTEM], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[UNIT_LINK_EXT] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "UNIT_LINK_EXT_1" "[import].[UNIT_LINK_EXT]" "OPTIMA"
+  call bcp_queryout.bat "UNIT_LINK_EXT_2" "SELECT T1.[UNIT_NUMBER], T1.[BASIS_NUMBER], T1.[HANDLER], T1.[TIME_STAMP_DATE], T1.[TIME_STAMP_TIME_8], T1.[ACTION_CODE], T1.[EXTERNAL_SYSTEM], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[UNIT_LINK_EXT] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "UNIT_LINK_EXT_2" "[import].[UNIT_LINK_EXT]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[UNIT_LINK_EXT]"
+
+  call sql_timestamp.bat "UNIT_LINK_EXT_1" "[OPTIMA].[import].[UNIT_LINK_EXT]" "1"
+  call bcp_queryout.bat "UNIT_LINK_EXT_1" "SELECT T1.[UNIT_NUMBER], T1.[BASIS_NUMBER], T1.[HANDLER], T1.[TIME_STAMP_DATE], T1.[TIME_STAMP_TIME_8], T1.[ACTION_CODE], T1.[EXTERNAL_SYSTEM], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[UNIT_LINK_EXT] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "UNIT_LINK_EXT_1" "[temp].[UNIT_LINK_EXT]" "OPTIMAX"
+
+  call sql_timestamp.bat "UNIT_LINK_EXT_2" "[OPTIMA].[import].[UNIT_LINK_EXT]" "2"
+  call bcp_queryout.bat "UNIT_LINK_EXT_2" "SELECT T1.[UNIT_NUMBER], T1.[BASIS_NUMBER], T1.[HANDLER], T1.[TIME_STAMP_DATE], T1.[TIME_STAMP_TIME_8], T1.[ACTION_CODE], T1.[EXTERNAL_SYSTEM], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[UNIT_LINK_EXT] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "UNIT_LINK_EXT_2" "[temp].[UNIT_LINK_EXT]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[UNIT_LINK_EXT] T1 INNER JOIN [OPTIMAX].[temp].[UNIT_LINK_EXT] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[EXTERNAL_SYSTEM] = T2.[EXTERNAL_SYSTEM] AND T1.[UNIT_NUMBER] = T2.[UNIT_NUMBER]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[UNIT_LINK_EXT] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[UNIT_LINK_EXT] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\UNIT_LINK_EXT_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\UNIT_LINK_EXT_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/UNIT_SALES_PRICE_LOG.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==UNIT_SALES_PRICE_LOG==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\UNIT_SALES_PRICE_LOG*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[UNIT_SALES_PRICE_LOG]"
+  call bcp_queryout.bat "UNIT_SALES_PRICE_LOG_1" "SELECT T1.[UNIT_NUMBER], T1.[BUD_SALE_DET], T1.[SALE_PRICE_DATE], T1.[VARIATION_PCT], T1.[BUD_PURCH_PRICE], T1.[PURCH_PRICE], T1.[BUD_COST], T1.[SURCHARGE_PCT], T1.[AUTOMAT_CALC], T1.[HANDLER], T1.[FUNCTION_CODE], T1.[CREATION_TIME], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[UNIT_SALES_PRICE_LOG] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "UNIT_SALES_PRICE_LOG_1" "[import].[UNIT_SALES_PRICE_LOG]" "OPTIMA"
+  call bcp_queryout.bat "UNIT_SALES_PRICE_LOG_2" "SELECT T1.[UNIT_NUMBER], T1.[BUD_SALE_DET], T1.[SALE_PRICE_DATE], T1.[VARIATION_PCT], T1.[BUD_PURCH_PRICE], T1.[PURCH_PRICE], T1.[BUD_COST], T1.[SURCHARGE_PCT], T1.[AUTOMAT_CALC], T1.[HANDLER], T1.[FUNCTION_CODE], T1.[CREATION_TIME], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[UNIT_SALES_PRICE_LOG] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "UNIT_SALES_PRICE_LOG_2" "[import].[UNIT_SALES_PRICE_LOG]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[UNIT_SALES_PRICE_LOG]"
+
+  call sql_timestamp.bat "UNIT_SALES_PRICE_LOG_1" "[OPTIMA].[import].[UNIT_SALES_PRICE_LOG]" "1"
+  call bcp_queryout.bat "UNIT_SALES_PRICE_LOG_1" "SELECT T1.[UNIT_NUMBER], T1.[BUD_SALE_DET], T1.[SALE_PRICE_DATE], T1.[VARIATION_PCT], T1.[BUD_PURCH_PRICE], T1.[PURCH_PRICE], T1.[BUD_COST], T1.[SURCHARGE_PCT], T1.[AUTOMAT_CALC], T1.[HANDLER], T1.[FUNCTION_CODE], T1.[CREATION_TIME], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[UNIT_SALES_PRICE_LOG] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "UNIT_SALES_PRICE_LOG_1" "[temp].[UNIT_SALES_PRICE_LOG]" "OPTIMAX"
+
+  call sql_timestamp.bat "UNIT_SALES_PRICE_LOG_2" "[OPTIMA].[import].[UNIT_SALES_PRICE_LOG]" "2"
+  call bcp_queryout.bat "UNIT_SALES_PRICE_LOG_2" "SELECT T1.[UNIT_NUMBER], T1.[BUD_SALE_DET], T1.[SALE_PRICE_DATE], T1.[VARIATION_PCT], T1.[BUD_PURCH_PRICE], T1.[PURCH_PRICE], T1.[BUD_COST], T1.[SURCHARGE_PCT], T1.[AUTOMAT_CALC], T1.[HANDLER], T1.[FUNCTION_CODE], T1.[CREATION_TIME], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[UNIT_SALES_PRICE_LOG] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "UNIT_SALES_PRICE_LOG_2" "[temp].[UNIT_SALES_PRICE_LOG]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[UNIT_SALES_PRICE_LOG] T1 INNER JOIN [OPTIMAX].[temp].[UNIT_SALES_PRICE_LOG] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[CREATION_TIME] = T2.[CREATION_TIME] AND T1.[UNIT_NUMBER] = T2.[UNIT_NUMBER]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[UNIT_SALES_PRICE_LOG] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[UNIT_SALES_PRICE_LOG] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\UNIT_SALES_PRICE_LOG_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\UNIT_SALES_PRICE_LOG_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/UNIT_STATUS_HIST.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==UNIT_STATUS_HIST==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\UNIT_STATUS_HIST*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[UNIT_STATUS_HIST]"
+  call bcp_queryout.bat "UNIT_STATUS_HIST_1" "SELECT T1.[UNIT_NUMBER], T1.[SEQ_NO], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[DOCUMENT_DATE], T1.[UNIT_HIST_STATUS], T1.[CLASSIFICATION_DTE], T1.[INT_EXT_CODE], T1.[DESTINATION], T1.[ACTIVITY], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[CUSTOMER_NUMBER], '1' as [Client_DB] FROM [deop01].[dbo].[UNIT_STATUS_HIST] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "UNIT_STATUS_HIST_1" "[import].[UNIT_STATUS_HIST]" "OPTIMA"
+  call bcp_queryout.bat "UNIT_STATUS_HIST_2" "SELECT T1.[UNIT_NUMBER], T1.[SEQ_NO], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[DOCUMENT_DATE], T1.[UNIT_HIST_STATUS], T1.[CLASSIFICATION_DTE], T1.[INT_EXT_CODE], T1.[DESTINATION], T1.[ACTIVITY], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[CUSTOMER_NUMBER], '2' as [Client_DB] FROM [deop02].[dbo].[UNIT_STATUS_HIST] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "UNIT_STATUS_HIST_2" "[import].[UNIT_STATUS_HIST]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[UNIT_STATUS_HIST]"
+
+  call sql_timestamp.bat "UNIT_STATUS_HIST_1" "[OPTIMA].[import].[UNIT_STATUS_HIST]" "1"
+  call bcp_queryout.bat "UNIT_STATUS_HIST_1" "SELECT T1.[UNIT_NUMBER], T1.[SEQ_NO], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[DOCUMENT_DATE], T1.[UNIT_HIST_STATUS], T1.[CLASSIFICATION_DTE], T1.[INT_EXT_CODE], T1.[DESTINATION], T1.[ACTIVITY], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[CUSTOMER_NUMBER], '1' as [Client_DB] FROM [deop01].[dbo].[UNIT_STATUS_HIST] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "UNIT_STATUS_HIST_1" "[temp].[UNIT_STATUS_HIST]" "OPTIMAX"
+
+  call sql_timestamp.bat "UNIT_STATUS_HIST_2" "[OPTIMA].[import].[UNIT_STATUS_HIST]" "2"
+  call bcp_queryout.bat "UNIT_STATUS_HIST_2" "SELECT T1.[UNIT_NUMBER], T1.[SEQ_NO], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[DOCUMENT_DATE], T1.[UNIT_HIST_STATUS], T1.[CLASSIFICATION_DTE], T1.[INT_EXT_CODE], T1.[DESTINATION], T1.[ACTIVITY], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[CUSTOMER_NUMBER], '2' as [Client_DB] FROM [deop02].[dbo].[UNIT_STATUS_HIST] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "UNIT_STATUS_HIST_2" "[temp].[UNIT_STATUS_HIST]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[UNIT_STATUS_HIST] T1 INNER JOIN [OPTIMAX].[temp].[UNIT_STATUS_HIST] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[SEQ_NO] = T2.[SEQ_NO] AND T1.[UNIT_NUMBER] = T2.[UNIT_NUMBER]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[UNIT_STATUS_HIST] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[UNIT_STATUS_HIST] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\UNIT_STATUS_HIST_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\UNIT_STATUS_HIST_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/UNIT_TEMP_TAB_GRNI.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==UNIT_TEMP_TAB_GRNI==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\UNIT_TEMP_TAB_GRNI*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[UNIT_TEMP_TAB_GRNI]"
+  call bcp_queryout.bat "UNIT_TEMP_TAB_GRNI_1" "SELECT T1.[UNIT_NUMBER], T1.[PURCH_PRICE], T1.[SELECTED], T1.[BOOKED], T1.[PER_DATE], T1.[HANDLER], T1.[TRANSACT_DATE], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[UNIT_TEMP_TAB_GRNI] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "UNIT_TEMP_TAB_GRNI_1" "[import].[UNIT_TEMP_TAB_GRNI]" "OPTIMA"
+  call bcp_queryout.bat "UNIT_TEMP_TAB_GRNI_2" "SELECT T1.[UNIT_NUMBER], T1.[PURCH_PRICE], T1.[SELECTED], T1.[BOOKED], T1.[PER_DATE], T1.[HANDLER], T1.[TRANSACT_DATE], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[UNIT_TEMP_TAB_GRNI] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "UNIT_TEMP_TAB_GRNI_2" "[import].[UNIT_TEMP_TAB_GRNI]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[UNIT_TEMP_TAB_GRNI]"
+
+  call sql_timestamp.bat "UNIT_TEMP_TAB_GRNI_1" "[OPTIMA].[import].[UNIT_TEMP_TAB_GRNI]" "1"
+  call bcp_queryout.bat "UNIT_TEMP_TAB_GRNI_1" "SELECT T1.[UNIT_NUMBER], T1.[PURCH_PRICE], T1.[SELECTED], T1.[BOOKED], T1.[PER_DATE], T1.[HANDLER], T1.[TRANSACT_DATE], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[UNIT_TEMP_TAB_GRNI] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "UNIT_TEMP_TAB_GRNI_1" "[temp].[UNIT_TEMP_TAB_GRNI]" "OPTIMAX"
+
+  call sql_timestamp.bat "UNIT_TEMP_TAB_GRNI_2" "[OPTIMA].[import].[UNIT_TEMP_TAB_GRNI]" "2"
+  call bcp_queryout.bat "UNIT_TEMP_TAB_GRNI_2" "SELECT T1.[UNIT_NUMBER], T1.[PURCH_PRICE], T1.[SELECTED], T1.[BOOKED], T1.[PER_DATE], T1.[HANDLER], T1.[TRANSACT_DATE], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[UNIT_TEMP_TAB_GRNI] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "UNIT_TEMP_TAB_GRNI_2" "[temp].[UNIT_TEMP_TAB_GRNI]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[UNIT_TEMP_TAB_GRNI] T1 INNER JOIN [OPTIMAX].[temp].[UNIT_TEMP_TAB_GRNI] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[UNIT_NUMBER] = T2.[UNIT_NUMBER]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[UNIT_TEMP_TAB_GRNI] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[UNIT_TEMP_TAB_GRNI] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\UNIT_TEMP_TAB_GRNI_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\UNIT_TEMP_TAB_GRNI_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/UNIT_TRANSFER_TAB.bat

@@ -0,0 +1,32 @@
+@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"

Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 9 - 0
System/OPTIMA/SQL/batch/UNIT_TYPE_FILE.bat


+ 32 - 0
System/OPTIMA/SQL/batch/UPDATE_OPTION.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==UPDATE_OPTION==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\UPDATE_OPTION*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[UPDATE_OPTION]"
+  call bcp_queryout.bat "UPDATE_OPTION_1" "SELECT T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[TRANSACT_DATE], T1.[MAKE_CD], T1.[GROUP_NAME], T1.[SUPPLIER_CODE], T1.[STOCK], T1.[CHECKLI_NOT_WANTED], T1.[CHECKLI_FORM], T1.[PURCH_PROPO_WANTED], T1.[PURCH_PROPO_FORM], T1.[PURCH_PROPO_SORT], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[UPDATE_OPTION] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "UPDATE_OPTION_1" "[import].[UPDATE_OPTION]" "OPTIMA"
+  call bcp_queryout.bat "UPDATE_OPTION_2" "SELECT T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[TRANSACT_DATE], T1.[MAKE_CD], T1.[GROUP_NAME], T1.[SUPPLIER_CODE], T1.[STOCK], T1.[CHECKLI_NOT_WANTED], T1.[CHECKLI_FORM], T1.[PURCH_PROPO_WANTED], T1.[PURCH_PROPO_FORM], T1.[PURCH_PROPO_SORT], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[UPDATE_OPTION] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "UPDATE_OPTION_2" "[import].[UPDATE_OPTION]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[UPDATE_OPTION]"
+
+  call sql_timestamp.bat "UPDATE_OPTION_1" "[OPTIMA].[import].[UPDATE_OPTION]" "1"
+  call bcp_queryout.bat "UPDATE_OPTION_1" "SELECT T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[TRANSACT_DATE], T1.[MAKE_CD], T1.[GROUP_NAME], T1.[SUPPLIER_CODE], T1.[STOCK], T1.[CHECKLI_NOT_WANTED], T1.[CHECKLI_FORM], T1.[PURCH_PROPO_WANTED], T1.[PURCH_PROPO_FORM], T1.[PURCH_PROPO_SORT], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[UPDATE_OPTION] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "UPDATE_OPTION_1" "[temp].[UPDATE_OPTION]" "OPTIMAX"
+
+  call sql_timestamp.bat "UPDATE_OPTION_2" "[OPTIMA].[import].[UPDATE_OPTION]" "2"
+  call bcp_queryout.bat "UPDATE_OPTION_2" "SELECT T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[TRANSACT_DATE], T1.[MAKE_CD], T1.[GROUP_NAME], T1.[SUPPLIER_CODE], T1.[STOCK], T1.[CHECKLI_NOT_WANTED], T1.[CHECKLI_FORM], T1.[PURCH_PROPO_WANTED], T1.[PURCH_PROPO_FORM], T1.[PURCH_PROPO_SORT], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[UPDATE_OPTION] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "UPDATE_OPTION_2" "[temp].[UPDATE_OPTION]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[UPDATE_OPTION] T1 INNER JOIN [OPTIMAX].[temp].[UPDATE_OPTION] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[GROUP_NAME] = T2.[GROUP_NAME] AND T1.[MAKE_CD] = T2.[MAKE_CD] AND T1.[STOCK] = T2.[STOCK] AND T1.[SUPPLIER_CODE] = T2.[SUPPLIER_CODE]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[UPDATE_OPTION] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[UPDATE_OPTION] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\UPDATE_OPTION_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\UPDATE_OPTION_2.csv"

Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 10 - 0
System/OPTIMA/SQL/batch/VEHICLE.bat


+ 32 - 0
System/OPTIMA/SQL/batch/VEHICLE_ACCRUALS.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==VEHICLE_ACCRUALS==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\VEHICLE_ACCRUALS*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[VEHICLE_ACCRUALS]"
+  call bcp_queryout.bat "VEHICLE_ACCRUALS_1" "SELECT T1.[UNIT_NUMBER], T1.[CALC_RULE_DETAIL_ID], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[CALC_AMOUNT], T1.[MANUALLY_CHANGED], T1.[AUTHORIZATION_CODE], T1.[UNIQUE_IDENT], T1.[timestamp], T1.[CONV_FLAG], '1' as [Client_DB] FROM [deop01].[dbo].[VEHICLE_ACCRUALS] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VEHICLE_ACCRUALS_1" "[import].[VEHICLE_ACCRUALS]" "OPTIMA"
+  call bcp_queryout.bat "VEHICLE_ACCRUALS_2" "SELECT T1.[UNIT_NUMBER], T1.[CALC_RULE_DETAIL_ID], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[CALC_AMOUNT], T1.[MANUALLY_CHANGED], T1.[AUTHORIZATION_CODE], T1.[UNIQUE_IDENT], T1.[timestamp], T1.[CONV_FLAG], '2' as [Client_DB] FROM [deop02].[dbo].[VEHICLE_ACCRUALS] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VEHICLE_ACCRUALS_2" "[import].[VEHICLE_ACCRUALS]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[VEHICLE_ACCRUALS]"
+
+  call sql_timestamp.bat "VEHICLE_ACCRUALS_1" "[OPTIMA].[import].[VEHICLE_ACCRUALS]" "1"
+  call bcp_queryout.bat "VEHICLE_ACCRUALS_1" "SELECT T1.[UNIT_NUMBER], T1.[CALC_RULE_DETAIL_ID], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[CALC_AMOUNT], T1.[MANUALLY_CHANGED], T1.[AUTHORIZATION_CODE], T1.[UNIQUE_IDENT], T1.[timestamp], T1.[CONV_FLAG], '1' as [Client_DB] FROM [deop01].[dbo].[VEHICLE_ACCRUALS] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VEHICLE_ACCRUALS_1" "[temp].[VEHICLE_ACCRUALS]" "OPTIMAX"
+
+  call sql_timestamp.bat "VEHICLE_ACCRUALS_2" "[OPTIMA].[import].[VEHICLE_ACCRUALS]" "2"
+  call bcp_queryout.bat "VEHICLE_ACCRUALS_2" "SELECT T1.[UNIT_NUMBER], T1.[CALC_RULE_DETAIL_ID], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[CALC_AMOUNT], T1.[MANUALLY_CHANGED], T1.[AUTHORIZATION_CODE], T1.[UNIQUE_IDENT], T1.[timestamp], T1.[CONV_FLAG], '2' as [Client_DB] FROM [deop02].[dbo].[VEHICLE_ACCRUALS] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VEHICLE_ACCRUALS_2" "[temp].[VEHICLE_ACCRUALS]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[VEHICLE_ACCRUALS] T1 INNER JOIN [OPTIMAX].[temp].[VEHICLE_ACCRUALS] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[UNIQUE_IDENT] = T2.[UNIQUE_IDENT]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[VEHICLE_ACCRUALS] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[VEHICLE_ACCRUALS] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VEHICLE_ACCRUALS_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VEHICLE_ACCRUALS_2.csv"

Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 9 - 0
System/OPTIMA/SQL/batch/VEHICLE_DOCKETCARD.bat


Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 10 - 0
System/OPTIMA/SQL/batch/VEHICLE_EXTENSION.bat


+ 32 - 0
System/OPTIMA/SQL/batch/VEH_CARGRP_PURCHORIGIN.bat

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

+ 32 - 0
System/OPTIMA/SQL/batch/VEH_CLASSIFICATION_CODE.bat

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

+ 32 - 0
System/OPTIMA/SQL/batch/VEH_IN_TRANSIT.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==VEH_IN_TRANSIT==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\VEH_IN_TRANSIT*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[VEH_IN_TRANSIT]"
+  call bcp_queryout.bat "VEH_IN_TRANSIT_1" "SELECT T1.[CHASSIS_NUMBER], T1.[UNIT_NUMBER], T1.[BASIS_NUMBER], T1.[ORDER_NUMBER], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[CREATION_DATE], T1.[TRANSACTION_DATE], T1.[STATUS_CODE], T1.[SUPPLIER_CODE], T1.[INVOICE_DATE], T1.[INVOICE_NUMBER], T1.[ORDER_SUM], T1.[VAT_AMOUNT], T1.[COMMENT_1], T1.[COMMENT_2], T1.[CURRENCY_CODE], T1.[VEHICLE_ON_STOCK], T1.[APPROVED], T1.[BOOKKEEP_DATE], T1.[ADP_EX_VEH_ID], T1.[STATUS], T1.[DELETE_MARKED], T1.[PRICE_LIST_VERSION], T1.[EXTERNAL_SYSTEM], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[VEH_IN_TRANSIT] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VEH_IN_TRANSIT_1" "[import].[VEH_IN_TRANSIT]" "OPTIMA"
+  call bcp_queryout.bat "VEH_IN_TRANSIT_2" "SELECT T1.[CHASSIS_NUMBER], T1.[UNIT_NUMBER], T1.[BASIS_NUMBER], T1.[ORDER_NUMBER], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[CREATION_DATE], T1.[TRANSACTION_DATE], T1.[STATUS_CODE], T1.[SUPPLIER_CODE], T1.[INVOICE_DATE], T1.[INVOICE_NUMBER], T1.[ORDER_SUM], T1.[VAT_AMOUNT], T1.[COMMENT_1], T1.[COMMENT_2], T1.[CURRENCY_CODE], T1.[VEHICLE_ON_STOCK], T1.[APPROVED], T1.[BOOKKEEP_DATE], T1.[ADP_EX_VEH_ID], T1.[STATUS], T1.[DELETE_MARKED], T1.[PRICE_LIST_VERSION], T1.[EXTERNAL_SYSTEM], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[VEH_IN_TRANSIT] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VEH_IN_TRANSIT_2" "[import].[VEH_IN_TRANSIT]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[VEH_IN_TRANSIT]"
+
+  call sql_timestamp.bat "VEH_IN_TRANSIT_1" "[OPTIMA].[import].[VEH_IN_TRANSIT]" "1"
+  call bcp_queryout.bat "VEH_IN_TRANSIT_1" "SELECT T1.[CHASSIS_NUMBER], T1.[UNIT_NUMBER], T1.[BASIS_NUMBER], T1.[ORDER_NUMBER], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[CREATION_DATE], T1.[TRANSACTION_DATE], T1.[STATUS_CODE], T1.[SUPPLIER_CODE], T1.[INVOICE_DATE], T1.[INVOICE_NUMBER], T1.[ORDER_SUM], T1.[VAT_AMOUNT], T1.[COMMENT_1], T1.[COMMENT_2], T1.[CURRENCY_CODE], T1.[VEHICLE_ON_STOCK], T1.[APPROVED], T1.[BOOKKEEP_DATE], T1.[ADP_EX_VEH_ID], T1.[STATUS], T1.[DELETE_MARKED], T1.[PRICE_LIST_VERSION], T1.[EXTERNAL_SYSTEM], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[VEH_IN_TRANSIT] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VEH_IN_TRANSIT_1" "[temp].[VEH_IN_TRANSIT]" "OPTIMAX"
+
+  call sql_timestamp.bat "VEH_IN_TRANSIT_2" "[OPTIMA].[import].[VEH_IN_TRANSIT]" "2"
+  call bcp_queryout.bat "VEH_IN_TRANSIT_2" "SELECT T1.[CHASSIS_NUMBER], T1.[UNIT_NUMBER], T1.[BASIS_NUMBER], T1.[ORDER_NUMBER], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[CREATION_DATE], T1.[TRANSACTION_DATE], T1.[STATUS_CODE], T1.[SUPPLIER_CODE], T1.[INVOICE_DATE], T1.[INVOICE_NUMBER], T1.[ORDER_SUM], T1.[VAT_AMOUNT], T1.[COMMENT_1], T1.[COMMENT_2], T1.[CURRENCY_CODE], T1.[VEHICLE_ON_STOCK], T1.[APPROVED], T1.[BOOKKEEP_DATE], T1.[ADP_EX_VEH_ID], T1.[STATUS], T1.[DELETE_MARKED], T1.[PRICE_LIST_VERSION], T1.[EXTERNAL_SYSTEM], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[VEH_IN_TRANSIT] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VEH_IN_TRANSIT_2" "[temp].[VEH_IN_TRANSIT]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[VEH_IN_TRANSIT] T1 INNER JOIN [OPTIMAX].[temp].[VEH_IN_TRANSIT] T2 ON T1.[CHASSIS_NUMBER] = T2.[CHASSIS_NUMBER] AND T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[EXTERNAL_SYSTEM] = T2.[EXTERNAL_SYSTEM] AND T1.[UNIT_NUMBER] = T2.[UNIT_NUMBER]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[VEH_IN_TRANSIT] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[VEH_IN_TRANSIT] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VEH_IN_TRANSIT_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VEH_IN_TRANSIT_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/VEH_LINK_EXT.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==VEH_LINK_EXT==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\VEH_LINK_EXT*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[VEH_LINK_EXT]"
+  call bcp_queryout.bat "VEH_LINK_EXT_1" "SELECT T1.[BASIS_NUMBER], T1.[HANDLER], T1.[TIME_STAMP_DATE], T1.[TIME_STAMP_TIME_8], T1.[REGISTER_NUMBER], T1.[CHASSIS_NUMBER], T1.[ACTION_CODE], T1.[SALES_LOCATION], T1.[SERVICE_LOCATION], T1.[EXTERNAL_SYSTEM], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[PRIORITY], '1' as [Client_DB] FROM [deop01].[dbo].[VEH_LINK_EXT] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VEH_LINK_EXT_1" "[import].[VEH_LINK_EXT]" "OPTIMA"
+  call bcp_queryout.bat "VEH_LINK_EXT_2" "SELECT T1.[BASIS_NUMBER], T1.[HANDLER], T1.[TIME_STAMP_DATE], T1.[TIME_STAMP_TIME_8], T1.[REGISTER_NUMBER], T1.[CHASSIS_NUMBER], T1.[ACTION_CODE], T1.[SALES_LOCATION], T1.[SERVICE_LOCATION], T1.[EXTERNAL_SYSTEM], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[PRIORITY], '2' as [Client_DB] FROM [deop02].[dbo].[VEH_LINK_EXT] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VEH_LINK_EXT_2" "[import].[VEH_LINK_EXT]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[VEH_LINK_EXT]"
+
+  call sql_timestamp.bat "VEH_LINK_EXT_1" "[OPTIMA].[import].[VEH_LINK_EXT]" "1"
+  call bcp_queryout.bat "VEH_LINK_EXT_1" "SELECT T1.[BASIS_NUMBER], T1.[HANDLER], T1.[TIME_STAMP_DATE], T1.[TIME_STAMP_TIME_8], T1.[REGISTER_NUMBER], T1.[CHASSIS_NUMBER], T1.[ACTION_CODE], T1.[SALES_LOCATION], T1.[SERVICE_LOCATION], T1.[EXTERNAL_SYSTEM], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[PRIORITY], '1' as [Client_DB] FROM [deop01].[dbo].[VEH_LINK_EXT] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VEH_LINK_EXT_1" "[temp].[VEH_LINK_EXT]" "OPTIMAX"
+
+  call sql_timestamp.bat "VEH_LINK_EXT_2" "[OPTIMA].[import].[VEH_LINK_EXT]" "2"
+  call bcp_queryout.bat "VEH_LINK_EXT_2" "SELECT T1.[BASIS_NUMBER], T1.[HANDLER], T1.[TIME_STAMP_DATE], T1.[TIME_STAMP_TIME_8], T1.[REGISTER_NUMBER], T1.[CHASSIS_NUMBER], T1.[ACTION_CODE], T1.[SALES_LOCATION], T1.[SERVICE_LOCATION], T1.[EXTERNAL_SYSTEM], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[PRIORITY], '2' as [Client_DB] FROM [deop02].[dbo].[VEH_LINK_EXT] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VEH_LINK_EXT_2" "[temp].[VEH_LINK_EXT]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[VEH_LINK_EXT] T1 INNER JOIN [OPTIMAX].[temp].[VEH_LINK_EXT] T2 ON T1.[BASIS_NUMBER] = T2.[BASIS_NUMBER] AND T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[EXTERNAL_SYSTEM] = T2.[EXTERNAL_SYSTEM]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[VEH_LINK_EXT] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[VEH_LINK_EXT] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VEH_LINK_EXT_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VEH_LINK_EXT_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/VEH_MAX_STOCK.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==VEH_MAX_STOCK==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\VEH_MAX_STOCK*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[VEH_MAX_STOCK]"
+  call bcp_queryout.bat "VEH_MAX_STOCK_1" "SELECT T1.[DEALER_NUMBER], T1.[MODEL_LINE], T1.[MAX_STOCK], T1.[MODEL_LINE_TEXT], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[VEH_MAX_STOCK] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VEH_MAX_STOCK_1" "[import].[VEH_MAX_STOCK]" "OPTIMA"
+  call bcp_queryout.bat "VEH_MAX_STOCK_2" "SELECT T1.[DEALER_NUMBER], T1.[MODEL_LINE], T1.[MAX_STOCK], T1.[MODEL_LINE_TEXT], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[VEH_MAX_STOCK] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VEH_MAX_STOCK_2" "[import].[VEH_MAX_STOCK]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[VEH_MAX_STOCK]"
+
+  call sql_timestamp.bat "VEH_MAX_STOCK_1" "[OPTIMA].[import].[VEH_MAX_STOCK]" "1"
+  call bcp_queryout.bat "VEH_MAX_STOCK_1" "SELECT T1.[DEALER_NUMBER], T1.[MODEL_LINE], T1.[MAX_STOCK], T1.[MODEL_LINE_TEXT], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[VEH_MAX_STOCK] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VEH_MAX_STOCK_1" "[temp].[VEH_MAX_STOCK]" "OPTIMAX"
+
+  call sql_timestamp.bat "VEH_MAX_STOCK_2" "[OPTIMA].[import].[VEH_MAX_STOCK]" "2"
+  call bcp_queryout.bat "VEH_MAX_STOCK_2" "SELECT T1.[DEALER_NUMBER], T1.[MODEL_LINE], T1.[MAX_STOCK], T1.[MODEL_LINE_TEXT], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[VEH_MAX_STOCK] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VEH_MAX_STOCK_2" "[temp].[VEH_MAX_STOCK]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[VEH_MAX_STOCK] T1 INNER JOIN [OPTIMAX].[temp].[VEH_MAX_STOCK] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[DEALER_NUMBER] = T2.[DEALER_NUMBER] AND T1.[MODEL_LINE] = T2.[MODEL_LINE]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[VEH_MAX_STOCK] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[VEH_MAX_STOCK] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VEH_MAX_STOCK_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VEH_MAX_STOCK_2.csv"

Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 10 - 0
System/OPTIMA/SQL/batch/VEH_ORDER_HEADER.bat


+ 32 - 0
System/OPTIMA/SQL/batch/VEH_ORDER_LINE.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==VEH_ORDER_LINE==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\VEH_ORDER_LINE*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[VEH_ORDER_LINE]"
+  call bcp_queryout.bat "VEH_ORDER_LINE_1" "SELECT T1.[ORDER_NUMBER], T1.[LINE_NUMBER], T1.[UNIT_NUMBER], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[STATE_CODE], T1.[PERSON_CODE], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[VEHICLE_TYPE_VO], T1.[LAYOUT_TYPE], T1.[REGISTER_NUMBER], T1.[CHASSIS_NUMBER], T1.[DELIVERY_DATE], T1.[TEXT_CODE_1], T1.[TEXT_CODE_2], T1.[TEXT_CODE_3], T1.[PROMISSED_PRICE], T1.[VEHICLE_SUM_OLD], T1.[VEHICLE_SUM_NEW], T1.[OPTION_LINES], T1.[VAT_HANDLING], T1.[TEXT1_1_VO], T1.[TEXT1_2_VO], T1.[TEXT_FL1_VO], T1.[TEXT2_1_VO], T1.[TEXT2_2_VO], T1.[TEXT_FL2_VO], T1.[TEXT3_1_VO], T1.[TEXT3_2_VO], T1.[TEXT_FL3_VO], T1.[TEXT4_1_VO], T1.[TEXT4_2_VO], T1.[TEXT_FL4_VO], T1.[LINE_TYPE_VEH], T1.[UPDATE_VO], T1.[SALE_VO], T1.[PRINT_LAYOUT], T1.[MILEAGE], T1.[SALEREF], T1.[VAT_RATE_CODE], T1.[DISC_CODE_1], T1.[DISC_PCT_1], T1.[DISC_PCT_2], T1.[DISC_AMOUNT_1], T1.[DISC_AMOUNT_2], T1.[NOVA_CALC_FLAG], T1.[NOVA_AMOUNT], T1.[NOVA_EXCEPT_CODE], T1.[NOVA_EXCEPT_TEXT], T1.[ACCOUNTING_CODE], T1.[CREATE_MSC], T1.[BOOK_NO], T1.[CONTRACT_NUMBER], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[VEH_ORDER_LINE] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VEH_ORDER_LINE_1" "[import].[VEH_ORDER_LINE]" "OPTIMA"
+  call bcp_queryout.bat "VEH_ORDER_LINE_2" "SELECT T1.[ORDER_NUMBER], T1.[LINE_NUMBER], T1.[UNIT_NUMBER], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[STATE_CODE], T1.[PERSON_CODE], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[VEHICLE_TYPE_VO], T1.[LAYOUT_TYPE], T1.[REGISTER_NUMBER], T1.[CHASSIS_NUMBER], T1.[DELIVERY_DATE], T1.[TEXT_CODE_1], T1.[TEXT_CODE_2], T1.[TEXT_CODE_3], T1.[PROMISSED_PRICE], T1.[VEHICLE_SUM_OLD], T1.[VEHICLE_SUM_NEW], T1.[OPTION_LINES], T1.[VAT_HANDLING], T1.[TEXT1_1_VO], T1.[TEXT1_2_VO], T1.[TEXT_FL1_VO], T1.[TEXT2_1_VO], T1.[TEXT2_2_VO], T1.[TEXT_FL2_VO], T1.[TEXT3_1_VO], T1.[TEXT3_2_VO], T1.[TEXT_FL3_VO], T1.[TEXT4_1_VO], T1.[TEXT4_2_VO], T1.[TEXT_FL4_VO], T1.[LINE_TYPE_VEH], T1.[UPDATE_VO], T1.[SALE_VO], T1.[PRINT_LAYOUT], T1.[MILEAGE], T1.[SALEREF], T1.[VAT_RATE_CODE], T1.[DISC_CODE_1], T1.[DISC_PCT_1], T1.[DISC_PCT_2], T1.[DISC_AMOUNT_1], T1.[DISC_AMOUNT_2], T1.[NOVA_CALC_FLAG], T1.[NOVA_AMOUNT], T1.[NOVA_EXCEPT_CODE], T1.[NOVA_EXCEPT_TEXT], T1.[ACCOUNTING_CODE], T1.[CREATE_MSC], T1.[BOOK_NO], T1.[CONTRACT_NUMBER], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[VEH_ORDER_LINE] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VEH_ORDER_LINE_2" "[import].[VEH_ORDER_LINE]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[VEH_ORDER_LINE]"
+
+  call sql_timestamp.bat "VEH_ORDER_LINE_1" "[OPTIMA].[import].[VEH_ORDER_LINE]" "1"
+  call bcp_queryout.bat "VEH_ORDER_LINE_1" "SELECT T1.[ORDER_NUMBER], T1.[LINE_NUMBER], T1.[UNIT_NUMBER], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[STATE_CODE], T1.[PERSON_CODE], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[VEHICLE_TYPE_VO], T1.[LAYOUT_TYPE], T1.[REGISTER_NUMBER], T1.[CHASSIS_NUMBER], T1.[DELIVERY_DATE], T1.[TEXT_CODE_1], T1.[TEXT_CODE_2], T1.[TEXT_CODE_3], T1.[PROMISSED_PRICE], T1.[VEHICLE_SUM_OLD], T1.[VEHICLE_SUM_NEW], T1.[OPTION_LINES], T1.[VAT_HANDLING], T1.[TEXT1_1_VO], T1.[TEXT1_2_VO], T1.[TEXT_FL1_VO], T1.[TEXT2_1_VO], T1.[TEXT2_2_VO], T1.[TEXT_FL2_VO], T1.[TEXT3_1_VO], T1.[TEXT3_2_VO], T1.[TEXT_FL3_VO], T1.[TEXT4_1_VO], T1.[TEXT4_2_VO], T1.[TEXT_FL4_VO], T1.[LINE_TYPE_VEH], T1.[UPDATE_VO], T1.[SALE_VO], T1.[PRINT_LAYOUT], T1.[MILEAGE], T1.[SALEREF], T1.[VAT_RATE_CODE], T1.[DISC_CODE_1], T1.[DISC_PCT_1], T1.[DISC_PCT_2], T1.[DISC_AMOUNT_1], T1.[DISC_AMOUNT_2], T1.[NOVA_CALC_FLAG], T1.[NOVA_AMOUNT], T1.[NOVA_EXCEPT_CODE], T1.[NOVA_EXCEPT_TEXT], T1.[ACCOUNTING_CODE], T1.[CREATE_MSC], T1.[BOOK_NO], T1.[CONTRACT_NUMBER], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[VEH_ORDER_LINE] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VEH_ORDER_LINE_1" "[temp].[VEH_ORDER_LINE]" "OPTIMAX"
+
+  call sql_timestamp.bat "VEH_ORDER_LINE_2" "[OPTIMA].[import].[VEH_ORDER_LINE]" "2"
+  call bcp_queryout.bat "VEH_ORDER_LINE_2" "SELECT T1.[ORDER_NUMBER], T1.[LINE_NUMBER], T1.[UNIT_NUMBER], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[STATE_CODE], T1.[PERSON_CODE], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[VEHICLE_TYPE_VO], T1.[LAYOUT_TYPE], T1.[REGISTER_NUMBER], T1.[CHASSIS_NUMBER], T1.[DELIVERY_DATE], T1.[TEXT_CODE_1], T1.[TEXT_CODE_2], T1.[TEXT_CODE_3], T1.[PROMISSED_PRICE], T1.[VEHICLE_SUM_OLD], T1.[VEHICLE_SUM_NEW], T1.[OPTION_LINES], T1.[VAT_HANDLING], T1.[TEXT1_1_VO], T1.[TEXT1_2_VO], T1.[TEXT_FL1_VO], T1.[TEXT2_1_VO], T1.[TEXT2_2_VO], T1.[TEXT_FL2_VO], T1.[TEXT3_1_VO], T1.[TEXT3_2_VO], T1.[TEXT_FL3_VO], T1.[TEXT4_1_VO], T1.[TEXT4_2_VO], T1.[TEXT_FL4_VO], T1.[LINE_TYPE_VEH], T1.[UPDATE_VO], T1.[SALE_VO], T1.[PRINT_LAYOUT], T1.[MILEAGE], T1.[SALEREF], T1.[VAT_RATE_CODE], T1.[DISC_CODE_1], T1.[DISC_PCT_1], T1.[DISC_PCT_2], T1.[DISC_AMOUNT_1], T1.[DISC_AMOUNT_2], T1.[NOVA_CALC_FLAG], T1.[NOVA_AMOUNT], T1.[NOVA_EXCEPT_CODE], T1.[NOVA_EXCEPT_TEXT], T1.[ACCOUNTING_CODE], T1.[CREATE_MSC], T1.[BOOK_NO], T1.[CONTRACT_NUMBER], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[VEH_ORDER_LINE] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VEH_ORDER_LINE_2" "[temp].[VEH_ORDER_LINE]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[VEH_ORDER_LINE] T1 INNER JOIN [OPTIMAX].[temp].[VEH_ORDER_LINE] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[LINE_NUMBER] = T2.[LINE_NUMBER] AND T1.[ORDER_NUMBER] = T2.[ORDER_NUMBER]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[VEH_ORDER_LINE] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[VEH_ORDER_LINE] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VEH_ORDER_LINE_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VEH_ORDER_LINE_2.csv"

+ 34 - 0
System/OPTIMA/SQL/batch/VEH_ORDER_OPTION.bat

@@ -0,0 +1,34 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==VEH_ORDER_OPTION==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\VEH_ORDER_OPTION*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[VEH_ORDER_OPTION]"
+rem Nur in Quelle: CALCULATE_EV_VAT
+  call bcp_queryout.bat "VEH_ORDER_OPTION_1" "SELECT T1.[ORDER_NUMBER], T1.[UNIT_NUMBER], T1.[LINE_TYPE_SPEC], T1.[LINE_NO_VO], T1.[OPTION_TYPE], T1.[OPTION_CODE_PF], T1.[HANDLER], T1.[CREATION_DATE], T1.[OPTION_TEXT_1], T1.[OPTION_TEXT_2], T1.[OPTION_TEXT_3], T1.[OPTION_TEXT_4], T1.[OPTION_UPDATE], T1.[PRINT_OPTION], T1.[LIST_PRICE], T1.[REAL_PRICE], T1.[PURCHASE_PRICE], T1.[VAT_CODE], T1.[TRANSACTION_CODE], T1.[REG_CODE], T1.[DEDUCT_CODE], T1.[DISCOUNT_PERC_VEH], T1.[LIST_PRICE_DATE], T1.[PURCH_PRICE_DATE], T1.[PACKAGE_VEH], T1.[CONNECT_PACK_NO], T1.[TAX_PERC], T1.[ACCT_NR], T1.[LINE_NO_OLD_VO], T1.[PRINT_TEXT_VO], T1.[PRINT_PRICE_VO], T1.[VAT_PRINT_CHARS], T1.[PAYER_NO], T1.[SUB_ORDER_NO], T1.[WUST_CODE], T1.[ACCOUNT_TYPE], T1.[BOOKKEEP_ACCT], T1.[BOOKKEEP_DEPT], T1.[REMAIN_DEBT], T1.[REQUISITION], T1.[BPM_AMOUNT], T1.[REFERENCE_IDENT], T1.[ACCT_SCHEDULE_ID], T1.[DEPOSIT_PRINTED], T1.[QUANTITY], T1.[PRICE], T1.[DISCOUNT_PERCENTAGE], T1.[DISCOUNT_AMOUNT], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[PMT_LINE_TYPE], '1' as [Client_DB] FROM [deop01].[dbo].[VEH_ORDER_OPTION] T1 INNER JOIN [deop01].[dbo].[VEH_ORDER_HEADER] T2 ON T1.[ORDER_NUMBER] = T2.[ORDER_NUMBER] WHERE T2.[INVOICE_DATE] >= '2018-01-01T00:00:00' ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VEH_ORDER_OPTION_1" "[import].[VEH_ORDER_OPTION]" "OPTIMA"
+rem Nur in Quelle: CALCULATE_EV_VAT
+  call bcp_queryout.bat "VEH_ORDER_OPTION_2" "SELECT T1.[ORDER_NUMBER], T1.[UNIT_NUMBER], T1.[LINE_TYPE_SPEC], T1.[LINE_NO_VO], T1.[OPTION_TYPE], T1.[OPTION_CODE_PF], T1.[HANDLER], T1.[CREATION_DATE], T1.[OPTION_TEXT_1], T1.[OPTION_TEXT_2], T1.[OPTION_TEXT_3], T1.[OPTION_TEXT_4], T1.[OPTION_UPDATE], T1.[PRINT_OPTION], T1.[LIST_PRICE], T1.[REAL_PRICE], T1.[PURCHASE_PRICE], T1.[VAT_CODE], T1.[TRANSACTION_CODE], T1.[REG_CODE], T1.[DEDUCT_CODE], T1.[DISCOUNT_PERC_VEH], T1.[LIST_PRICE_DATE], T1.[PURCH_PRICE_DATE], T1.[PACKAGE_VEH], T1.[CONNECT_PACK_NO], T1.[TAX_PERC], T1.[ACCT_NR], T1.[LINE_NO_OLD_VO], T1.[PRINT_TEXT_VO], T1.[PRINT_PRICE_VO], T1.[VAT_PRINT_CHARS], T1.[PAYER_NO], T1.[SUB_ORDER_NO], T1.[WUST_CODE], T1.[ACCOUNT_TYPE], T1.[BOOKKEEP_ACCT], T1.[BOOKKEEP_DEPT], T1.[REMAIN_DEBT], T1.[REQUISITION], T1.[BPM_AMOUNT], T1.[REFERENCE_IDENT], T1.[ACCT_SCHEDULE_ID], T1.[DEPOSIT_PRINTED], T1.[QUANTITY], T1.[PRICE], T1.[DISCOUNT_PERCENTAGE], T1.[DISCOUNT_AMOUNT], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[PMT_LINE_TYPE], '2' as [Client_DB] FROM [deop02].[dbo].[VEH_ORDER_OPTION] T1 INNER JOIN [deop02].[dbo].[VEH_ORDER_HEADER] T2 ON T1.[ORDER_NUMBER] = T2.[ORDER_NUMBER] WHERE T2.[INVOICE_DATE] >= '2018-01-01T00:00:00' ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VEH_ORDER_OPTION_2" "[import].[VEH_ORDER_OPTION]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[VEH_ORDER_OPTION]"
+
+  call sql_timestamp.bat "VEH_ORDER_OPTION_1" "[OPTIMA].[import].[VEH_ORDER_OPTION]" "1"
+  call bcp_queryout.bat "VEH_ORDER_OPTION_1" "SELECT T1.[ORDER_NUMBER], T1.[UNIT_NUMBER], T1.[LINE_TYPE_SPEC], T1.[LINE_NO_VO], T1.[OPTION_TYPE], T1.[OPTION_CODE_PF], T1.[HANDLER], T1.[CREATION_DATE], T1.[OPTION_TEXT_1], T1.[OPTION_TEXT_2], T1.[OPTION_TEXT_3], T1.[OPTION_TEXT_4], T1.[OPTION_UPDATE], T1.[PRINT_OPTION], T1.[LIST_PRICE], T1.[REAL_PRICE], T1.[PURCHASE_PRICE], T1.[VAT_CODE], T1.[TRANSACTION_CODE], T1.[REG_CODE], T1.[DEDUCT_CODE], T1.[DISCOUNT_PERC_VEH], T1.[LIST_PRICE_DATE], T1.[PURCH_PRICE_DATE], T1.[PACKAGE_VEH], T1.[CONNECT_PACK_NO], T1.[TAX_PERC], T1.[ACCT_NR], T1.[LINE_NO_OLD_VO], T1.[PRINT_TEXT_VO], T1.[PRINT_PRICE_VO], T1.[VAT_PRINT_CHARS], T1.[PAYER_NO], T1.[SUB_ORDER_NO], T1.[WUST_CODE], T1.[ACCOUNT_TYPE], T1.[BOOKKEEP_ACCT], T1.[BOOKKEEP_DEPT], T1.[REMAIN_DEBT], T1.[REQUISITION], T1.[BPM_AMOUNT], T1.[REFERENCE_IDENT], T1.[ACCT_SCHEDULE_ID], T1.[DEPOSIT_PRINTED], T1.[QUANTITY], T1.[PRICE], T1.[DISCOUNT_PERCENTAGE], T1.[DISCOUNT_AMOUNT], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[PMT_LINE_TYPE], '1' as [Client_DB] FROM [deop01].[dbo].[VEH_ORDER_OPTION] T1 INNER JOIN [deop01].[dbo].[VEH_ORDER_HEADER] T2 ON T1.[ORDER_NUMBER] = T2.[ORDER_NUMBER] WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND T2.[INVOICE_DATE] >= '2018-01-01T00:00:00' ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VEH_ORDER_OPTION_1" "[temp].[VEH_ORDER_OPTION]" "OPTIMAX"
+
+  call sql_timestamp.bat "VEH_ORDER_OPTION_2" "[OPTIMA].[import].[VEH_ORDER_OPTION]" "2"
+  call bcp_queryout.bat "VEH_ORDER_OPTION_2" "SELECT T1.[ORDER_NUMBER], T1.[UNIT_NUMBER], T1.[LINE_TYPE_SPEC], T1.[LINE_NO_VO], T1.[OPTION_TYPE], T1.[OPTION_CODE_PF], T1.[HANDLER], T1.[CREATION_DATE], T1.[OPTION_TEXT_1], T1.[OPTION_TEXT_2], T1.[OPTION_TEXT_3], T1.[OPTION_TEXT_4], T1.[OPTION_UPDATE], T1.[PRINT_OPTION], T1.[LIST_PRICE], T1.[REAL_PRICE], T1.[PURCHASE_PRICE], T1.[VAT_CODE], T1.[TRANSACTION_CODE], T1.[REG_CODE], T1.[DEDUCT_CODE], T1.[DISCOUNT_PERC_VEH], T1.[LIST_PRICE_DATE], T1.[PURCH_PRICE_DATE], T1.[PACKAGE_VEH], T1.[CONNECT_PACK_NO], T1.[TAX_PERC], T1.[ACCT_NR], T1.[LINE_NO_OLD_VO], T1.[PRINT_TEXT_VO], T1.[PRINT_PRICE_VO], T1.[VAT_PRINT_CHARS], T1.[PAYER_NO], T1.[SUB_ORDER_NO], T1.[WUST_CODE], T1.[ACCOUNT_TYPE], T1.[BOOKKEEP_ACCT], T1.[BOOKKEEP_DEPT], T1.[REMAIN_DEBT], T1.[REQUISITION], T1.[BPM_AMOUNT], T1.[REFERENCE_IDENT], T1.[ACCT_SCHEDULE_ID], T1.[DEPOSIT_PRINTED], T1.[QUANTITY], T1.[PRICE], T1.[DISCOUNT_PERCENTAGE], T1.[DISCOUNT_AMOUNT], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[PMT_LINE_TYPE], '2' as [Client_DB] FROM [deop02].[dbo].[VEH_ORDER_OPTION] T1 INNER JOIN [deop02].[dbo].[VEH_ORDER_HEADER] T2 ON T1.[ORDER_NUMBER] = T2.[ORDER_NUMBER] WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND T2.[INVOICE_DATE] >= '2018-01-01T00:00:00' ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VEH_ORDER_OPTION_2" "[temp].[VEH_ORDER_OPTION]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[VEH_ORDER_OPTION] T1 INNER JOIN [OPTIMAX].[temp].[VEH_ORDER_OPTION] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[UNIQUE_IDENT] = T2.[UNIQUE_IDENT]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[VEH_ORDER_OPTION] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[VEH_ORDER_OPTION] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VEH_ORDER_OPTION_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VEH_ORDER_OPTION_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/VEH_TRANSACT_COLUMNS.bat

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

+ 32 - 0
System/OPTIMA/SQL/batch/VEH_TRANSACT_GRID.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==VEH_TRANSACT_GRID==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\VEH_TRANSACT_GRID*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[VEH_TRANSACT_GRID]"
+  call bcp_queryout.bat "VEH_TRANSACT_GRID_1" "SELECT T1.[LINE_NO], T1.[GROUP_ID], T1.[COLUMN_NO], T1.[VALUE_TEXT], T1.[VALUE_TRANSACT], T1.[VALUE_GROUP], T1.[VALUE_COLUMN], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[UNIQUE_IDENT], T1.[CONV_FLAG], T1.[timestamp], '1' as [Client_DB] FROM [deop01].[dbo].[VEH_TRANSACT_GRID] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VEH_TRANSACT_GRID_1" "[import].[VEH_TRANSACT_GRID]" "OPTIMA"
+  call bcp_queryout.bat "VEH_TRANSACT_GRID_2" "SELECT T1.[LINE_NO], T1.[GROUP_ID], T1.[COLUMN_NO], T1.[VALUE_TEXT], T1.[VALUE_TRANSACT], T1.[VALUE_GROUP], T1.[VALUE_COLUMN], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[UNIQUE_IDENT], T1.[CONV_FLAG], T1.[timestamp], '2' as [Client_DB] FROM [deop02].[dbo].[VEH_TRANSACT_GRID] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VEH_TRANSACT_GRID_2" "[import].[VEH_TRANSACT_GRID]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[VEH_TRANSACT_GRID]"
+
+  call sql_timestamp.bat "VEH_TRANSACT_GRID_1" "[OPTIMA].[import].[VEH_TRANSACT_GRID]" "1"
+  call bcp_queryout.bat "VEH_TRANSACT_GRID_1" "SELECT T1.[LINE_NO], T1.[GROUP_ID], T1.[COLUMN_NO], T1.[VALUE_TEXT], T1.[VALUE_TRANSACT], T1.[VALUE_GROUP], T1.[VALUE_COLUMN], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[UNIQUE_IDENT], T1.[CONV_FLAG], T1.[timestamp], '1' as [Client_DB] FROM [deop01].[dbo].[VEH_TRANSACT_GRID] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VEH_TRANSACT_GRID_1" "[temp].[VEH_TRANSACT_GRID]" "OPTIMAX"
+
+  call sql_timestamp.bat "VEH_TRANSACT_GRID_2" "[OPTIMA].[import].[VEH_TRANSACT_GRID]" "2"
+  call bcp_queryout.bat "VEH_TRANSACT_GRID_2" "SELECT T1.[LINE_NO], T1.[GROUP_ID], T1.[COLUMN_NO], T1.[VALUE_TEXT], T1.[VALUE_TRANSACT], T1.[VALUE_GROUP], T1.[VALUE_COLUMN], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[UNIQUE_IDENT], T1.[CONV_FLAG], T1.[timestamp], '2' as [Client_DB] FROM [deop02].[dbo].[VEH_TRANSACT_GRID] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VEH_TRANSACT_GRID_2" "[temp].[VEH_TRANSACT_GRID]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[VEH_TRANSACT_GRID] T1 INNER JOIN [OPTIMAX].[temp].[VEH_TRANSACT_GRID] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[UNIQUE_IDENT] = T2.[UNIQUE_IDENT]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[VEH_TRANSACT_GRID] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[VEH_TRANSACT_GRID] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VEH_TRANSACT_GRID_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VEH_TRANSACT_GRID_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/VEH_TRANSACT_GROUPS.bat

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

+ 32 - 0
System/OPTIMA/SQL/batch/VEH_TRANSMISSION_CODES.bat

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

+ 32 - 0
System/OPTIMA/SQL/batch/VPP25.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==VPP25==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\VPP25*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[VPP25]"
+  call bcp_queryout.bat "VPP25_1" "SELECT T1.[STAT_CODE], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[STAT_SPECIFY], T1.[STAT_BILLOFL], T1.[STAT_INVOICE], T1.[STAT_NO_TURNOVER], T1.[STAT_EFFECT_CODE], T1.[STAT_DELETE_TERM], T1.[STAT_NEW_STATUS], T1.[STAT_NEW_CRED_STAT], T1.[STAT_NEW_BOL_STAT], T1.[STAT_UPD_SAL_DATE], T1.[STAT_UPD_SALES], T1.[STAT_ORDER_STAT_1], T1.[STAT_ORDER_STAT_2], T1.[STAT_ORDER_STAT_3], T1.[STAT_ORDER_STAT_4], T1.[STAT_ORDER_STAT_5], T1.[STAT_UNIT_SALES], T1.[STAT_FIXED_TXT_COD], T1.[STAT_MAKE_CHK_USED], T1.[STAT_QUICK_ENDSTAT], T1.[STAT_PART_ORDER], T1.[STAT_GREAT_ORDER], T1.[STAT_MILEAGE_CHECK], T1.[ACTIVITY_CODE], T1.[KIT_W_LINES], T1.[USE_PRICE_A_G], T1.[SEND_ADVICE], T1.[MINUTE_CODE], T1.[VEH_INV_PURCHASE_TEXT], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[vPP25] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP25_1" "[import].[VPP25]" "OPTIMA"
+  call bcp_queryout.bat "VPP25_2" "SELECT T1.[STAT_CODE], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[STAT_SPECIFY], T1.[STAT_BILLOFL], T1.[STAT_INVOICE], T1.[STAT_NO_TURNOVER], T1.[STAT_EFFECT_CODE], T1.[STAT_DELETE_TERM], T1.[STAT_NEW_STATUS], T1.[STAT_NEW_CRED_STAT], T1.[STAT_NEW_BOL_STAT], T1.[STAT_UPD_SAL_DATE], T1.[STAT_UPD_SALES], T1.[STAT_ORDER_STAT_1], T1.[STAT_ORDER_STAT_2], T1.[STAT_ORDER_STAT_3], T1.[STAT_ORDER_STAT_4], T1.[STAT_ORDER_STAT_5], T1.[STAT_UNIT_SALES], T1.[STAT_FIXED_TXT_COD], T1.[STAT_MAKE_CHK_USED], T1.[STAT_QUICK_ENDSTAT], T1.[STAT_PART_ORDER], T1.[STAT_GREAT_ORDER], T1.[STAT_MILEAGE_CHECK], T1.[ACTIVITY_CODE], T1.[KIT_W_LINES], T1.[USE_PRICE_A_G], T1.[SEND_ADVICE], T1.[MINUTE_CODE], T1.[VEH_INV_PURCHASE_TEXT], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[vPP25] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP25_2" "[import].[VPP25]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[VPP25]"
+
+  call sql_timestamp.bat "VPP25_1" "[OPTIMA].[import].[VPP25]" "1"
+  call bcp_queryout.bat "VPP25_1" "SELECT T1.[STAT_CODE], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[STAT_SPECIFY], T1.[STAT_BILLOFL], T1.[STAT_INVOICE], T1.[STAT_NO_TURNOVER], T1.[STAT_EFFECT_CODE], T1.[STAT_DELETE_TERM], T1.[STAT_NEW_STATUS], T1.[STAT_NEW_CRED_STAT], T1.[STAT_NEW_BOL_STAT], T1.[STAT_UPD_SAL_DATE], T1.[STAT_UPD_SALES], T1.[STAT_ORDER_STAT_1], T1.[STAT_ORDER_STAT_2], T1.[STAT_ORDER_STAT_3], T1.[STAT_ORDER_STAT_4], T1.[STAT_ORDER_STAT_5], T1.[STAT_UNIT_SALES], T1.[STAT_FIXED_TXT_COD], T1.[STAT_MAKE_CHK_USED], T1.[STAT_QUICK_ENDSTAT], T1.[STAT_PART_ORDER], T1.[STAT_GREAT_ORDER], T1.[STAT_MILEAGE_CHECK], T1.[ACTIVITY_CODE], T1.[KIT_W_LINES], T1.[USE_PRICE_A_G], T1.[SEND_ADVICE], T1.[MINUTE_CODE], T1.[VEH_INV_PURCHASE_TEXT], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[vPP25] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP25_1" "[temp].[VPP25]" "OPTIMAX"
+
+  call sql_timestamp.bat "VPP25_2" "[OPTIMA].[import].[VPP25]" "2"
+  call bcp_queryout.bat "VPP25_2" "SELECT T1.[STAT_CODE], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[STAT_SPECIFY], T1.[STAT_BILLOFL], T1.[STAT_INVOICE], T1.[STAT_NO_TURNOVER], T1.[STAT_EFFECT_CODE], T1.[STAT_DELETE_TERM], T1.[STAT_NEW_STATUS], T1.[STAT_NEW_CRED_STAT], T1.[STAT_NEW_BOL_STAT], T1.[STAT_UPD_SAL_DATE], T1.[STAT_UPD_SALES], T1.[STAT_ORDER_STAT_1], T1.[STAT_ORDER_STAT_2], T1.[STAT_ORDER_STAT_3], T1.[STAT_ORDER_STAT_4], T1.[STAT_ORDER_STAT_5], T1.[STAT_UNIT_SALES], T1.[STAT_FIXED_TXT_COD], T1.[STAT_MAKE_CHK_USED], T1.[STAT_QUICK_ENDSTAT], T1.[STAT_PART_ORDER], T1.[STAT_GREAT_ORDER], T1.[STAT_MILEAGE_CHECK], T1.[ACTIVITY_CODE], T1.[KIT_W_LINES], T1.[USE_PRICE_A_G], T1.[SEND_ADVICE], T1.[MINUTE_CODE], T1.[VEH_INV_PURCHASE_TEXT], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[vPP25] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP25_2" "[temp].[VPP25]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[VPP25] T1 INNER JOIN [OPTIMAX].[temp].[VPP25] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[STAT_CODE] = T2.[STAT_CODE]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[VPP25] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[VPP25] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VPP25_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VPP25_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/VPP28.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==VPP28==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\VPP28*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[VPP28]"
+  call bcp_queryout.bat "VPP28_1" "SELECT T1.[KEYPART], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[NEXT_TRLIST], T1.[FIRST_TRLIST], T1.[LAST_TRLIST], T1.[NEXT_LEDGER_PAGE], T1.[FIRST_LEDGER_PAGE], T1.[LAST_LEDGER_PAGE], T1.[NEXT_BATCH], T1.[FIRST_BATCH], T1.[LAST_BATCH], T1.[LEDGER_DATE_YY], T1.[LEDGER_DATE_MM], T1.[LEDGER_DATE_DD], T1.[CUSTOMER_DATE_YY], T1.[CUSTOMER_DATE_MM], T1.[CUSTOMER_DATE_DD], T1.[SUPPLIER_DATE_YY], T1.[SUPPLIER_DATE_MM], T1.[SUPPLIER_DATE_DD], T1.[CUST_SPEC], T1.[SUPP_SPEC], T1.[CUST_PAYMENT_SPEC], T1.[USE_SUPP_KEY], T1.[DATE_LIMIT], T1.[POST_ENTRY_LIMIT], T1.[CONS_PAGENO_BOOKS], T1.[EDP_ACCT_CHECK], T1.[USE_SUPP_NAME], T1.[BATCH_PRINT_FUNC], T1.[CHECK_UNCLOSED_DEALS], T1.[CHART_CONV_DATE], T1.[CHART_CONV_FY_START_DATE], T1.[CHART_CONV_FY_END_DATE], T1.[BUDGET_NO], T1.[AA_DIALOG_BOX], T1.[USE_SUPP_NAME_VEH], T1.[USE_SUPP_NAME_LEAS], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[vPP28] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP28_1" "[import].[VPP28]" "OPTIMA"
+  call bcp_queryout.bat "VPP28_2" "SELECT T1.[KEYPART], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[NEXT_TRLIST], T1.[FIRST_TRLIST], T1.[LAST_TRLIST], T1.[NEXT_LEDGER_PAGE], T1.[FIRST_LEDGER_PAGE], T1.[LAST_LEDGER_PAGE], T1.[NEXT_BATCH], T1.[FIRST_BATCH], T1.[LAST_BATCH], T1.[LEDGER_DATE_YY], T1.[LEDGER_DATE_MM], T1.[LEDGER_DATE_DD], T1.[CUSTOMER_DATE_YY], T1.[CUSTOMER_DATE_MM], T1.[CUSTOMER_DATE_DD], T1.[SUPPLIER_DATE_YY], T1.[SUPPLIER_DATE_MM], T1.[SUPPLIER_DATE_DD], T1.[CUST_SPEC], T1.[SUPP_SPEC], T1.[CUST_PAYMENT_SPEC], T1.[USE_SUPP_KEY], T1.[DATE_LIMIT], T1.[POST_ENTRY_LIMIT], T1.[CONS_PAGENO_BOOKS], T1.[EDP_ACCT_CHECK], T1.[USE_SUPP_NAME], T1.[BATCH_PRINT_FUNC], T1.[CHECK_UNCLOSED_DEALS], T1.[CHART_CONV_DATE], T1.[CHART_CONV_FY_START_DATE], T1.[CHART_CONV_FY_END_DATE], T1.[BUDGET_NO], T1.[AA_DIALOG_BOX], T1.[USE_SUPP_NAME_VEH], T1.[USE_SUPP_NAME_LEAS], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[vPP28] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP28_2" "[import].[VPP28]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[VPP28]"
+
+  call sql_timestamp.bat "VPP28_1" "[OPTIMA].[import].[VPP28]" "1"
+  call bcp_queryout.bat "VPP28_1" "SELECT T1.[KEYPART], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[NEXT_TRLIST], T1.[FIRST_TRLIST], T1.[LAST_TRLIST], T1.[NEXT_LEDGER_PAGE], T1.[FIRST_LEDGER_PAGE], T1.[LAST_LEDGER_PAGE], T1.[NEXT_BATCH], T1.[FIRST_BATCH], T1.[LAST_BATCH], T1.[LEDGER_DATE_YY], T1.[LEDGER_DATE_MM], T1.[LEDGER_DATE_DD], T1.[CUSTOMER_DATE_YY], T1.[CUSTOMER_DATE_MM], T1.[CUSTOMER_DATE_DD], T1.[SUPPLIER_DATE_YY], T1.[SUPPLIER_DATE_MM], T1.[SUPPLIER_DATE_DD], T1.[CUST_SPEC], T1.[SUPP_SPEC], T1.[CUST_PAYMENT_SPEC], T1.[USE_SUPP_KEY], T1.[DATE_LIMIT], T1.[POST_ENTRY_LIMIT], T1.[CONS_PAGENO_BOOKS], T1.[EDP_ACCT_CHECK], T1.[USE_SUPP_NAME], T1.[BATCH_PRINT_FUNC], T1.[CHECK_UNCLOSED_DEALS], T1.[CHART_CONV_DATE], T1.[CHART_CONV_FY_START_DATE], T1.[CHART_CONV_FY_END_DATE], T1.[BUDGET_NO], T1.[AA_DIALOG_BOX], T1.[USE_SUPP_NAME_VEH], T1.[USE_SUPP_NAME_LEAS], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[vPP28] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP28_1" "[temp].[VPP28]" "OPTIMAX"
+
+  call sql_timestamp.bat "VPP28_2" "[OPTIMA].[import].[VPP28]" "2"
+  call bcp_queryout.bat "VPP28_2" "SELECT T1.[KEYPART], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[NEXT_TRLIST], T1.[FIRST_TRLIST], T1.[LAST_TRLIST], T1.[NEXT_LEDGER_PAGE], T1.[FIRST_LEDGER_PAGE], T1.[LAST_LEDGER_PAGE], T1.[NEXT_BATCH], T1.[FIRST_BATCH], T1.[LAST_BATCH], T1.[LEDGER_DATE_YY], T1.[LEDGER_DATE_MM], T1.[LEDGER_DATE_DD], T1.[CUSTOMER_DATE_YY], T1.[CUSTOMER_DATE_MM], T1.[CUSTOMER_DATE_DD], T1.[SUPPLIER_DATE_YY], T1.[SUPPLIER_DATE_MM], T1.[SUPPLIER_DATE_DD], T1.[CUST_SPEC], T1.[SUPP_SPEC], T1.[CUST_PAYMENT_SPEC], T1.[USE_SUPP_KEY], T1.[DATE_LIMIT], T1.[POST_ENTRY_LIMIT], T1.[CONS_PAGENO_BOOKS], T1.[EDP_ACCT_CHECK], T1.[USE_SUPP_NAME], T1.[BATCH_PRINT_FUNC], T1.[CHECK_UNCLOSED_DEALS], T1.[CHART_CONV_DATE], T1.[CHART_CONV_FY_START_DATE], T1.[CHART_CONV_FY_END_DATE], T1.[BUDGET_NO], T1.[AA_DIALOG_BOX], T1.[USE_SUPP_NAME_VEH], T1.[USE_SUPP_NAME_LEAS], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[vPP28] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP28_2" "[temp].[VPP28]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[VPP28] T1 INNER JOIN [OPTIMAX].[temp].[VPP28] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[UNIQUE_IDENT] = T2.[UNIQUE_IDENT]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[VPP28] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[VPP28] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VPP28_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VPP28_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/VPP2C.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==VPP2C==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\VPP2C*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[VPP2C]"
+  call bcp_queryout.bat "VPP2C_1" "SELECT T1.[LOGIN], T1.[USER_CLEARANCE], T1.[ORDER_OTHER_STOCKS], T1.[INVOICE_ALLOW], T1.[NO_RETURN_CHECK], T1.[CREATE_PART], T1.[CREATE_WMN], T1.[SU_ORDER_UNLOCK], T1.[BOOKKEEP_6420], T1.[ALLOW_PRINT_CHEQUE], T1.[CREDIT_WITHOUT_RETURN], T1.[STOCK], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[USER_HANDLER], T1.[USER_GROUP], T1.[HELP_LEVEL], T1.[LOW_ENTENSITY], T1.[ERROR_BEEP], T1.[KEY_IN_ATTR], T1.[HARDCOPY_PRINTER], T1.[RESTORE_SCREEN], T1.[DATE_ORDER], T1.[DAILY_CLOS_RESP], T1.[DAILY_CLOS_FUNC], T1.[NEWS_MES], T1.[NEWS_MES_SEEN], T1.[NEWS_UPD], T1.[NEWS_UPD_SEEN], T1.[PRICE_CONTROL_GRP], T1.[CASH_ACCOUNT], T1.[DEPARTMENT], T1.[CASHBON_PRINTER], T1.[OPEN_STATUS_STEP], T1.[ACCT_PERM_CODE], T1.[MAKE_CD], T1.[KEYCARD_READER_ID], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[STATE_CODE_PARAM], '1' as [Client_DB] FROM [deop01].[dbo].[vPP2C] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP2C_1" "[import].[VPP2C]" "OPTIMA"
+  call bcp_queryout.bat "VPP2C_2" "SELECT T1.[LOGIN], T1.[USER_CLEARANCE], T1.[ORDER_OTHER_STOCKS], T1.[INVOICE_ALLOW], T1.[NO_RETURN_CHECK], T1.[CREATE_PART], T1.[CREATE_WMN], T1.[SU_ORDER_UNLOCK], T1.[BOOKKEEP_6420], T1.[ALLOW_PRINT_CHEQUE], T1.[CREDIT_WITHOUT_RETURN], T1.[STOCK], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[USER_HANDLER], T1.[USER_GROUP], T1.[HELP_LEVEL], T1.[LOW_ENTENSITY], T1.[ERROR_BEEP], T1.[KEY_IN_ATTR], T1.[HARDCOPY_PRINTER], T1.[RESTORE_SCREEN], T1.[DATE_ORDER], T1.[DAILY_CLOS_RESP], T1.[DAILY_CLOS_FUNC], T1.[NEWS_MES], T1.[NEWS_MES_SEEN], T1.[NEWS_UPD], T1.[NEWS_UPD_SEEN], T1.[PRICE_CONTROL_GRP], T1.[CASH_ACCOUNT], T1.[DEPARTMENT], T1.[CASHBON_PRINTER], T1.[OPEN_STATUS_STEP], T1.[ACCT_PERM_CODE], T1.[MAKE_CD], T1.[KEYCARD_READER_ID], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[STATE_CODE_PARAM], '2' as [Client_DB] FROM [deop02].[dbo].[vPP2C] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP2C_2" "[import].[VPP2C]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[VPP2C]"
+
+  call sql_timestamp.bat "VPP2C_1" "[OPTIMA].[import].[VPP2C]" "1"
+  call bcp_queryout.bat "VPP2C_1" "SELECT T1.[LOGIN], T1.[USER_CLEARANCE], T1.[ORDER_OTHER_STOCKS], T1.[INVOICE_ALLOW], T1.[NO_RETURN_CHECK], T1.[CREATE_PART], T1.[CREATE_WMN], T1.[SU_ORDER_UNLOCK], T1.[BOOKKEEP_6420], T1.[ALLOW_PRINT_CHEQUE], T1.[CREDIT_WITHOUT_RETURN], T1.[STOCK], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[USER_HANDLER], T1.[USER_GROUP], T1.[HELP_LEVEL], T1.[LOW_ENTENSITY], T1.[ERROR_BEEP], T1.[KEY_IN_ATTR], T1.[HARDCOPY_PRINTER], T1.[RESTORE_SCREEN], T1.[DATE_ORDER], T1.[DAILY_CLOS_RESP], T1.[DAILY_CLOS_FUNC], T1.[NEWS_MES], T1.[NEWS_MES_SEEN], T1.[NEWS_UPD], T1.[NEWS_UPD_SEEN], T1.[PRICE_CONTROL_GRP], T1.[CASH_ACCOUNT], T1.[DEPARTMENT], T1.[CASHBON_PRINTER], T1.[OPEN_STATUS_STEP], T1.[ACCT_PERM_CODE], T1.[MAKE_CD], T1.[KEYCARD_READER_ID], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[STATE_CODE_PARAM], '1' as [Client_DB] FROM [deop01].[dbo].[vPP2C] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP2C_1" "[temp].[VPP2C]" "OPTIMAX"
+
+  call sql_timestamp.bat "VPP2C_2" "[OPTIMA].[import].[VPP2C]" "2"
+  call bcp_queryout.bat "VPP2C_2" "SELECT T1.[LOGIN], T1.[USER_CLEARANCE], T1.[ORDER_OTHER_STOCKS], T1.[INVOICE_ALLOW], T1.[NO_RETURN_CHECK], T1.[CREATE_PART], T1.[CREATE_WMN], T1.[SU_ORDER_UNLOCK], T1.[BOOKKEEP_6420], T1.[ALLOW_PRINT_CHEQUE], T1.[CREDIT_WITHOUT_RETURN], T1.[STOCK], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[USER_HANDLER], T1.[USER_GROUP], T1.[HELP_LEVEL], T1.[LOW_ENTENSITY], T1.[ERROR_BEEP], T1.[KEY_IN_ATTR], T1.[HARDCOPY_PRINTER], T1.[RESTORE_SCREEN], T1.[DATE_ORDER], T1.[DAILY_CLOS_RESP], T1.[DAILY_CLOS_FUNC], T1.[NEWS_MES], T1.[NEWS_MES_SEEN], T1.[NEWS_UPD], T1.[NEWS_UPD_SEEN], T1.[PRICE_CONTROL_GRP], T1.[CASH_ACCOUNT], T1.[DEPARTMENT], T1.[CASHBON_PRINTER], T1.[OPEN_STATUS_STEP], T1.[ACCT_PERM_CODE], T1.[MAKE_CD], T1.[KEYCARD_READER_ID], T1.[timestamp], T1.[UNIQUE_IDENT], T1.[STATE_CODE_PARAM], '2' as [Client_DB] FROM [deop02].[dbo].[vPP2C] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP2C_2" "[temp].[VPP2C]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[VPP2C] T1 INNER JOIN [OPTIMAX].[temp].[VPP2C] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[LOGIN] = T2.[LOGIN]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[VPP2C] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[VPP2C] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VPP2C_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VPP2C_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/VPP43.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==VPP43==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\VPP43*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[VPP43]"
+  call bcp_queryout.bat "VPP43_1" "SELECT T1.[SELLER_CODE], T1.[ORDER_APPROV_PERM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[SEL_NAME], T1.[SEL_DEPARTMENT], T1.[SEL_FIRST_NAME], T1.[SEL_FAMILY_NAME], T1.[SEL_TITLE], T1.[SEL_MALE_FEMALE], T1.[SEL_FACTOR], T1.[SEL_COM_SALESMAN], T1.[MECHANIC_PAY_GROUP], T1.[LICENCE_ID], T1.[EMPLOYEE_CATEGORY], T1.[TRAINEE_YEAR], T1.[EMAIL_ADDRESS], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[vPP43] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP43_1" "[import].[VPP43]" "OPTIMA"
+  call bcp_queryout.bat "VPP43_2" "SELECT T1.[SELLER_CODE], T1.[ORDER_APPROV_PERM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[SEL_NAME], T1.[SEL_DEPARTMENT], T1.[SEL_FIRST_NAME], T1.[SEL_FAMILY_NAME], T1.[SEL_TITLE], T1.[SEL_MALE_FEMALE], T1.[SEL_FACTOR], T1.[SEL_COM_SALESMAN], T1.[MECHANIC_PAY_GROUP], T1.[LICENCE_ID], T1.[EMPLOYEE_CATEGORY], T1.[TRAINEE_YEAR], T1.[EMAIL_ADDRESS], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[vPP43] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP43_2" "[import].[VPP43]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[VPP43]"
+
+  call sql_timestamp.bat "VPP43_1" "[OPTIMA].[import].[VPP43]" "1"
+  call bcp_queryout.bat "VPP43_1" "SELECT T1.[SELLER_CODE], T1.[ORDER_APPROV_PERM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[SEL_NAME], T1.[SEL_DEPARTMENT], T1.[SEL_FIRST_NAME], T1.[SEL_FAMILY_NAME], T1.[SEL_TITLE], T1.[SEL_MALE_FEMALE], T1.[SEL_FACTOR], T1.[SEL_COM_SALESMAN], T1.[MECHANIC_PAY_GROUP], T1.[LICENCE_ID], T1.[EMPLOYEE_CATEGORY], T1.[TRAINEE_YEAR], T1.[EMAIL_ADDRESS], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[vPP43] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP43_1" "[temp].[VPP43]" "OPTIMAX"
+
+  call sql_timestamp.bat "VPP43_2" "[OPTIMA].[import].[VPP43]" "2"
+  call bcp_queryout.bat "VPP43_2" "SELECT T1.[SELLER_CODE], T1.[ORDER_APPROV_PERM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[SEL_NAME], T1.[SEL_DEPARTMENT], T1.[SEL_FIRST_NAME], T1.[SEL_FAMILY_NAME], T1.[SEL_TITLE], T1.[SEL_MALE_FEMALE], T1.[SEL_FACTOR], T1.[SEL_COM_SALESMAN], T1.[MECHANIC_PAY_GROUP], T1.[LICENCE_ID], T1.[EMPLOYEE_CATEGORY], T1.[TRAINEE_YEAR], T1.[EMAIL_ADDRESS], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[vPP43] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP43_2" "[temp].[VPP43]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[VPP43] T1 INNER JOIN [OPTIMAX].[temp].[VPP43] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[SELLER_CODE] = T2.[SELLER_CODE]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[VPP43] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[VPP43] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VPP43_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VPP43_2.csv"

+ 34 - 0
System/OPTIMA/SQL/batch/VPP48.bat

@@ -0,0 +1,34 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==VPP48==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\VPP48*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[VPP48]"
+rem Nur in Quelle: VEH_LEASING
+  call bcp_queryout.bat "VPP48_1" "SELECT T1.[CUSTOMER_GROUP], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[CUST_GROUP_SPECIFY], T1.[CUSTOMER_AMOUNT], T1.[COLLECT_ACCOUNT], T1.[ROUNDING_ACCOUNT], T1.[CASH_DISCOUNT_ACC], T1.[INTEREST_ACCOUNT], T1.[SETOFF_ACCT], T1.[BACK_ORDER_PERM], T1.[END_USER], T1.[ORDER_DISCOUNT_GRP], T1.[CONVERT_SOLD_TIME], T1.[INTEREST_CRED_ACCT], T1.[VAT_TABLE_VEHICLE], T1.[VAT_TABLE_WORK], T1.[VAT_TABLE_NORMAL], T1.[TAX_CODE], T1.[CODE_CUST_GROUP], T1.[SWED_DESCRIP_CODE], T1.[PMT_CHARGE_TYPE], T1.[TUP_CUST_GROUP], T1.[INVOICE_CATEGORY], T1.[CUSTOMER_CLASS], T1.[RECOMMENDED_PRICE_ID], T1.[CUST_GROUP_VEH], T1.[TRACKERPACK_CUST_GROUP], T1.[CITROEN_CUST_GROUP], T1.[ROUNDING_ACCOUNT_POSITIVE], T1.[CLASS_CUSTOMER_GROUP], T1.[DEFAULT_ORDER_STATUS], T1.[ADD_VAT_NOT_INVOICED], T1.[SEND_TO_AUTODESKTOP], T1.[SEND_TO_BILINFO], T1.[AVOID_OP_EXTRACT], T1.[MANDATORY_FIELD_CHECKS], T1.[SEND_TO_AUTOMASTER], T1.[SEND_TO_CARWEB2], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[vPP48] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP48_1" "[import].[VPP48]" "OPTIMA"
+rem Nur in Quelle: VEH_LEASING
+  call bcp_queryout.bat "VPP48_2" "SELECT T1.[CUSTOMER_GROUP], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[CUST_GROUP_SPECIFY], T1.[CUSTOMER_AMOUNT], T1.[COLLECT_ACCOUNT], T1.[ROUNDING_ACCOUNT], T1.[CASH_DISCOUNT_ACC], T1.[INTEREST_ACCOUNT], T1.[SETOFF_ACCT], T1.[BACK_ORDER_PERM], T1.[END_USER], T1.[ORDER_DISCOUNT_GRP], T1.[CONVERT_SOLD_TIME], T1.[INTEREST_CRED_ACCT], T1.[VAT_TABLE_VEHICLE], T1.[VAT_TABLE_WORK], T1.[VAT_TABLE_NORMAL], T1.[TAX_CODE], T1.[CODE_CUST_GROUP], T1.[SWED_DESCRIP_CODE], T1.[PMT_CHARGE_TYPE], T1.[TUP_CUST_GROUP], T1.[INVOICE_CATEGORY], T1.[CUSTOMER_CLASS], T1.[RECOMMENDED_PRICE_ID], T1.[CUST_GROUP_VEH], T1.[TRACKERPACK_CUST_GROUP], T1.[CITROEN_CUST_GROUP], T1.[ROUNDING_ACCOUNT_POSITIVE], T1.[CLASS_CUSTOMER_GROUP], T1.[DEFAULT_ORDER_STATUS], T1.[ADD_VAT_NOT_INVOICED], T1.[SEND_TO_AUTODESKTOP], T1.[SEND_TO_BILINFO], T1.[AVOID_OP_EXTRACT], T1.[MANDATORY_FIELD_CHECKS], T1.[SEND_TO_AUTOMASTER], T1.[SEND_TO_CARWEB2], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[vPP48] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP48_2" "[import].[VPP48]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[VPP48]"
+
+  call sql_timestamp.bat "VPP48_1" "[OPTIMA].[import].[VPP48]" "1"
+  call bcp_queryout.bat "VPP48_1" "SELECT T1.[CUSTOMER_GROUP], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[CUST_GROUP_SPECIFY], T1.[CUSTOMER_AMOUNT], T1.[COLLECT_ACCOUNT], T1.[ROUNDING_ACCOUNT], T1.[CASH_DISCOUNT_ACC], T1.[INTEREST_ACCOUNT], T1.[SETOFF_ACCT], T1.[BACK_ORDER_PERM], T1.[END_USER], T1.[ORDER_DISCOUNT_GRP], T1.[CONVERT_SOLD_TIME], T1.[INTEREST_CRED_ACCT], T1.[VAT_TABLE_VEHICLE], T1.[VAT_TABLE_WORK], T1.[VAT_TABLE_NORMAL], T1.[TAX_CODE], T1.[CODE_CUST_GROUP], T1.[SWED_DESCRIP_CODE], T1.[PMT_CHARGE_TYPE], T1.[TUP_CUST_GROUP], T1.[INVOICE_CATEGORY], T1.[CUSTOMER_CLASS], T1.[RECOMMENDED_PRICE_ID], T1.[CUST_GROUP_VEH], T1.[TRACKERPACK_CUST_GROUP], T1.[CITROEN_CUST_GROUP], T1.[ROUNDING_ACCOUNT_POSITIVE], T1.[CLASS_CUSTOMER_GROUP], T1.[DEFAULT_ORDER_STATUS], T1.[ADD_VAT_NOT_INVOICED], T1.[SEND_TO_AUTODESKTOP], T1.[SEND_TO_BILINFO], T1.[AVOID_OP_EXTRACT], T1.[MANDATORY_FIELD_CHECKS], T1.[SEND_TO_AUTOMASTER], T1.[SEND_TO_CARWEB2], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[vPP48] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP48_1" "[temp].[VPP48]" "OPTIMAX"
+
+  call sql_timestamp.bat "VPP48_2" "[OPTIMA].[import].[VPP48]" "2"
+  call bcp_queryout.bat "VPP48_2" "SELECT T1.[CUSTOMER_GROUP], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[CUST_GROUP_SPECIFY], T1.[CUSTOMER_AMOUNT], T1.[COLLECT_ACCOUNT], T1.[ROUNDING_ACCOUNT], T1.[CASH_DISCOUNT_ACC], T1.[INTEREST_ACCOUNT], T1.[SETOFF_ACCT], T1.[BACK_ORDER_PERM], T1.[END_USER], T1.[ORDER_DISCOUNT_GRP], T1.[CONVERT_SOLD_TIME], T1.[INTEREST_CRED_ACCT], T1.[VAT_TABLE_VEHICLE], T1.[VAT_TABLE_WORK], T1.[VAT_TABLE_NORMAL], T1.[TAX_CODE], T1.[CODE_CUST_GROUP], T1.[SWED_DESCRIP_CODE], T1.[PMT_CHARGE_TYPE], T1.[TUP_CUST_GROUP], T1.[INVOICE_CATEGORY], T1.[CUSTOMER_CLASS], T1.[RECOMMENDED_PRICE_ID], T1.[CUST_GROUP_VEH], T1.[TRACKERPACK_CUST_GROUP], T1.[CITROEN_CUST_GROUP], T1.[ROUNDING_ACCOUNT_POSITIVE], T1.[CLASS_CUSTOMER_GROUP], T1.[DEFAULT_ORDER_STATUS], T1.[ADD_VAT_NOT_INVOICED], T1.[SEND_TO_AUTODESKTOP], T1.[SEND_TO_BILINFO], T1.[AVOID_OP_EXTRACT], T1.[MANDATORY_FIELD_CHECKS], T1.[SEND_TO_AUTOMASTER], T1.[SEND_TO_CARWEB2], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[vPP48] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP48_2" "[temp].[VPP48]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[VPP48] T1 INNER JOIN [OPTIMAX].[temp].[VPP48] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[CUSTOMER_GROUP] = T2.[CUSTOMER_GROUP]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[VPP48] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[VPP48] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VPP48_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VPP48_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/VPP4K.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==VPP4K==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\VPP4K*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[VPP4K]"
+  call bcp_queryout.bat "VPP4K_1" "SELECT T1.[FLEET_OWNER_CODE], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[SPECIFY], T1.[AOS_AUTO_CREDIT], T1.[AOS_SALESMAN_COMM], T1.[AOS_COM_OWN_OPTION], T1.[AOS_UPDATE_STAT], T1.[AOS_CODE], T1.[AOS_MONTH_BACK], T1.[AOS_AVERAGE], T1.[AOS_BOOK_GL], T1.[ACCT_NR], T1.[DEPARTMENT], T1.[VAT_RATE_CODE], T1.[TRANSACTION_CODE], T1.[AOS_PROVISION_CALC], T1.[AOS_VAT_ACCT_FLAG], T1.[NOVA_CALC_FLAG], T1.[FLEET_OWNER_GROUP], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[vPP4K] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP4K_1" "[import].[VPP4K]" "OPTIMA"
+  call bcp_queryout.bat "VPP4K_2" "SELECT T1.[FLEET_OWNER_CODE], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[SPECIFY], T1.[AOS_AUTO_CREDIT], T1.[AOS_SALESMAN_COMM], T1.[AOS_COM_OWN_OPTION], T1.[AOS_UPDATE_STAT], T1.[AOS_CODE], T1.[AOS_MONTH_BACK], T1.[AOS_AVERAGE], T1.[AOS_BOOK_GL], T1.[ACCT_NR], T1.[DEPARTMENT], T1.[VAT_RATE_CODE], T1.[TRANSACTION_CODE], T1.[AOS_PROVISION_CALC], T1.[AOS_VAT_ACCT_FLAG], T1.[NOVA_CALC_FLAG], T1.[FLEET_OWNER_GROUP], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[vPP4K] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP4K_2" "[import].[VPP4K]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[VPP4K]"
+
+  call sql_timestamp.bat "VPP4K_1" "[OPTIMA].[import].[VPP4K]" "1"
+  call bcp_queryout.bat "VPP4K_1" "SELECT T1.[FLEET_OWNER_CODE], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[SPECIFY], T1.[AOS_AUTO_CREDIT], T1.[AOS_SALESMAN_COMM], T1.[AOS_COM_OWN_OPTION], T1.[AOS_UPDATE_STAT], T1.[AOS_CODE], T1.[AOS_MONTH_BACK], T1.[AOS_AVERAGE], T1.[AOS_BOOK_GL], T1.[ACCT_NR], T1.[DEPARTMENT], T1.[VAT_RATE_CODE], T1.[TRANSACTION_CODE], T1.[AOS_PROVISION_CALC], T1.[AOS_VAT_ACCT_FLAG], T1.[NOVA_CALC_FLAG], T1.[FLEET_OWNER_GROUP], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[vPP4K] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP4K_1" "[temp].[VPP4K]" "OPTIMAX"
+
+  call sql_timestamp.bat "VPP4K_2" "[OPTIMA].[import].[VPP4K]" "2"
+  call bcp_queryout.bat "VPP4K_2" "SELECT T1.[FLEET_OWNER_CODE], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[SPECIFY], T1.[AOS_AUTO_CREDIT], T1.[AOS_SALESMAN_COMM], T1.[AOS_COM_OWN_OPTION], T1.[AOS_UPDATE_STAT], T1.[AOS_CODE], T1.[AOS_MONTH_BACK], T1.[AOS_AVERAGE], T1.[AOS_BOOK_GL], T1.[ACCT_NR], T1.[DEPARTMENT], T1.[VAT_RATE_CODE], T1.[TRANSACTION_CODE], T1.[AOS_PROVISION_CALC], T1.[AOS_VAT_ACCT_FLAG], T1.[NOVA_CALC_FLAG], T1.[FLEET_OWNER_GROUP], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[vPP4K] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP4K_2" "[temp].[VPP4K]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[VPP4K] T1 INNER JOIN [OPTIMAX].[temp].[VPP4K] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[FLEET_OWNER_CODE] = T2.[FLEET_OWNER_CODE]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[VPP4K] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[VPP4K] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VPP4K_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VPP4K_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/VPP51.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==VPP51==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\VPP51*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[VPP51]"
+  call bcp_queryout.bat "VPP51_1" "SELECT T1.[LINE_NO], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[NAME], T1.[LINE_TYPE], T1.[START_ACCT], T1.[END_ACCT], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[vPP51] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP51_1" "[import].[VPP51]" "OPTIMA"
+  call bcp_queryout.bat "VPP51_2" "SELECT T1.[LINE_NO], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[NAME], T1.[LINE_TYPE], T1.[START_ACCT], T1.[END_ACCT], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[vPP51] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP51_2" "[import].[VPP51]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[VPP51]"
+
+  call sql_timestamp.bat "VPP51_1" "[OPTIMA].[import].[VPP51]" "1"
+  call bcp_queryout.bat "VPP51_1" "SELECT T1.[LINE_NO], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[NAME], T1.[LINE_TYPE], T1.[START_ACCT], T1.[END_ACCT], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[vPP51] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP51_1" "[temp].[VPP51]" "OPTIMAX"
+
+  call sql_timestamp.bat "VPP51_2" "[OPTIMA].[import].[VPP51]" "2"
+  call bcp_queryout.bat "VPP51_2" "SELECT T1.[LINE_NO], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[NAME], T1.[LINE_TYPE], T1.[START_ACCT], T1.[END_ACCT], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[vPP51] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP51_2" "[temp].[VPP51]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[VPP51] T1 INNER JOIN [OPTIMAX].[temp].[VPP51] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[LINE_NO] = T2.[LINE_NO]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[VPP51] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[VPP51] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VPP51_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VPP51_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/VPP53.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==VPP53==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\VPP53*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[VPP53]"
+  call bcp_queryout.bat "VPP53_1" "SELECT T1.[LINE_NO], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[NAME], T1.[LINE_TYPE], T1.[START_ACCT], T1.[END_ACCT], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[vPP53] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP53_1" "[import].[VPP53]" "OPTIMA"
+  call bcp_queryout.bat "VPP53_2" "SELECT T1.[LINE_NO], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[NAME], T1.[LINE_TYPE], T1.[START_ACCT], T1.[END_ACCT], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[vPP53] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP53_2" "[import].[VPP53]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[VPP53]"
+
+  call sql_timestamp.bat "VPP53_1" "[OPTIMA].[import].[VPP53]" "1"
+  call bcp_queryout.bat "VPP53_1" "SELECT T1.[LINE_NO], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[NAME], T1.[LINE_TYPE], T1.[START_ACCT], T1.[END_ACCT], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[vPP53] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP53_1" "[temp].[VPP53]" "OPTIMAX"
+
+  call sql_timestamp.bat "VPP53_2" "[OPTIMA].[import].[VPP53]" "2"
+  call bcp_queryout.bat "VPP53_2" "SELECT T1.[LINE_NO], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[NAME], T1.[LINE_TYPE], T1.[START_ACCT], T1.[END_ACCT], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[vPP53] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP53_2" "[temp].[VPP53]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[VPP53] T1 INNER JOIN [OPTIMAX].[temp].[VPP53] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[LINE_NO] = T2.[LINE_NO]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[VPP53] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[VPP53] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VPP53_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VPP53_2.csv"

+ 34 - 0
System/OPTIMA/SQL/batch/VPP5A.bat

@@ -0,0 +1,34 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==VPP5A==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\VPP5A*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[VPP5A]"
+rem Nur in Quelle: VAT_RATE_CODE;ELE_VEHICLE_TRANSACTION;CASH_PAYMENT;RKSV_SIGNATURE
+  call bcp_queryout.bat "VPP5A_1" "SELECT T1.[TRANSACTION_CODE], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[SPECIFY], T1.[TRANSFER_CODE], T1.[VAT_ALLOWED], T1.[PRINT5A], T1.[SALES_PRICE], T1.[EQUIPMENT], T1.[DELIVERY_COST], T1.[PURCH_PRICE], T1.[DEPRECIATION], T1.[PPCALC_BLOCK_NO], T1.[PPCALC_FIELD_NO], T1.[COUNTER_ACCOUNT], T1.[PMT_TYPE], T1.[EXTRACT_VAT], T1.[CALC_DIFF_VAT], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[vPP5A] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP5A_1" "[import].[VPP5A]" "OPTIMA"
+rem Nur in Quelle: VAT_RATE_CODE;ELE_VEHICLE_TRANSACTION;CASH_PAYMENT;RKSV_SIGNATURE
+  call bcp_queryout.bat "VPP5A_2" "SELECT T1.[TRANSACTION_CODE], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[SPECIFY], T1.[TRANSFER_CODE], T1.[VAT_ALLOWED], T1.[PRINT5A], T1.[SALES_PRICE], T1.[EQUIPMENT], T1.[DELIVERY_COST], T1.[PURCH_PRICE], T1.[DEPRECIATION], T1.[PPCALC_BLOCK_NO], T1.[PPCALC_FIELD_NO], T1.[COUNTER_ACCOUNT], T1.[PMT_TYPE], T1.[EXTRACT_VAT], T1.[CALC_DIFF_VAT], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[vPP5A] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP5A_2" "[import].[VPP5A]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[VPP5A]"
+
+  call sql_timestamp.bat "VPP5A_1" "[OPTIMA].[import].[VPP5A]" "1"
+  call bcp_queryout.bat "VPP5A_1" "SELECT T1.[TRANSACTION_CODE], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[SPECIFY], T1.[TRANSFER_CODE], T1.[VAT_ALLOWED], T1.[PRINT5A], T1.[SALES_PRICE], T1.[EQUIPMENT], T1.[DELIVERY_COST], T1.[PURCH_PRICE], T1.[DEPRECIATION], T1.[PPCALC_BLOCK_NO], T1.[PPCALC_FIELD_NO], T1.[COUNTER_ACCOUNT], T1.[PMT_TYPE], T1.[EXTRACT_VAT], T1.[CALC_DIFF_VAT], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[vPP5A] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP5A_1" "[temp].[VPP5A]" "OPTIMAX"
+
+  call sql_timestamp.bat "VPP5A_2" "[OPTIMA].[import].[VPP5A]" "2"
+  call bcp_queryout.bat "VPP5A_2" "SELECT T1.[TRANSACTION_CODE], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[SPECIFY], T1.[TRANSFER_CODE], T1.[VAT_ALLOWED], T1.[PRINT5A], T1.[SALES_PRICE], T1.[EQUIPMENT], T1.[DELIVERY_COST], T1.[PURCH_PRICE], T1.[DEPRECIATION], T1.[PPCALC_BLOCK_NO], T1.[PPCALC_FIELD_NO], T1.[COUNTER_ACCOUNT], T1.[PMT_TYPE], T1.[EXTRACT_VAT], T1.[CALC_DIFF_VAT], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[vPP5A] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP5A_2" "[temp].[VPP5A]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[VPP5A] T1 INNER JOIN [OPTIMAX].[temp].[VPP5A] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[TRANSACTION_CODE] = T2.[TRANSACTION_CODE]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[VPP5A] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[VPP5A] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VPP5A_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VPP5A_2.csv"

+ 34 - 0
System/OPTIMA/SQL/batch/VPP5M.bat

@@ -0,0 +1,34 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==VPP5M==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\VPP5M*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[VPP5M]"
+rem Nur in Quelle: SPECIAL_DEMO
+  call bcp_queryout.bat "VPP5M_1" "SELECT T1.[BOOK_KEEPING_CODE], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[SPECIFY], T1.[DEMOCARS], T1.[BOOK_NO_SALE], T1.[BOOK_NO_PURCH], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[vPP5M] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP5M_1" "[import].[VPP5M]" "OPTIMA"
+rem Nur in Quelle: SPECIAL_DEMO
+  call bcp_queryout.bat "VPP5M_2" "SELECT T1.[BOOK_KEEPING_CODE], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[SPECIFY], T1.[DEMOCARS], T1.[BOOK_NO_SALE], T1.[BOOK_NO_PURCH], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[vPP5M] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP5M_2" "[import].[VPP5M]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[VPP5M]"
+
+  call sql_timestamp.bat "VPP5M_1" "[OPTIMA].[import].[VPP5M]" "1"
+  call bcp_queryout.bat "VPP5M_1" "SELECT T1.[BOOK_KEEPING_CODE], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[SPECIFY], T1.[DEMOCARS], T1.[BOOK_NO_SALE], T1.[BOOK_NO_PURCH], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[vPP5M] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP5M_1" "[temp].[VPP5M]" "OPTIMAX"
+
+  call sql_timestamp.bat "VPP5M_2" "[OPTIMA].[import].[VPP5M]" "2"
+  call bcp_queryout.bat "VPP5M_2" "SELECT T1.[BOOK_KEEPING_CODE], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[SPECIFY], T1.[DEMOCARS], T1.[BOOK_NO_SALE], T1.[BOOK_NO_PURCH], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[vPP5M] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP5M_2" "[temp].[VPP5M]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[VPP5M] T1 INNER JOIN [OPTIMAX].[temp].[VPP5M] T2 ON T1.[BOOK_KEEPING_CODE] = T2.[BOOK_KEEPING_CODE] AND T1.[CLIENT_DB] = T2.[CLIENT_DB]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[VPP5M] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[VPP5M] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VPP5M_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VPP5M_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/VPP5Q.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==VPP5Q==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\VPP5Q*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[VPP5Q]"
+  call bcp_queryout.bat "VPP5Q_1" "SELECT T1.[MAKE_CD], T1.[MODEL_LINE], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[MOD_LIN_SPECIFY], T1.[MOD_LIN_OWN_OPT_1], T1.[MOD_LIN_OWN_OPT_2], T1.[MOD_LIN_OWN_OPT_3], T1.[MOD_LIN_OWN_OPT_4], T1.[MOD_LIN_OWN_OPT_5], T1.[EDICS_PRICECALC], T1.[EDICS_MODEL_01], T1.[EDICS_MODEL_02], T1.[EDICS_MODEL_03], T1.[EDICS_MODEL_04], T1.[EDICS_MODEL_05], T1.[EDICS_MODEL_06], T1.[EDICS_MODEL_07], T1.[EDICS_MODEL_08], T1.[EDICS_MODEL_09], T1.[EDICS_MODEL_10], T1.[EDICS_MODEL_11], T1.[EDICS_MODEL_12], T1.[EDICS_MODEL_13], T1.[EDICS_MODEL_14], T1.[EDICS_MODEL_15], T1.[EDICS_MODEL_16], T1.[EDICS_MODEL_17], T1.[EDICS_MODEL_18], T1.[EDICS_MODEL_19], T1.[EDICS_MODEL_20], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[vPP5Q] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP5Q_1" "[import].[VPP5Q]" "OPTIMA"
+  call bcp_queryout.bat "VPP5Q_2" "SELECT T1.[MAKE_CD], T1.[MODEL_LINE], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[MOD_LIN_SPECIFY], T1.[MOD_LIN_OWN_OPT_1], T1.[MOD_LIN_OWN_OPT_2], T1.[MOD_LIN_OWN_OPT_3], T1.[MOD_LIN_OWN_OPT_4], T1.[MOD_LIN_OWN_OPT_5], T1.[EDICS_PRICECALC], T1.[EDICS_MODEL_01], T1.[EDICS_MODEL_02], T1.[EDICS_MODEL_03], T1.[EDICS_MODEL_04], T1.[EDICS_MODEL_05], T1.[EDICS_MODEL_06], T1.[EDICS_MODEL_07], T1.[EDICS_MODEL_08], T1.[EDICS_MODEL_09], T1.[EDICS_MODEL_10], T1.[EDICS_MODEL_11], T1.[EDICS_MODEL_12], T1.[EDICS_MODEL_13], T1.[EDICS_MODEL_14], T1.[EDICS_MODEL_15], T1.[EDICS_MODEL_16], T1.[EDICS_MODEL_17], T1.[EDICS_MODEL_18], T1.[EDICS_MODEL_19], T1.[EDICS_MODEL_20], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[vPP5Q] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP5Q_2" "[import].[VPP5Q]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[VPP5Q]"
+
+  call sql_timestamp.bat "VPP5Q_1" "[OPTIMA].[import].[VPP5Q]" "1"
+  call bcp_queryout.bat "VPP5Q_1" "SELECT T1.[MAKE_CD], T1.[MODEL_LINE], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[MOD_LIN_SPECIFY], T1.[MOD_LIN_OWN_OPT_1], T1.[MOD_LIN_OWN_OPT_2], T1.[MOD_LIN_OWN_OPT_3], T1.[MOD_LIN_OWN_OPT_4], T1.[MOD_LIN_OWN_OPT_5], T1.[EDICS_PRICECALC], T1.[EDICS_MODEL_01], T1.[EDICS_MODEL_02], T1.[EDICS_MODEL_03], T1.[EDICS_MODEL_04], T1.[EDICS_MODEL_05], T1.[EDICS_MODEL_06], T1.[EDICS_MODEL_07], T1.[EDICS_MODEL_08], T1.[EDICS_MODEL_09], T1.[EDICS_MODEL_10], T1.[EDICS_MODEL_11], T1.[EDICS_MODEL_12], T1.[EDICS_MODEL_13], T1.[EDICS_MODEL_14], T1.[EDICS_MODEL_15], T1.[EDICS_MODEL_16], T1.[EDICS_MODEL_17], T1.[EDICS_MODEL_18], T1.[EDICS_MODEL_19], T1.[EDICS_MODEL_20], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[vPP5Q] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP5Q_1" "[temp].[VPP5Q]" "OPTIMAX"
+
+  call sql_timestamp.bat "VPP5Q_2" "[OPTIMA].[import].[VPP5Q]" "2"
+  call bcp_queryout.bat "VPP5Q_2" "SELECT T1.[MAKE_CD], T1.[MODEL_LINE], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[MOD_LIN_SPECIFY], T1.[MOD_LIN_OWN_OPT_1], T1.[MOD_LIN_OWN_OPT_2], T1.[MOD_LIN_OWN_OPT_3], T1.[MOD_LIN_OWN_OPT_4], T1.[MOD_LIN_OWN_OPT_5], T1.[EDICS_PRICECALC], T1.[EDICS_MODEL_01], T1.[EDICS_MODEL_02], T1.[EDICS_MODEL_03], T1.[EDICS_MODEL_04], T1.[EDICS_MODEL_05], T1.[EDICS_MODEL_06], T1.[EDICS_MODEL_07], T1.[EDICS_MODEL_08], T1.[EDICS_MODEL_09], T1.[EDICS_MODEL_10], T1.[EDICS_MODEL_11], T1.[EDICS_MODEL_12], T1.[EDICS_MODEL_13], T1.[EDICS_MODEL_14], T1.[EDICS_MODEL_15], T1.[EDICS_MODEL_16], T1.[EDICS_MODEL_17], T1.[EDICS_MODEL_18], T1.[EDICS_MODEL_19], T1.[EDICS_MODEL_20], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[vPP5Q] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP5Q_2" "[temp].[VPP5Q]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[VPP5Q] T1 INNER JOIN [OPTIMAX].[temp].[VPP5Q] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[MAKE_CD] = T2.[MAKE_CD] AND T1.[MODEL_LINE] = T2.[MODEL_LINE]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[VPP5Q] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[VPP5Q] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VPP5Q_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VPP5Q_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/VPP5R.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==VPP5R==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\VPP5R*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[VPP5R]"
+  call bcp_queryout.bat "VPP5R_1" "SELECT T1.[VEHICLE_TYPE], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[VEHICLE_TYPE_TEXT], T1.[VEHICLE_TYPE_NEW], T1.[COST_ACC_USED], T1.[BONUS_ACC_USED], T1.[USE_DELIVERY_STOP_DAYS], T1.[DELIVERY_STOP_AFTER_DAYS], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[vPP5R] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP5R_1" "[import].[VPP5R]" "OPTIMA"
+  call bcp_queryout.bat "VPP5R_2" "SELECT T1.[VEHICLE_TYPE], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[VEHICLE_TYPE_TEXT], T1.[VEHICLE_TYPE_NEW], T1.[COST_ACC_USED], T1.[BONUS_ACC_USED], T1.[USE_DELIVERY_STOP_DAYS], T1.[DELIVERY_STOP_AFTER_DAYS], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[vPP5R] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP5R_2" "[import].[VPP5R]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[VPP5R]"
+
+  call sql_timestamp.bat "VPP5R_1" "[OPTIMA].[import].[VPP5R]" "1"
+  call bcp_queryout.bat "VPP5R_1" "SELECT T1.[VEHICLE_TYPE], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[VEHICLE_TYPE_TEXT], T1.[VEHICLE_TYPE_NEW], T1.[COST_ACC_USED], T1.[BONUS_ACC_USED], T1.[USE_DELIVERY_STOP_DAYS], T1.[DELIVERY_STOP_AFTER_DAYS], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[vPP5R] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP5R_1" "[temp].[VPP5R]" "OPTIMAX"
+
+  call sql_timestamp.bat "VPP5R_2" "[OPTIMA].[import].[VPP5R]" "2"
+  call bcp_queryout.bat "VPP5R_2" "SELECT T1.[VEHICLE_TYPE], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[VEHICLE_TYPE_TEXT], T1.[VEHICLE_TYPE_NEW], T1.[COST_ACC_USED], T1.[BONUS_ACC_USED], T1.[USE_DELIVERY_STOP_DAYS], T1.[DELIVERY_STOP_AFTER_DAYS], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[vPP5R] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP5R_2" "[temp].[VPP5R]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[VPP5R] T1 INNER JOIN [OPTIMAX].[temp].[VPP5R] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[VEHICLE_TYPE] = T2.[VEHICLE_TYPE]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[VPP5R] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[VPP5R] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VPP5R_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VPP5R_2.csv"

+ 34 - 0
System/OPTIMA/SQL/batch/VPP61.bat

@@ -0,0 +1,34 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==VPP61==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\VPP61*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[VPP61]"
+rem Nur in Quelle: LEXUS_DEALER;BRANCH_NO_2;FIAT_DEALER;DACIA_DEALER
+  call bcp_queryout.bat "VPP61_1" "SELECT T1.[STOCK], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[STOCK_NAME], T1.[STOCK_INTEREST], T1.[SERVICE_FACTOR_ALPHA], T1.[SERVICE_FACTOR], T1.[BEH_CHECK], T1.[LOCKED], T1.[LOCKED_TEXT], T1.[LOCKED_TEXT1], T1.[LOCKED_TEXT2], T1.[ZERO_QNT_LIST], T1.[NOCARD_ON_ZERO_LIST], T1.[TOYOTA_DEALER], T1.[VOLVO_DEALER], T1.[CALC_MIN_IN_STOCK], T1.[FORD_DEALER], T1.[GOD_DEALER], T1.[UDAS_HANDLER], T1.[BRANCH_NO], T1.[FORD_STOCK_ID], T1.[FORD_PART_DEALER], T1.[PSA_F_DEALER], T1.[NCG_DEALER], T1.[RENAULT_DEALER], T1.[VO_DEALER], T1.[OPEL_COMM_DEALER], T1.[OPEL_DEALER], T1.[USE_SECTIONS], T1.[USE_TOTAL_CHECK], T1.[USE_FIRST_PART_CHECK], T1.[USE_RE_COUNT], T1.[FREEZE], T1.[FORM_STOCK_VARIANCE], T1.[FORM_INVENTORY], T1.[FUNC_STOCK_CHECK], T1.[LINES_PER_SECTION], T1.[DIFF_LIST_WANTED], T1.[BLOCK_NEGATIVE_STOCK], T1.[LIST_NO_SERIES], T1.[DUMMY_LIST_NO_SERIES], T1.[LIST_EXT_NO_SERIES], T1.[EXT_JOB_NO_SERIES], T1.[APPROVE_BEFORE_INTAKE], T1.[BACK_ORDER_PERM], T1.[IV_SUB_DEALER_NO], T1.[SPEC_PURCH_PRICE], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[vPP61] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP61_1" "[import].[VPP61]" "OPTIMA"
+rem Nur in Quelle: LEXUS_DEALER;BRANCH_NO_2;FIAT_DEALER;DACIA_DEALER
+  call bcp_queryout.bat "VPP61_2" "SELECT T1.[STOCK], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[STOCK_NAME], T1.[STOCK_INTEREST], T1.[SERVICE_FACTOR_ALPHA], T1.[SERVICE_FACTOR], T1.[BEH_CHECK], T1.[LOCKED], T1.[LOCKED_TEXT], T1.[LOCKED_TEXT1], T1.[LOCKED_TEXT2], T1.[ZERO_QNT_LIST], T1.[NOCARD_ON_ZERO_LIST], T1.[TOYOTA_DEALER], T1.[VOLVO_DEALER], T1.[CALC_MIN_IN_STOCK], T1.[FORD_DEALER], T1.[GOD_DEALER], T1.[UDAS_HANDLER], T1.[BRANCH_NO], T1.[FORD_STOCK_ID], T1.[FORD_PART_DEALER], T1.[PSA_F_DEALER], T1.[NCG_DEALER], T1.[RENAULT_DEALER], T1.[VO_DEALER], T1.[OPEL_COMM_DEALER], T1.[OPEL_DEALER], T1.[USE_SECTIONS], T1.[USE_TOTAL_CHECK], T1.[USE_FIRST_PART_CHECK], T1.[USE_RE_COUNT], T1.[FREEZE], T1.[FORM_STOCK_VARIANCE], T1.[FORM_INVENTORY], T1.[FUNC_STOCK_CHECK], T1.[LINES_PER_SECTION], T1.[DIFF_LIST_WANTED], T1.[BLOCK_NEGATIVE_STOCK], T1.[LIST_NO_SERIES], T1.[DUMMY_LIST_NO_SERIES], T1.[LIST_EXT_NO_SERIES], T1.[EXT_JOB_NO_SERIES], T1.[APPROVE_BEFORE_INTAKE], T1.[BACK_ORDER_PERM], T1.[IV_SUB_DEALER_NO], T1.[SPEC_PURCH_PRICE], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[vPP61] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP61_2" "[import].[VPP61]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[VPP61]"
+
+  call sql_timestamp.bat "VPP61_1" "[OPTIMA].[import].[VPP61]" "1"
+  call bcp_queryout.bat "VPP61_1" "SELECT T1.[STOCK], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[STOCK_NAME], T1.[STOCK_INTEREST], T1.[SERVICE_FACTOR_ALPHA], T1.[SERVICE_FACTOR], T1.[BEH_CHECK], T1.[LOCKED], T1.[LOCKED_TEXT], T1.[LOCKED_TEXT1], T1.[LOCKED_TEXT2], T1.[ZERO_QNT_LIST], T1.[NOCARD_ON_ZERO_LIST], T1.[TOYOTA_DEALER], T1.[VOLVO_DEALER], T1.[CALC_MIN_IN_STOCK], T1.[FORD_DEALER], T1.[GOD_DEALER], T1.[UDAS_HANDLER], T1.[BRANCH_NO], T1.[FORD_STOCK_ID], T1.[FORD_PART_DEALER], T1.[PSA_F_DEALER], T1.[NCG_DEALER], T1.[RENAULT_DEALER], T1.[VO_DEALER], T1.[OPEL_COMM_DEALER], T1.[OPEL_DEALER], T1.[USE_SECTIONS], T1.[USE_TOTAL_CHECK], T1.[USE_FIRST_PART_CHECK], T1.[USE_RE_COUNT], T1.[FREEZE], T1.[FORM_STOCK_VARIANCE], T1.[FORM_INVENTORY], T1.[FUNC_STOCK_CHECK], T1.[LINES_PER_SECTION], T1.[DIFF_LIST_WANTED], T1.[BLOCK_NEGATIVE_STOCK], T1.[LIST_NO_SERIES], T1.[DUMMY_LIST_NO_SERIES], T1.[LIST_EXT_NO_SERIES], T1.[EXT_JOB_NO_SERIES], T1.[APPROVE_BEFORE_INTAKE], T1.[BACK_ORDER_PERM], T1.[IV_SUB_DEALER_NO], T1.[SPEC_PURCH_PRICE], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[vPP61] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP61_1" "[temp].[VPP61]" "OPTIMAX"
+
+  call sql_timestamp.bat "VPP61_2" "[OPTIMA].[import].[VPP61]" "2"
+  call bcp_queryout.bat "VPP61_2" "SELECT T1.[STOCK], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[STOCK_NAME], T1.[STOCK_INTEREST], T1.[SERVICE_FACTOR_ALPHA], T1.[SERVICE_FACTOR], T1.[BEH_CHECK], T1.[LOCKED], T1.[LOCKED_TEXT], T1.[LOCKED_TEXT1], T1.[LOCKED_TEXT2], T1.[ZERO_QNT_LIST], T1.[NOCARD_ON_ZERO_LIST], T1.[TOYOTA_DEALER], T1.[VOLVO_DEALER], T1.[CALC_MIN_IN_STOCK], T1.[FORD_DEALER], T1.[GOD_DEALER], T1.[UDAS_HANDLER], T1.[BRANCH_NO], T1.[FORD_STOCK_ID], T1.[FORD_PART_DEALER], T1.[PSA_F_DEALER], T1.[NCG_DEALER], T1.[RENAULT_DEALER], T1.[VO_DEALER], T1.[OPEL_COMM_DEALER], T1.[OPEL_DEALER], T1.[USE_SECTIONS], T1.[USE_TOTAL_CHECK], T1.[USE_FIRST_PART_CHECK], T1.[USE_RE_COUNT], T1.[FREEZE], T1.[FORM_STOCK_VARIANCE], T1.[FORM_INVENTORY], T1.[FUNC_STOCK_CHECK], T1.[LINES_PER_SECTION], T1.[DIFF_LIST_WANTED], T1.[BLOCK_NEGATIVE_STOCK], T1.[LIST_NO_SERIES], T1.[DUMMY_LIST_NO_SERIES], T1.[LIST_EXT_NO_SERIES], T1.[EXT_JOB_NO_SERIES], T1.[APPROVE_BEFORE_INTAKE], T1.[BACK_ORDER_PERM], T1.[IV_SUB_DEALER_NO], T1.[SPEC_PURCH_PRICE], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[vPP61] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP61_2" "[temp].[VPP61]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[VPP61] T1 INNER JOIN [OPTIMAX].[temp].[VPP61] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[STOCK] = T2.[STOCK]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[VPP61] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[VPP61] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VPP61_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VPP61_2.csv"

+ 34 - 0
System/OPTIMA/SQL/batch/VPP65.bat

@@ -0,0 +1,34 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==VPP65==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\VPP65*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[VPP65]"
+rem Nur in Quelle: SKR51_PRODUCT_GROUP
+  call bcp_queryout.bat "VPP65_1" "SELECT T1.[PRODUCT_GROUP], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROD_GRP_SPECIFY], T1.[COEFF], T1.[COST_PERC], T1.[DEPARTMENT_10], T1.[LINE_MISC_ADDS_PER], T1.[SALES_ACCOUNT], T1.[PRICE_TYPE_PROD_1], T1.[PRICE_TYPE_PROD_2], T1.[PRICE_TYPE_PROD_3], T1.[PRICE_TYPE_PROD_4], T1.[PRICE_TYPE_PROD_5], T1.[PROD_SORT_KEY], T1.[PROD_GRP_CHECK], T1.[INVOICE_TOTAL_NO], T1.[BACK_ORDER_PERM], T1.[ORIG_PROD_GRP], T1.[FB_STATISTIC], T1.[FORD_PART], T1.[SALES_PRICE_ZERO], T1.[DC2000_PROD_GRP], T1.[SHORT_COMMUNITY], T1.[RETURN_ALLOWED], T1.[OPEL_PART], T1.[MAKE_CD], T1.[PURCH_PROD_GRP], T1.[PRODUCT_GROUP_TP], T1.[VR_PART], T1.[USE_ONE_CORE_PART], T1.[PRODUCT_GROUP_CORE_PART], T1.[TOYOTA_PART], T1.[SPEC_PURCH_PRICE], T1.[DEFAULT_SUPPLIER], T1.[DISTINCT_DISC], T1.[PRINT_DANGEROUS_CD], T1.[STRATEGIC_AREA], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[vPP65] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP65_1" "[import].[VPP65]" "OPTIMA"
+rem Nur in Quelle: SKR51_PRODUCT_GROUP
+  call bcp_queryout.bat "VPP65_2" "SELECT T1.[PRODUCT_GROUP], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROD_GRP_SPECIFY], T1.[COEFF], T1.[COST_PERC], T1.[DEPARTMENT_10], T1.[LINE_MISC_ADDS_PER], T1.[SALES_ACCOUNT], T1.[PRICE_TYPE_PROD_1], T1.[PRICE_TYPE_PROD_2], T1.[PRICE_TYPE_PROD_3], T1.[PRICE_TYPE_PROD_4], T1.[PRICE_TYPE_PROD_5], T1.[PROD_SORT_KEY], T1.[PROD_GRP_CHECK], T1.[INVOICE_TOTAL_NO], T1.[BACK_ORDER_PERM], T1.[ORIG_PROD_GRP], T1.[FB_STATISTIC], T1.[FORD_PART], T1.[SALES_PRICE_ZERO], T1.[DC2000_PROD_GRP], T1.[SHORT_COMMUNITY], T1.[RETURN_ALLOWED], T1.[OPEL_PART], T1.[MAKE_CD], T1.[PURCH_PROD_GRP], T1.[PRODUCT_GROUP_TP], T1.[VR_PART], T1.[USE_ONE_CORE_PART], T1.[PRODUCT_GROUP_CORE_PART], T1.[TOYOTA_PART], T1.[SPEC_PURCH_PRICE], T1.[DEFAULT_SUPPLIER], T1.[DISTINCT_DISC], T1.[PRINT_DANGEROUS_CD], T1.[STRATEGIC_AREA], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[vPP65] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP65_2" "[import].[VPP65]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[VPP65]"
+
+  call sql_timestamp.bat "VPP65_1" "[OPTIMA].[import].[VPP65]" "1"
+  call bcp_queryout.bat "VPP65_1" "SELECT T1.[PRODUCT_GROUP], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROD_GRP_SPECIFY], T1.[COEFF], T1.[COST_PERC], T1.[DEPARTMENT_10], T1.[LINE_MISC_ADDS_PER], T1.[SALES_ACCOUNT], T1.[PRICE_TYPE_PROD_1], T1.[PRICE_TYPE_PROD_2], T1.[PRICE_TYPE_PROD_3], T1.[PRICE_TYPE_PROD_4], T1.[PRICE_TYPE_PROD_5], T1.[PROD_SORT_KEY], T1.[PROD_GRP_CHECK], T1.[INVOICE_TOTAL_NO], T1.[BACK_ORDER_PERM], T1.[ORIG_PROD_GRP], T1.[FB_STATISTIC], T1.[FORD_PART], T1.[SALES_PRICE_ZERO], T1.[DC2000_PROD_GRP], T1.[SHORT_COMMUNITY], T1.[RETURN_ALLOWED], T1.[OPEL_PART], T1.[MAKE_CD], T1.[PURCH_PROD_GRP], T1.[PRODUCT_GROUP_TP], T1.[VR_PART], T1.[USE_ONE_CORE_PART], T1.[PRODUCT_GROUP_CORE_PART], T1.[TOYOTA_PART], T1.[SPEC_PURCH_PRICE], T1.[DEFAULT_SUPPLIER], T1.[DISTINCT_DISC], T1.[PRINT_DANGEROUS_CD], T1.[STRATEGIC_AREA], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[vPP65] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP65_1" "[temp].[VPP65]" "OPTIMAX"
+
+  call sql_timestamp.bat "VPP65_2" "[OPTIMA].[import].[VPP65]" "2"
+  call bcp_queryout.bat "VPP65_2" "SELECT T1.[PRODUCT_GROUP], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROD_GRP_SPECIFY], T1.[COEFF], T1.[COST_PERC], T1.[DEPARTMENT_10], T1.[LINE_MISC_ADDS_PER], T1.[SALES_ACCOUNT], T1.[PRICE_TYPE_PROD_1], T1.[PRICE_TYPE_PROD_2], T1.[PRICE_TYPE_PROD_3], T1.[PRICE_TYPE_PROD_4], T1.[PRICE_TYPE_PROD_5], T1.[PROD_SORT_KEY], T1.[PROD_GRP_CHECK], T1.[INVOICE_TOTAL_NO], T1.[BACK_ORDER_PERM], T1.[ORIG_PROD_GRP], T1.[FB_STATISTIC], T1.[FORD_PART], T1.[SALES_PRICE_ZERO], T1.[DC2000_PROD_GRP], T1.[SHORT_COMMUNITY], T1.[RETURN_ALLOWED], T1.[OPEL_PART], T1.[MAKE_CD], T1.[PURCH_PROD_GRP], T1.[PRODUCT_GROUP_TP], T1.[VR_PART], T1.[USE_ONE_CORE_PART], T1.[PRODUCT_GROUP_CORE_PART], T1.[TOYOTA_PART], T1.[SPEC_PURCH_PRICE], T1.[DEFAULT_SUPPLIER], T1.[DISTINCT_DISC], T1.[PRINT_DANGEROUS_CD], T1.[STRATEGIC_AREA], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[vPP65] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP65_2" "[temp].[VPP65]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[VPP65] T1 INNER JOIN [OPTIMAX].[temp].[VPP65] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[PRODUCT_GROUP] = T2.[PRODUCT_GROUP]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[VPP65] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[VPP65] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VPP65_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VPP65_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/VPP72.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==VPP72==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\VPP72*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[VPP72]"
+  call bcp_queryout.bat "VPP72_1" "SELECT T1.[WORKSHOP_PRICECODE], T1.[PRICE_CATEGORY], T1.[WORKSHOP_MODEL], T1.[MAKE_CD], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[NAME], T1.[PRICE_1], T1.[RUNNO_1], T1.[PRICE_2], T1.[RUNNO_2], T1.[PRICE_3], T1.[RUNNO_3], T1.[PRICE_4], T1.[RUNNO_4], T1.[PRICE_5], T1.[RUNNO_5], T1.[PRICE_6], T1.[RUNNO_6], T1.[PRICE_7], T1.[RUNNO_7], T1.[PRICE_8], T1.[RUNNO_8], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[vPP72] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP72_1" "[import].[VPP72]" "OPTIMA"
+  call bcp_queryout.bat "VPP72_2" "SELECT T1.[WORKSHOP_PRICECODE], T1.[PRICE_CATEGORY], T1.[WORKSHOP_MODEL], T1.[MAKE_CD], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[NAME], T1.[PRICE_1], T1.[RUNNO_1], T1.[PRICE_2], T1.[RUNNO_2], T1.[PRICE_3], T1.[RUNNO_3], T1.[PRICE_4], T1.[RUNNO_4], T1.[PRICE_5], T1.[RUNNO_5], T1.[PRICE_6], T1.[RUNNO_6], T1.[PRICE_7], T1.[RUNNO_7], T1.[PRICE_8], T1.[RUNNO_8], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[vPP72] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP72_2" "[import].[VPP72]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[VPP72]"
+
+  call sql_timestamp.bat "VPP72_1" "[OPTIMA].[import].[VPP72]" "1"
+  call bcp_queryout.bat "VPP72_1" "SELECT T1.[WORKSHOP_PRICECODE], T1.[PRICE_CATEGORY], T1.[WORKSHOP_MODEL], T1.[MAKE_CD], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[NAME], T1.[PRICE_1], T1.[RUNNO_1], T1.[PRICE_2], T1.[RUNNO_2], T1.[PRICE_3], T1.[RUNNO_3], T1.[PRICE_4], T1.[RUNNO_4], T1.[PRICE_5], T1.[RUNNO_5], T1.[PRICE_6], T1.[RUNNO_6], T1.[PRICE_7], T1.[RUNNO_7], T1.[PRICE_8], T1.[RUNNO_8], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[vPP72] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP72_1" "[temp].[VPP72]" "OPTIMAX"
+
+  call sql_timestamp.bat "VPP72_2" "[OPTIMA].[import].[VPP72]" "2"
+  call bcp_queryout.bat "VPP72_2" "SELECT T1.[WORKSHOP_PRICECODE], T1.[PRICE_CATEGORY], T1.[WORKSHOP_MODEL], T1.[MAKE_CD], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[NAME], T1.[PRICE_1], T1.[RUNNO_1], T1.[PRICE_2], T1.[RUNNO_2], T1.[PRICE_3], T1.[RUNNO_3], T1.[PRICE_4], T1.[RUNNO_4], T1.[PRICE_5], T1.[RUNNO_5], T1.[PRICE_6], T1.[RUNNO_6], T1.[PRICE_7], T1.[RUNNO_7], T1.[PRICE_8], T1.[RUNNO_8], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[vPP72] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP72_2" "[temp].[VPP72]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[VPP72] T1 INNER JOIN [OPTIMAX].[temp].[VPP72] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[MAKE_CD] = T2.[MAKE_CD] AND T1.[PRICE_CATEGORY] = T2.[PRICE_CATEGORY] AND T1.[WORKSHOP_PRICECODE] = T2.[WORKSHOP_PRICECODE]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[VPP72] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[VPP72] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VPP72_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VPP72_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/VPP73.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==VPP73==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\VPP73*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[VPP73]"
+  call bcp_queryout.bat "VPP73_1" "SELECT T1.[REPAIR_GROUP], T1.[MAKE_CD], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[REPAIR_GRP_SPECIFY], T1.[ADD_PERC], T1.[REPAIR_CODE1], T1.[REPAIR_POS], T1.[REPAIR_STATISTIC_CODE], T1.[SKILL_CODE], T1.[REPAIR_GROUP_TYPE], T1.[FACTOR], T1.[CALC_OWN_REPAIR], T1.[CALC_CENTR_REPAIR], T1.[REPAIR_CALC_TYPE], T1.[MONTH], T1.[REPAIR_GROUP_TP], T1.[REPAIR_GROUP_TYPE2], T1.[JOB_TYPE], T1.[OPERATION_TYPE], T1.[INTERVENTION_TYPE], T1.[REPAIR_COLUMN], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[vPP73] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP73_1" "[import].[VPP73]" "OPTIMA"
+  call bcp_queryout.bat "VPP73_2" "SELECT T1.[REPAIR_GROUP], T1.[MAKE_CD], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[REPAIR_GRP_SPECIFY], T1.[ADD_PERC], T1.[REPAIR_CODE1], T1.[REPAIR_POS], T1.[REPAIR_STATISTIC_CODE], T1.[SKILL_CODE], T1.[REPAIR_GROUP_TYPE], T1.[FACTOR], T1.[CALC_OWN_REPAIR], T1.[CALC_CENTR_REPAIR], T1.[REPAIR_CALC_TYPE], T1.[MONTH], T1.[REPAIR_GROUP_TP], T1.[REPAIR_GROUP_TYPE2], T1.[JOB_TYPE], T1.[OPERATION_TYPE], T1.[INTERVENTION_TYPE], T1.[REPAIR_COLUMN], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[vPP73] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP73_2" "[import].[VPP73]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[VPP73]"
+
+  call sql_timestamp.bat "VPP73_1" "[OPTIMA].[import].[VPP73]" "1"
+  call bcp_queryout.bat "VPP73_1" "SELECT T1.[REPAIR_GROUP], T1.[MAKE_CD], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[REPAIR_GRP_SPECIFY], T1.[ADD_PERC], T1.[REPAIR_CODE1], T1.[REPAIR_POS], T1.[REPAIR_STATISTIC_CODE], T1.[SKILL_CODE], T1.[REPAIR_GROUP_TYPE], T1.[FACTOR], T1.[CALC_OWN_REPAIR], T1.[CALC_CENTR_REPAIR], T1.[REPAIR_CALC_TYPE], T1.[MONTH], T1.[REPAIR_GROUP_TP], T1.[REPAIR_GROUP_TYPE2], T1.[JOB_TYPE], T1.[OPERATION_TYPE], T1.[INTERVENTION_TYPE], T1.[REPAIR_COLUMN], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[vPP73] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP73_1" "[temp].[VPP73]" "OPTIMAX"
+
+  call sql_timestamp.bat "VPP73_2" "[OPTIMA].[import].[VPP73]" "2"
+  call bcp_queryout.bat "VPP73_2" "SELECT T1.[REPAIR_GROUP], T1.[MAKE_CD], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[REPAIR_GRP_SPECIFY], T1.[ADD_PERC], T1.[REPAIR_CODE1], T1.[REPAIR_POS], T1.[REPAIR_STATISTIC_CODE], T1.[SKILL_CODE], T1.[REPAIR_GROUP_TYPE], T1.[FACTOR], T1.[CALC_OWN_REPAIR], T1.[CALC_CENTR_REPAIR], T1.[REPAIR_CALC_TYPE], T1.[MONTH], T1.[REPAIR_GROUP_TP], T1.[REPAIR_GROUP_TYPE2], T1.[JOB_TYPE], T1.[OPERATION_TYPE], T1.[INTERVENTION_TYPE], T1.[REPAIR_COLUMN], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[vPP73] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP73_2" "[temp].[VPP73]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[VPP73] T1 INNER JOIN [OPTIMAX].[temp].[VPP73] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[MAKE_CD] = T2.[MAKE_CD] AND T1.[REPAIR_GROUP] = T2.[REPAIR_GROUP]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[VPP73] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[VPP73] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VPP73_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VPP73_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/VPP74.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==VPP74==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\VPP74*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[VPP74]"
+  call bcp_queryout.bat "VPP74_1" "SELECT T1.[WORKSHOP_MODEL], T1.[MAKE_CD], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[MODEL_TEXT], T1.[ORIG_MODEL_CODE], T1.[CLAIM_TYPE], T1.[PRODUCT_LINE], T1.[MNEMONIC_1], T1.[MNEMONIC_2], T1.[MODEL_TYPE], T1.[MODEL_GROUP], T1.[FACTORY_CLAIM_CODE], T1.[MODEL_LINE_OSP], T1.[CALL_FOR_SERVICE], T1.[FOLLOW_UP_CODE_1], T1.[FOLLOW_UP_CODE_2], T1.[FOLLOW_UP_CODE_3], T1.[FOLLOW_UP_CODE_4], T1.[FOLLOW_UP_CODE_5], T1.[MAKE_CODE], T1.[CARDFILE_PAGE], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[vPP74] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP74_1" "[import].[VPP74]" "OPTIMA"
+  call bcp_queryout.bat "VPP74_2" "SELECT T1.[WORKSHOP_MODEL], T1.[MAKE_CD], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[MODEL_TEXT], T1.[ORIG_MODEL_CODE], T1.[CLAIM_TYPE], T1.[PRODUCT_LINE], T1.[MNEMONIC_1], T1.[MNEMONIC_2], T1.[MODEL_TYPE], T1.[MODEL_GROUP], T1.[FACTORY_CLAIM_CODE], T1.[MODEL_LINE_OSP], T1.[CALL_FOR_SERVICE], T1.[FOLLOW_UP_CODE_1], T1.[FOLLOW_UP_CODE_2], T1.[FOLLOW_UP_CODE_3], T1.[FOLLOW_UP_CODE_4], T1.[FOLLOW_UP_CODE_5], T1.[MAKE_CODE], T1.[CARDFILE_PAGE], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[vPP74] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP74_2" "[import].[VPP74]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[VPP74]"
+
+  call sql_timestamp.bat "VPP74_1" "[OPTIMA].[import].[VPP74]" "1"
+  call bcp_queryout.bat "VPP74_1" "SELECT T1.[WORKSHOP_MODEL], T1.[MAKE_CD], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[MODEL_TEXT], T1.[ORIG_MODEL_CODE], T1.[CLAIM_TYPE], T1.[PRODUCT_LINE], T1.[MNEMONIC_1], T1.[MNEMONIC_2], T1.[MODEL_TYPE], T1.[MODEL_GROUP], T1.[FACTORY_CLAIM_CODE], T1.[MODEL_LINE_OSP], T1.[CALL_FOR_SERVICE], T1.[FOLLOW_UP_CODE_1], T1.[FOLLOW_UP_CODE_2], T1.[FOLLOW_UP_CODE_3], T1.[FOLLOW_UP_CODE_4], T1.[FOLLOW_UP_CODE_5], T1.[MAKE_CODE], T1.[CARDFILE_PAGE], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[vPP74] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP74_1" "[temp].[VPP74]" "OPTIMAX"
+
+  call sql_timestamp.bat "VPP74_2" "[OPTIMA].[import].[VPP74]" "2"
+  call bcp_queryout.bat "VPP74_2" "SELECT T1.[WORKSHOP_MODEL], T1.[MAKE_CD], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[MODEL_TEXT], T1.[ORIG_MODEL_CODE], T1.[CLAIM_TYPE], T1.[PRODUCT_LINE], T1.[MNEMONIC_1], T1.[MNEMONIC_2], T1.[MODEL_TYPE], T1.[MODEL_GROUP], T1.[FACTORY_CLAIM_CODE], T1.[MODEL_LINE_OSP], T1.[CALL_FOR_SERVICE], T1.[FOLLOW_UP_CODE_1], T1.[FOLLOW_UP_CODE_2], T1.[FOLLOW_UP_CODE_3], T1.[FOLLOW_UP_CODE_4], T1.[FOLLOW_UP_CODE_5], T1.[MAKE_CODE], T1.[CARDFILE_PAGE], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[vPP74] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP74_2" "[temp].[VPP74]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[VPP74] T1 INNER JOIN [OPTIMAX].[temp].[VPP74] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[MAKE_CD] = T2.[MAKE_CD] AND T1.[WORKSHOP_MODEL] = T2.[WORKSHOP_MODEL]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[VPP74] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[VPP74] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VPP74_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VPP74_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/VPP91.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==VPP91==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\VPP91*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[VPP91]"
+  call bcp_queryout.bat "VPP91_1" "SELECT T1.[WORK_LEADER_GROUP], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[WORKLEADER_TEXT], T1.[WORKLEADER_COLUMN], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[vPP91] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP91_1" "[import].[VPP91]" "OPTIMA"
+  call bcp_queryout.bat "VPP91_2" "SELECT T1.[WORK_LEADER_GROUP], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[WORKLEADER_TEXT], T1.[WORKLEADER_COLUMN], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[vPP91] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP91_2" "[import].[VPP91]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[VPP91]"
+
+  call sql_timestamp.bat "VPP91_1" "[OPTIMA].[import].[VPP91]" "1"
+  call bcp_queryout.bat "VPP91_1" "SELECT T1.[WORK_LEADER_GROUP], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[WORKLEADER_TEXT], T1.[WORKLEADER_COLUMN], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[vPP91] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP91_1" "[temp].[VPP91]" "OPTIMAX"
+
+  call sql_timestamp.bat "VPP91_2" "[OPTIMA].[import].[VPP91]" "2"
+  call bcp_queryout.bat "VPP91_2" "SELECT T1.[WORK_LEADER_GROUP], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[WORKLEADER_TEXT], T1.[WORKLEADER_COLUMN], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[vPP91] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP91_2" "[temp].[VPP91]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[VPP91] T1 INNER JOIN [OPTIMAX].[temp].[VPP91] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[WORK_LEADER_GROUP] = T2.[WORK_LEADER_GROUP]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[VPP91] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[VPP91] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VPP91_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VPP91_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/VPP93.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==VPP93==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\VPP93*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[VPP93]"
+  call bcp_queryout.bat "VPP93_1" "SELECT T1.[ACT_CODE], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[ACTIVITY_TEXT], T1.[SALARY_TYPE], T1.[CLOCK_CARD_ACT], T1.[ACTIVITY_COLUMN], T1.[LONG_LASTING_ACT], T1.[SICKNESS_ACT], T1.[TIME_BASED_ACT], T1.[ORDER_BASED_ACT], T1.[PRESENT_ACT], T1.[REPNO_PREFIX], T1.[PRINT_INVOICE_ACT], T1.[WAGE_TYPE], T1.[ACTIVITY_COLUMN_2], T1.[AW_DEPARTMENT], T1.[ACT_CODE_CHANGE_WL], T1.[ACTIVITY_COLUMN_3], T1.[ACTIVITY_COLUMN_4], T1.[CLOCK_IN_FUNCTION], T1.[CLOCK_OFF_FUNCTION], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[vPP93] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP93_1" "[import].[VPP93]" "OPTIMA"
+  call bcp_queryout.bat "VPP93_2" "SELECT T1.[ACT_CODE], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[ACTIVITY_TEXT], T1.[SALARY_TYPE], T1.[CLOCK_CARD_ACT], T1.[ACTIVITY_COLUMN], T1.[LONG_LASTING_ACT], T1.[SICKNESS_ACT], T1.[TIME_BASED_ACT], T1.[ORDER_BASED_ACT], T1.[PRESENT_ACT], T1.[REPNO_PREFIX], T1.[PRINT_INVOICE_ACT], T1.[WAGE_TYPE], T1.[ACTIVITY_COLUMN_2], T1.[AW_DEPARTMENT], T1.[ACT_CODE_CHANGE_WL], T1.[ACTIVITY_COLUMN_3], T1.[ACTIVITY_COLUMN_4], T1.[CLOCK_IN_FUNCTION], T1.[CLOCK_OFF_FUNCTION], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[vPP93] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP93_2" "[import].[VPP93]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[VPP93]"
+
+  call sql_timestamp.bat "VPP93_1" "[OPTIMA].[import].[VPP93]" "1"
+  call bcp_queryout.bat "VPP93_1" "SELECT T1.[ACT_CODE], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[ACTIVITY_TEXT], T1.[SALARY_TYPE], T1.[CLOCK_CARD_ACT], T1.[ACTIVITY_COLUMN], T1.[LONG_LASTING_ACT], T1.[SICKNESS_ACT], T1.[TIME_BASED_ACT], T1.[ORDER_BASED_ACT], T1.[PRESENT_ACT], T1.[REPNO_PREFIX], T1.[PRINT_INVOICE_ACT], T1.[WAGE_TYPE], T1.[ACTIVITY_COLUMN_2], T1.[AW_DEPARTMENT], T1.[ACT_CODE_CHANGE_WL], T1.[ACTIVITY_COLUMN_3], T1.[ACTIVITY_COLUMN_4], T1.[CLOCK_IN_FUNCTION], T1.[CLOCK_OFF_FUNCTION], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[vPP93] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP93_1" "[temp].[VPP93]" "OPTIMAX"
+
+  call sql_timestamp.bat "VPP93_2" "[OPTIMA].[import].[VPP93]" "2"
+  call bcp_queryout.bat "VPP93_2" "SELECT T1.[ACT_CODE], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[ACTIVITY_TEXT], T1.[SALARY_TYPE], T1.[CLOCK_CARD_ACT], T1.[ACTIVITY_COLUMN], T1.[LONG_LASTING_ACT], T1.[SICKNESS_ACT], T1.[TIME_BASED_ACT], T1.[ORDER_BASED_ACT], T1.[PRESENT_ACT], T1.[REPNO_PREFIX], T1.[PRINT_INVOICE_ACT], T1.[WAGE_TYPE], T1.[ACTIVITY_COLUMN_2], T1.[AW_DEPARTMENT], T1.[ACT_CODE_CHANGE_WL], T1.[ACTIVITY_COLUMN_3], T1.[ACTIVITY_COLUMN_4], T1.[CLOCK_IN_FUNCTION], T1.[CLOCK_OFF_FUNCTION], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[vPP93] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPP93_2" "[temp].[VPP93]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[VPP93] T1 INNER JOIN [OPTIMAX].[temp].[VPP93] T2 ON T1.[ACT_CODE] = T2.[ACT_CODE] AND T1.[CLIENT_DB] = T2.[CLIENT_DB]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[VPP93] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[VPP93] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VPP93_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VPP93_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/VPPT1.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==VPPT1==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\VPPT1*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[VPPT1]"
+  call bcp_queryout.bat "VPPT1_1" "SELECT T1.[SPEC_LINE_TYPE_2], T1.[SALES_SPEC_TYPE], T1.[SALES_SPEC_CODE], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[L_SALE_CLASS_TYPE], T1.[L_SALE_CLASS_CODE], T1.[INTERNAL_ACCT_NO], T1.[EXTERNAL_ACCT_NO], T1.[UNIT_ACCT_NO], T1.[DEPARTMENT], T1.[LEASING_ACCT_NO], T1.[TRANSFERREL_CODE], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[vPPT1] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPPT1_1" "[import].[VPPT1]" "OPTIMA"
+  call bcp_queryout.bat "VPPT1_2" "SELECT T1.[SPEC_LINE_TYPE_2], T1.[SALES_SPEC_TYPE], T1.[SALES_SPEC_CODE], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[L_SALE_CLASS_TYPE], T1.[L_SALE_CLASS_CODE], T1.[INTERNAL_ACCT_NO], T1.[EXTERNAL_ACCT_NO], T1.[UNIT_ACCT_NO], T1.[DEPARTMENT], T1.[LEASING_ACCT_NO], T1.[TRANSFERREL_CODE], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[vPPT1] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPPT1_2" "[import].[VPPT1]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[VPPT1]"
+
+  call sql_timestamp.bat "VPPT1_1" "[OPTIMA].[import].[VPPT1]" "1"
+  call bcp_queryout.bat "VPPT1_1" "SELECT T1.[SPEC_LINE_TYPE_2], T1.[SALES_SPEC_TYPE], T1.[SALES_SPEC_CODE], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[L_SALE_CLASS_TYPE], T1.[L_SALE_CLASS_CODE], T1.[INTERNAL_ACCT_NO], T1.[EXTERNAL_ACCT_NO], T1.[UNIT_ACCT_NO], T1.[DEPARTMENT], T1.[LEASING_ACCT_NO], T1.[TRANSFERREL_CODE], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[vPPT1] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPPT1_1" "[temp].[VPPT1]" "OPTIMAX"
+
+  call sql_timestamp.bat "VPPT1_2" "[OPTIMA].[import].[VPPT1]" "2"
+  call bcp_queryout.bat "VPPT1_2" "SELECT T1.[SPEC_LINE_TYPE_2], T1.[SALES_SPEC_TYPE], T1.[SALES_SPEC_CODE], T1.[STATE_CODE_PARAM], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[L_SALE_CLASS_TYPE], T1.[L_SALE_CLASS_CODE], T1.[INTERNAL_ACCT_NO], T1.[EXTERNAL_ACCT_NO], T1.[UNIT_ACCT_NO], T1.[DEPARTMENT], T1.[LEASING_ACCT_NO], T1.[TRANSFERREL_CODE], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[vPPT1] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "VPPT1_2" "[temp].[VPPT1]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[VPPT1] T1 INNER JOIN [OPTIMAX].[temp].[VPPT1] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[UNIQUE_IDENT] = T2.[UNIQUE_IDENT]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[VPPT1] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[VPPT1] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VPPT1_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\VPPT1_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/WORKING_PERIOD.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==WORKING_PERIOD==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\WORKING_PERIOD*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[WORKING_PERIOD]"
+  call bcp_queryout.bat "WORKING_PERIOD_1" "SELECT T1.[START_DAY_ID], T1.[END_DAY_ID], T1.[RECURRING_PATTERN_ID], T1.[CALENDAR_INFO_ID], T1.[CALENDAR_TYPE_ID], T1.[CALENDAR_EVENT_ID], T1.[WORKINGDAY], T1.[EARLIEST_START_TIME], T1.[LATEST_START_TIME], T1.[EARLIEST_END_TIME], T1.[LATEST_END_TIME], T1.[CORE_WORKING_TIME], T1.[CORE_WORKING_HOURS], T1.[BREAKS_TOTAL], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[FUNCTION_CODE], T1.[PROGRAM], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_ID], '1' as [Client_DB] FROM [deop01].[dbo].[WORKING_PERIOD] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "WORKING_PERIOD_1" "[import].[WORKING_PERIOD]" "OPTIMA"
+  call bcp_queryout.bat "WORKING_PERIOD_2" "SELECT T1.[START_DAY_ID], T1.[END_DAY_ID], T1.[RECURRING_PATTERN_ID], T1.[CALENDAR_INFO_ID], T1.[CALENDAR_TYPE_ID], T1.[CALENDAR_EVENT_ID], T1.[WORKINGDAY], T1.[EARLIEST_START_TIME], T1.[LATEST_START_TIME], T1.[EARLIEST_END_TIME], T1.[LATEST_END_TIME], T1.[CORE_WORKING_TIME], T1.[CORE_WORKING_HOURS], T1.[BREAKS_TOTAL], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[FUNCTION_CODE], T1.[PROGRAM], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_ID], '2' as [Client_DB] FROM [deop02].[dbo].[WORKING_PERIOD] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "WORKING_PERIOD_2" "[import].[WORKING_PERIOD]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[WORKING_PERIOD]"
+
+  call sql_timestamp.bat "WORKING_PERIOD_1" "[OPTIMA].[import].[WORKING_PERIOD]" "1"
+  call bcp_queryout.bat "WORKING_PERIOD_1" "SELECT T1.[START_DAY_ID], T1.[END_DAY_ID], T1.[RECURRING_PATTERN_ID], T1.[CALENDAR_INFO_ID], T1.[CALENDAR_TYPE_ID], T1.[CALENDAR_EVENT_ID], T1.[WORKINGDAY], T1.[EARLIEST_START_TIME], T1.[LATEST_START_TIME], T1.[EARLIEST_END_TIME], T1.[LATEST_END_TIME], T1.[CORE_WORKING_TIME], T1.[CORE_WORKING_HOURS], T1.[BREAKS_TOTAL], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[FUNCTION_CODE], T1.[PROGRAM], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_ID], '1' as [Client_DB] FROM [deop01].[dbo].[WORKING_PERIOD] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "WORKING_PERIOD_1" "[temp].[WORKING_PERIOD]" "OPTIMAX"
+
+  call sql_timestamp.bat "WORKING_PERIOD_2" "[OPTIMA].[import].[WORKING_PERIOD]" "2"
+  call bcp_queryout.bat "WORKING_PERIOD_2" "SELECT T1.[START_DAY_ID], T1.[END_DAY_ID], T1.[RECURRING_PATTERN_ID], T1.[CALENDAR_INFO_ID], T1.[CALENDAR_TYPE_ID], T1.[CALENDAR_EVENT_ID], T1.[WORKINGDAY], T1.[EARLIEST_START_TIME], T1.[LATEST_START_TIME], T1.[EARLIEST_END_TIME], T1.[LATEST_END_TIME], T1.[CORE_WORKING_TIME], T1.[CORE_WORKING_HOURS], T1.[BREAKS_TOTAL], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[FUNCTION_CODE], T1.[PROGRAM], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_ID], '2' as [Client_DB] FROM [deop02].[dbo].[WORKING_PERIOD] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "WORKING_PERIOD_2" "[temp].[WORKING_PERIOD]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[WORKING_PERIOD] T1 INNER JOIN [OPTIMAX].[temp].[WORKING_PERIOD] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[UNIQUE_ID] = T2.[UNIQUE_ID]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[WORKING_PERIOD] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[WORKING_PERIOD] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\WORKING_PERIOD_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\WORKING_PERIOD_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/WORKSHOP_ORDER_SPLIT.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==WORKSHOP_ORDER_SPLIT==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\WORKSHOP_ORDER_SPLIT*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[WORKSHOP_ORDER_SPLIT]"
+  call bcp_queryout.bat "WORKSHOP_ORDER_SPLIT_1" "SELECT T1.[ORDER_NUMBER], T1.[LINE_NUMBER], T1.[WORKSHOP_TEAM], T1.[PERSON_NUMBER], T1.[START_DATE], T1.[END_DATE], T1.[EST_TIME], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[WORKSHOP_ORDER_SPLIT] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "WORKSHOP_ORDER_SPLIT_1" "[import].[WORKSHOP_ORDER_SPLIT]" "OPTIMA"
+  call bcp_queryout.bat "WORKSHOP_ORDER_SPLIT_2" "SELECT T1.[ORDER_NUMBER], T1.[LINE_NUMBER], T1.[WORKSHOP_TEAM], T1.[PERSON_NUMBER], T1.[START_DATE], T1.[END_DATE], T1.[EST_TIME], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[WORKSHOP_ORDER_SPLIT] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "WORKSHOP_ORDER_SPLIT_2" "[import].[WORKSHOP_ORDER_SPLIT]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[WORKSHOP_ORDER_SPLIT]"
+
+  call sql_timestamp.bat "WORKSHOP_ORDER_SPLIT_1" "[OPTIMA].[import].[WORKSHOP_ORDER_SPLIT]" "1"
+  call bcp_queryout.bat "WORKSHOP_ORDER_SPLIT_1" "SELECT T1.[ORDER_NUMBER], T1.[LINE_NUMBER], T1.[WORKSHOP_TEAM], T1.[PERSON_NUMBER], T1.[START_DATE], T1.[END_DATE], T1.[EST_TIME], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[WORKSHOP_ORDER_SPLIT] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "WORKSHOP_ORDER_SPLIT_1" "[temp].[WORKSHOP_ORDER_SPLIT]" "OPTIMAX"
+
+  call sql_timestamp.bat "WORKSHOP_ORDER_SPLIT_2" "[OPTIMA].[import].[WORKSHOP_ORDER_SPLIT]" "2"
+  call bcp_queryout.bat "WORKSHOP_ORDER_SPLIT_2" "SELECT T1.[ORDER_NUMBER], T1.[LINE_NUMBER], T1.[WORKSHOP_TEAM], T1.[PERSON_NUMBER], T1.[START_DATE], T1.[END_DATE], T1.[EST_TIME], T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[WORKSHOP_ORDER_SPLIT] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "WORKSHOP_ORDER_SPLIT_2" "[temp].[WORKSHOP_ORDER_SPLIT]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[WORKSHOP_ORDER_SPLIT] T1 INNER JOIN [OPTIMAX].[temp].[WORKSHOP_ORDER_SPLIT] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[UNIQUE_IDENT] = T2.[UNIQUE_IDENT]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[WORKSHOP_ORDER_SPLIT] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[WORKSHOP_ORDER_SPLIT] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\WORKSHOP_ORDER_SPLIT_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\WORKSHOP_ORDER_SPLIT_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/WORKSHOP_PLANNING.bat

@@ -0,0 +1,32 @@
+@echo off
+call "C:\GlobalCube\Tasks\scripts\config2.bat"
+rem ==WORKSHOP_PLANNING==
+del C:\GlobalCube\System\OPTIMA\SQL\logs\WORKSHOP_PLANNING*.* /Q /F >nul 2>nul
+
+if not "%1"=="" goto :increment
+
+:full
+  call sql_query.bat "TRUNCATE TABLE [OPTIMA].[import].[WORKSHOP_PLANNING]"
+  call bcp_queryout.bat "WORKSHOP_PLANNING_1" "SELECT T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[COLOR_NOT_STARTED], T1.[COLOR_NOT_STARTED_WAIT], T1.[COLOR_JOBCARD_PRINTED], T1.[COLOR_IN_WORK], T1.[COLOR_IN_WORK_WAIT], T1.[COLOR_SUSPENDED], T1.[COLOR_FINISHED], T1.[COLOR_FINISHED_WAIT], T1.[COLOR_INVOICED], T1.[COLOR_QUALITY_INSPECTED], T1.[COLOR_EMPLOYEE_CLOCKED_IN], T1.[COLOR_EMPLOYEE_NOT_PRESENT], T1.[COLOR_TEAM_CAPACITY_USED], T1.[COLOR_TEAM_CAPACITY_FREE], T1.[COLOR_OFF_TIME], T1.[COLOR_WORK_TIME], T1.[COLOR_BREAK_TIME], T1.[COLOR_APP_FORE], T1.[COLOR_APP_BACK], T1.[COLOR_APP_FORE_WAIT], T1.[COLOR_APP_BACK_WAIT], T1.[COLOR_ORDER_CREATED_FORE], T1.[COLOR_ORDER_CREATED_BACK], T1.[COLOR_FREE_CAPACITY], T1.[COLOR_USED_CAPACITY], T1.[COLOR_OVERBOOKED_CAPACITY], T1.[TIMER_REFRESH], T1.[ONLY_SHOW_TEAMS], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[WORKSHOP_PLANNING] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "WORKSHOP_PLANNING_1" "[import].[WORKSHOP_PLANNING]" "OPTIMA"
+  call bcp_queryout.bat "WORKSHOP_PLANNING_2" "SELECT T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[COLOR_NOT_STARTED], T1.[COLOR_NOT_STARTED_WAIT], T1.[COLOR_JOBCARD_PRINTED], T1.[COLOR_IN_WORK], T1.[COLOR_IN_WORK_WAIT], T1.[COLOR_SUSPENDED], T1.[COLOR_FINISHED], T1.[COLOR_FINISHED_WAIT], T1.[COLOR_INVOICED], T1.[COLOR_QUALITY_INSPECTED], T1.[COLOR_EMPLOYEE_CLOCKED_IN], T1.[COLOR_EMPLOYEE_NOT_PRESENT], T1.[COLOR_TEAM_CAPACITY_USED], T1.[COLOR_TEAM_CAPACITY_FREE], T1.[COLOR_OFF_TIME], T1.[COLOR_WORK_TIME], T1.[COLOR_BREAK_TIME], T1.[COLOR_APP_FORE], T1.[COLOR_APP_BACK], T1.[COLOR_APP_FORE_WAIT], T1.[COLOR_APP_BACK_WAIT], T1.[COLOR_ORDER_CREATED_FORE], T1.[COLOR_ORDER_CREATED_BACK], T1.[COLOR_FREE_CAPACITY], T1.[COLOR_USED_CAPACITY], T1.[COLOR_OVERBOOKED_CAPACITY], T1.[TIMER_REFRESH], T1.[ONLY_SHOW_TEAMS], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[WORKSHOP_PLANNING] T1  WHERE 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "WORKSHOP_PLANNING_2" "[import].[WORKSHOP_PLANNING]" "OPTIMA"
+  goto :cleanup
+
+:increment
+  call sql_query.bat "TRUNCATE TABLE [OPTIMAX].[temp].[WORKSHOP_PLANNING]"
+
+  call sql_timestamp.bat "WORKSHOP_PLANNING_1" "[OPTIMA].[import].[WORKSHOP_PLANNING]" "1"
+  call bcp_queryout.bat "WORKSHOP_PLANNING_1" "SELECT T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[COLOR_NOT_STARTED], T1.[COLOR_NOT_STARTED_WAIT], T1.[COLOR_JOBCARD_PRINTED], T1.[COLOR_IN_WORK], T1.[COLOR_IN_WORK_WAIT], T1.[COLOR_SUSPENDED], T1.[COLOR_FINISHED], T1.[COLOR_FINISHED_WAIT], T1.[COLOR_INVOICED], T1.[COLOR_QUALITY_INSPECTED], T1.[COLOR_EMPLOYEE_CLOCKED_IN], T1.[COLOR_EMPLOYEE_NOT_PRESENT], T1.[COLOR_TEAM_CAPACITY_USED], T1.[COLOR_TEAM_CAPACITY_FREE], T1.[COLOR_OFF_TIME], T1.[COLOR_WORK_TIME], T1.[COLOR_BREAK_TIME], T1.[COLOR_APP_FORE], T1.[COLOR_APP_BACK], T1.[COLOR_APP_FORE_WAIT], T1.[COLOR_APP_BACK_WAIT], T1.[COLOR_ORDER_CREATED_FORE], T1.[COLOR_ORDER_CREATED_BACK], T1.[COLOR_FREE_CAPACITY], T1.[COLOR_USED_CAPACITY], T1.[COLOR_OVERBOOKED_CAPACITY], T1.[TIMER_REFRESH], T1.[ONLY_SHOW_TEAMS], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '1' as [Client_DB] FROM [deop01].[dbo].[WORKSHOP_PLANNING] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "WORKSHOP_PLANNING_1" "[temp].[WORKSHOP_PLANNING]" "OPTIMAX"
+
+  call sql_timestamp.bat "WORKSHOP_PLANNING_2" "[OPTIMA].[import].[WORKSHOP_PLANNING]" "2"
+  call bcp_queryout.bat "WORKSHOP_PLANNING_2" "SELECT T1.[TRANSACT_DATE], T1.[HANDLER], T1.[PROGRAM], T1.[FUNCTION_CODE], T1.[COLOR_NOT_STARTED], T1.[COLOR_NOT_STARTED_WAIT], T1.[COLOR_JOBCARD_PRINTED], T1.[COLOR_IN_WORK], T1.[COLOR_IN_WORK_WAIT], T1.[COLOR_SUSPENDED], T1.[COLOR_FINISHED], T1.[COLOR_FINISHED_WAIT], T1.[COLOR_INVOICED], T1.[COLOR_QUALITY_INSPECTED], T1.[COLOR_EMPLOYEE_CLOCKED_IN], T1.[COLOR_EMPLOYEE_NOT_PRESENT], T1.[COLOR_TEAM_CAPACITY_USED], T1.[COLOR_TEAM_CAPACITY_FREE], T1.[COLOR_OFF_TIME], T1.[COLOR_WORK_TIME], T1.[COLOR_BREAK_TIME], T1.[COLOR_APP_FORE], T1.[COLOR_APP_BACK], T1.[COLOR_APP_FORE_WAIT], T1.[COLOR_APP_BACK_WAIT], T1.[COLOR_ORDER_CREATED_FORE], T1.[COLOR_ORDER_CREATED_BACK], T1.[COLOR_FREE_CAPACITY], T1.[COLOR_USED_CAPACITY], T1.[COLOR_OVERBOOKED_CAPACITY], T1.[TIMER_REFRESH], T1.[ONLY_SHOW_TEAMS], T1.[CONV_FLAG], T1.[timestamp], T1.[UNIQUE_IDENT], '2' as [Client_DB] FROM [deop02].[dbo].[WORKSHOP_PLANNING] T1  WHERE T1.[timestamp] > convert(binary(8), '%TS%', 1) AND 1 = 1 ORDER BY T1.[timestamp] "
+  call bcp_in.bat "WORKSHOP_PLANNING_2" "[temp].[WORKSHOP_PLANNING]" "OPTIMAX"
+
+  call sql_query.bat "DELETE T1 FROM [OPTIMA].[import].[WORKSHOP_PLANNING] T1 INNER JOIN [OPTIMAX].[temp].[WORKSHOP_PLANNING] T2 ON T1.[CLIENT_DB] = T2.[CLIENT_DB] AND T1.[UNIQUE_IDENT] = T2.[UNIQUE_IDENT]"
+  call sql_query.bat "INSERT INTO [OPTIMA].[import].[WORKSHOP_PLANNING] with (TABLOCK) SELECT * FROM [OPTIMAX].[temp].[WORKSHOP_PLANNING] T1"
+
+:cleanup
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\WORKSHOP_PLANNING_1.csv"
+  call delete.bat "C:\GlobalCube\System\OPTIMA\SQL\temp\WORKSHOP_PLANNING_2.csv"

+ 32 - 0
System/OPTIMA/SQL/batch/WORKSHOP_TEAMS.bat

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

+ 32 - 0
System/OPTIMA/SQL/batch/WORK_LINE_STATUS.bat

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

+ 32 - 0
System/OPTIMA/SQL/batch/WORK_UNITS.bat

@@ -0,0 +1,32 @@
+@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"

+ 399 - 0
System/OPTIMA/SQL/batch/_OPTIMA.bat

@@ -0,0 +1,399 @@
+@echo off & cd /d %~dp0
+del C:\GlobalCube\System\OPTIMA\SQL\temp\*.* /Q /F >nul 2>nul
+
+echo ==AA_TRTYPE==
+echo AA_TRTYPE >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\AA_TRTYPE.bat 1
+
+echo ==ACCOUNT_INFO==
+echo ACCOUNT_INFO >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\ACCOUNT_INFO.bat 1
+
+echo ==ACCT_BALANCE==
+echo ACCT_BALANCE >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\ACCT_BALANCE.bat 1
+
+echo ==ACTIVITY==
+echo ACTIVITY >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\ACTIVITY.bat 1
+
+echo ==APPORTIONED_INV_TIME==
+echo APPORTIONED_INV_TIME >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\APPORTIONED_INV_TIME.bat 1
+
+echo ==APPORTIONED_USED_TIME==
+echo APPORTIONED_USED_TIME >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\APPORTIONED_USED_TIME.bat 1
+
+echo ==CALENDAR_EVENT==
+echo CALENDAR_EVENT >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\CALENDAR_EVENT.bat 1
+
+echo ==CALENDAR_INFO==
+echo CALENDAR_INFO >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\CALENDAR_INFO.bat 1
+
+echo ==CALENDAR_PATTERN==
+echo CALENDAR_PATTERN >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\CALENDAR_PATTERN.bat 1
+
+echo ==CAR_STATISTIC==
+echo CAR_STATISTIC >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\CAR_STATISTIC.bat 1
+
+echo ==COMM_TRANS_UNIT==
+echo COMM_TRANS_UNIT >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\COMM_TRANS_UNIT.bat 1
+
+echo ==COMM_UNIT==
+echo COMM_UNIT >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\COMM_UNIT.bat 1
+
+echo ==COURTESY_CAR==
+echo COURTESY_CAR >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\COURTESY_CAR.bat 1
+
+echo ==CUSTOMER==
+echo CUSTOMER >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\CUSTOMER.bat 1
+
+echo ==CUSTOMER_TRANSACT==
+echo CUSTOMER_TRANSACT >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\CUSTOMER_TRANSACT.bat 1
+
+echo ==DEPARTMENT_TYPE==
+echo DEPARTMENT_TYPE >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\DEPARTMENT_TYPE.bat 1
+
+echo ==EMPLOYEE==
+echo EMPLOYEE >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\EMPLOYEE.bat 1
+
+echo ==GLOBAL_MAKE==
+echo GLOBAL_MAKE >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\GLOBAL_MAKE.bat 1
+
+echo ==GM_DRIVE_ORDER==
+echo GM_DRIVE_ORDER >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\GM_DRIVE_ORDER.bat 1
+
+echo ==ORDER_ACCUMULATION==
+echo ORDER_ACCUMULATION >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\ORDER_ACCUMULATION.bat 1
+
+echo ==ORDER_HEADER==
+echo ORDER_HEADER >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\ORDER_HEADER.bat 1
+
+echo ==ORDER_LINE==
+echo ORDER_LINE >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\ORDER_LINE.bat 1
+
+echo ==ORDER_OPEN_ITEMS==
+echo ORDER_OPEN_ITEMS >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\ORDER_OPEN_ITEMS.bat 1
+
+echo ==ORDER_SERVICE_SCHEMES==
+echo ORDER_SERVICE_SCHEMES >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\ORDER_SERVICE_SCHEMES.bat 1
+
+echo ==PERSON==
+echo PERSON >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\PERSON.bat 1
+
+echo ==PERSON_INFO==
+echo PERSON_INFO >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\PERSON_INFO.bat 1
+
+echo ==PRODUCT_FILE==
+echo PRODUCT_FILE >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\PRODUCT_FILE.bat 1
+
+echo ==PRODUCT_STOCK_FILE==
+echo PRODUCT_STOCK_FILE >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\PRODUCT_STOCK_FILE.bat 1
+
+echo ==PROFILE==
+echo PROFILE >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\PROFILE.bat 1
+
+echo ==PROFILE_TYPE==
+echo PROFILE_TYPE >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\PROFILE_TYPE.bat 1
+
+echo ==PUNCH==
+echo PUNCH >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\PUNCH.bat 1
+
+echo ==PURCH_DISCOUNTS==
+echo PURCH_DISCOUNTS >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\PURCH_DISCOUNTS.bat 1
+
+echo ==PURCH_DISC_TYPES==
+echo PURCH_DISC_TYPES >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\PURCH_DISC_TYPES.bat 1
+
+echo ==SERVICE_2000_FILE==
+echo SERVICE_2000_FILE >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\SERVICE_2000_FILE.bat 1
+
+echo ==SITE==
+echo SITE >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\SITE.bat 1
+
+echo ==SUPPLIER==
+echo SUPPLIER >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\SUPPLIER.bat 1
+
+echo ==SUPPLIER_TRANSACT==
+echo SUPPLIER_TRANSACT >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\SUPPLIER_TRANSACT.bat 1
+
+echo ==TIME_CONTROL_END==
+echo TIME_CONTROL_END >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\TIME_CONTROL_END.bat 1
+
+echo ==TIME_CONTROL_OPEN==
+echo TIME_CONTROL_OPEN >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\TIME_CONTROL_OPEN.bat 1
+
+echo ==TIME_CONTROL_TRANS==
+echo TIME_CONTROL_TRANS >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\TIME_CONTROL_TRANS.bat 1
+
+echo ==TRANSACTION_TYPE==
+echo TRANSACTION_TYPE >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\TRANSACTION_TYPE.bat 1
+
+echo ==UNIT_CHANGE_HIST==
+echo UNIT_CHANGE_HIST >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\UNIT_CHANGE_HIST.bat 1
+
+echo ==UNIT_FILE==
+echo UNIT_FILE >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\UNIT_FILE.bat 1
+
+echo ==UNIT_LINK_EXT==
+echo UNIT_LINK_EXT >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\UNIT_LINK_EXT.bat 1
+
+echo ==UNIT_SALES_PRICE_LOG==
+echo UNIT_SALES_PRICE_LOG >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\UNIT_SALES_PRICE_LOG.bat 1
+
+echo ==UNIT_STATUS_HIST==
+echo UNIT_STATUS_HIST >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\UNIT_STATUS_HIST.bat 1
+
+echo ==UNIT_TEMP_TAB_GRNI==
+echo UNIT_TEMP_TAB_GRNI >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\UNIT_TEMP_TAB_GRNI.bat 1
+
+echo ==UNIT_TRANSFER_TAB==
+echo UNIT_TRANSFER_TAB >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\UNIT_TRANSFER_TAB.bat 1
+
+echo ==UNIT_TYPE_FILE==
+echo UNIT_TYPE_FILE >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\UNIT_TYPE_FILE.bat 1
+
+echo ==UPDATE_OPTION==
+echo UPDATE_OPTION >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\UPDATE_OPTION.bat 1
+
+echo ==VEHICLE==
+echo VEHICLE >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\VEHICLE.bat 1
+
+echo ==VEHICLE_ACCRUALS==
+echo VEHICLE_ACCRUALS >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\VEHICLE_ACCRUALS.bat 1
+
+echo ==VEHICLE_DOCKETCARD==
+echo VEHICLE_DOCKETCARD >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\VEHICLE_DOCKETCARD.bat 1
+
+echo ==VEHICLE_EXTENSION==
+echo VEHICLE_EXTENSION >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\VEHICLE_EXTENSION.bat 1
+
+echo ==VEH_CARGRP_PURCHORIGIN==
+echo VEH_CARGRP_PURCHORIGIN >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\VEH_CARGRP_PURCHORIGIN.bat 1
+
+echo ==VEH_CLASSIFICATION_CODE==
+echo VEH_CLASSIFICATION_CODE >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\VEH_CLASSIFICATION_CODE.bat 1
+
+echo ==VEH_IN_TRANSIT==
+echo VEH_IN_TRANSIT >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\VEH_IN_TRANSIT.bat 1
+
+echo ==VEH_LINK_EXT==
+echo VEH_LINK_EXT >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\VEH_LINK_EXT.bat 1
+
+echo ==VEH_MAX_STOCK==
+echo VEH_MAX_STOCK >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\VEH_MAX_STOCK.bat 1
+
+echo ==VEH_ORDER_HEADER==
+echo VEH_ORDER_HEADER >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\VEH_ORDER_HEADER.bat 1
+
+echo ==VEH_ORDER_LINE==
+echo VEH_ORDER_LINE >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\VEH_ORDER_LINE.bat 1
+
+echo ==VEH_ORDER_OPTION==
+echo VEH_ORDER_OPTION >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\VEH_ORDER_OPTION.bat 1
+
+echo ==VEH_TRANSACT_COLUMNS==
+echo VEH_TRANSACT_COLUMNS >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\VEH_TRANSACT_COLUMNS.bat 1
+
+echo ==VEH_TRANSACT_GRID==
+echo VEH_TRANSACT_GRID >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\VEH_TRANSACT_GRID.bat 1
+
+echo ==VEH_TRANSACT_GROUPS==
+echo VEH_TRANSACT_GROUPS >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\VEH_TRANSACT_GROUPS.bat 1
+
+echo ==VEH_TRANSMISSION_CODES==
+echo VEH_TRANSMISSION_CODES >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\VEH_TRANSMISSION_CODES.bat 1
+
+echo ==VPP25==
+echo VPP25 >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\VPP25.bat 1
+
+echo ==VPP28==
+echo VPP28 >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\VPP28.bat 1
+
+echo ==VPP2C==
+echo VPP2C >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\VPP2C.bat 1
+
+echo ==VPP43==
+echo VPP43 >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\VPP43.bat 1
+
+echo ==VPP48==
+echo VPP48 >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\VPP48.bat 1
+
+echo ==VPP4K==
+echo VPP4K >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\VPP4K.bat 1
+
+echo ==VPP51==
+echo VPP51 >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\VPP51.bat 1
+
+echo ==VPP53==
+echo VPP53 >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\VPP53.bat 1
+
+echo ==VPP5A==
+echo VPP5A >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\VPP5A.bat 1
+
+echo ==VPP5M==
+echo VPP5M >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\VPP5M.bat 1
+
+echo ==VPP5Q==
+echo VPP5Q >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\VPP5Q.bat 1
+
+echo ==VPP5R==
+echo VPP5R >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\VPP5R.bat 1
+
+echo ==VPP61==
+echo VPP61 >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\VPP61.bat 1
+
+echo ==VPP65==
+echo VPP65 >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\VPP65.bat 1
+
+echo ==VPP72==
+echo VPP72 >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\VPP72.bat 1
+
+echo ==VPP73==
+echo VPP73 >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\VPP73.bat 1
+
+echo ==VPP74==
+echo VPP74 >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\VPP74.bat 1
+
+echo ==VPP91==
+echo VPP91 >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\VPP91.bat 1
+
+echo ==VPP93==
+echo VPP93 >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\VPP93.bat 1
+
+echo ==VPPT1==
+echo VPPT1 >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\VPPT1.bat 1
+
+echo ==WORKING_PERIOD==
+echo WORKING_PERIOD >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\WORKING_PERIOD.bat 1
+
+echo ==WORKSHOP_ORDER_SPLIT==
+echo WORKSHOP_ORDER_SPLIT >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\WORKSHOP_ORDER_SPLIT.bat 1
+
+echo ==WORKSHOP_PLANNING==
+echo WORKSHOP_PLANNING >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\WORKSHOP_PLANNING.bat 1
+
+echo ==WORKSHOP_TEAMS==
+echo WORKSHOP_TEAMS >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\WORKSHOP_TEAMS.bat 1
+
+echo ==WORK_LINE_STATUS==
+echo WORK_LINE_STATUS >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\WORK_LINE_STATUS.bat 1
+
+echo ==WORK_UNITS==
+echo WORK_UNITS >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\WORK_UNITS.bat 1
+
+echo ==ACCT_DOC_DATA==
+echo ACCT_DOC_DATA >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\ACCT_DOC_DATA.bat 1
+
+echo ==ACCT_DOC_DATA_01==
+echo ACCT_DOC_DATA_01 >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\ACCT_DOC_DATA_01.bat 1
+
+echo ==ACCT_DOC_KEY==
+echo ACCT_DOC_KEY >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\ACCT_DOC_KEY.bat 1
+
+echo ==ACCT_DOC_KEY_01==
+echo ACCT_DOC_KEY_01 >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\ACCT_DOC_KEY_01.bat 1
+
+echo ==ACCT_DOC_SALESCLAS==
+echo ACCT_DOC_SALESCLAS >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\ACCT_DOC_SALESCLAS.bat 1
+
+echo ==UNIT_CLASSIFICAT==
+echo UNIT_CLASSIFICAT >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\UNIT_CLASSIFICAT.bat 1
+
+echo ==UNIT_HISTORY==
+echo UNIT_HISTORY >CON
+call C:\GlobalCube\System\OPTIMA\SQL\batch\UNIT_HISTORY.bat 1
+

Một số tệp đã không được hiển thị bởi vì quá nhiều tập tin thay đổi trong này khác