You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

789 lines
75 KiB

1 year ago
  1. USE [FastMoneyPro_Remit]
  2. GO
  3. /****** Object: StoredProcedure [dbo].[Proc_unscrManagement] Script Date: 9/27/2019 1:30:14 PM ******/
  4. SET ANSI_NULLS ON
  5. GO
  6. SET QUOTED_IDENTIFIER ON
  7. GO
  8. CREATE procEDURE [dbo].[Proc_unscrManagement]
  9. @flag VARCHAR(10)
  10. ,@xmlFile NVARCHAR(MAX)
  11. ,@xmlFileName VARCHAR(100)
  12. ,@user VARCHAR(50)
  13. AS
  14. SET NOCOUNT ON;
  15. SET ANSI_NULLS ON;
  16. DECLARE @xml XML
  17. SET @xml=@xmlFile
  18. BEGIN TRY
  19. CREATE TABLE #msg(errorCode INT, msg VARCHAR(100), id INT)
  20. DECLARE @dataSource VARCHAR(30),@ofacDate varchar(30)
  21. SET @dataSource = 'UNSCR'
  22. IF @flag = 'UNSCR'
  23. BEGIN
  24. SELECT
  25. @ofacDate = T.c.value('@dateGenerated','varchar(500)')
  26. FROM @xml.nodes('CONSOLIDATED_LIST') T(c)
  27. IF (SELECT ISNULL(MAX(ofacDate),'2100-1-1') FROM blacklistLog WHERE dataSource = 'unscr')= CAST(LEFT(@ofacDate,10) AS DATE)
  28. BEGIN
  29. SELECT 1 ERROR_CODE,'Current version of UNSCR is already updated ' mes, 0 as id
  30. RETURN;
  31. END
  32. ELSE
  33. BEGIN
  34. BEGIN TRANSACTION
  35. --####### INSERTING INDIVIDUAL DATA ON TEMP TABLE ###################################
  36. SELECT
  37. T.c.value('DATAID[1]','varchar(500)') AS 'DATAID'
  38. ,T.c.value('FIRST_NAME[1]','varchar(500)') AS 'FIRST_NAME'
  39. ,T.c.value('SECOND_NAME[1]','varchar(500)') AS 'SECOND_NAME'
  40. ,T.c.value('THIRD_NAME[1]','varchar(500)') AS 'THIRD_NAME'
  41. ,T.c.value('FOURTH_NAME[1]','varchar(500)') AS 'FOURTH_NAME'
  42. ,T.c.value('REFERENCE_NUMBER[1]','varchar(500)') AS 'REFERENCE_NUMBER'
  43. ,T.c.value('VERSIONNUM[1]','varchar(500)') AS 'VERSIONNUM'
  44. ,'UN' AS 'source'
  45. ,'UN' AS 'from_file'
  46. ,'I' AS 'indEnt'
  47. ,'' AS 'OTHERFIELDS'
  48. ,T.c.value('SORT_KEY[1]','varchar(500)') AS 'SORT_KEY'
  49. ,T.c.value('SORT_KEY_LAST_MOD[1]','varchar(500)') AS 'SORT_KEY_LAST_MOD'
  50. ,T.c.value('INDIVIDUAL_PLACE_OF_BIRTH[1]','varchar(500)') AS 'INDIVIDUAL_PLACE_OF_BIRTH'
  51. ,T.c.value('INDIVIDUAL_DATE_OF_BIRTH[1]','varchar(500)') AS 'INDIVIDUAL_DATE_OF_BIRTH'
  52. ,T.c.value('NATIONALITY[1]','varchar(50)') AS 'NATIONALITY'
  53. ,T.c.value('COMMENTS1[1]','varchar(MAX)') AS 'Remarks'
  54. ,T.c.value('UN_LIST_TYPE[1]','varchar(MAX)') AS 'UN_LIST_TYPE'
  55. ,T.c.value('LAST_DAY_UPDATED[1]','varchar(500)') AS 'LAST_DAY_UPDATED'
  56. INTO #TEMPUNSCRLIST
  57. FROM @xml.nodes('CONSOLIDATED_LIST/INDIVIDUALS/INDIVIDUAL') T(c)
  58. --SELECT * FROM #TEMPUNSCRLIST
  59. SELECT * INTO #TEMPINDVALIASNAME FROM (
  60. SELECT
  61. T.c.value('DATAID[1]','varchar(500)') AS 'DATAID'
  62. ,T.c.value('INDIVIDUAL_ALIAS[1]/ALIAS_NAME[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_NAME'
  63. ,T.c.value('INDIVIDUAL_ALIAS[1]/QUALITY[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_QUALITY1'
  64. ,T.c.value('INDIVIDUAL_ADDRESS[1]/COUNTRY[1]','varchar(500)') AS 'COUNTRY'
  65. ,T.c.value('INDIVIDUAL_ADDRESS[1]/zip[1]','varchar(500)') AS 'zip'
  66. ,T.c.value('INDIVIDUAL_ADDRESS[1]/city[1]','varchar(500)') AS 'city'
  67. ,T.c.value('INDIVIDUAL_ADDRESS[1]/STREET[1]','varchar(500)') AS 'STREET'
  68. ,T.c.value('INDIVIDUAL_ADDRESS[1]/NOTE[1]','varchar(500)') AS 'ADDRESS'
  69. FROM @xml.nodes('CONSOLIDATED_LIST/INDIVIDUALS/INDIVIDUAL') T(c)
  70. UNION ALL
  71. SELECT
  72. T.c.value('DATAID[1]','varchar(500)') AS 'DATAID'
  73. ,T.c.value('INDIVIDUAL_ALIAS[2]/ALIAS_NAME[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_NAME2'
  74. ,T.c.value('INDIVIDUAL_ALIAS[2]/QUALITY[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_QUALITY1'
  75. ,T.c.value('INDIVIDUAL_ADDRESS[2]/COUNTRY[1]','varchar(500)') AS 'COUNTRY'
  76. ,T.c.value('INDIVIDUAL_ADDRESS[2]/zip[1]','varchar(500)') AS 'zip'
  77. ,T.c.value('INDIVIDUAL_ADDRESS[2]/city[1]','varchar(500)') AS 'city'
  78. ,T.c.value('INDIVIDUAL_ADDRESS[2]/STREET[1]','varchar(500)') AS 'STREET'
  79. ,T.c.value('INDIVIDUAL_ADDRESS[2]/NOTE[1]','varchar(500)') AS 'ADDRESS'
  80. FROM @xml.nodes('CONSOLIDATED_LIST/INDIVIDUALS/INDIVIDUAL') T(c)
  81. UNION ALL
  82. SELECT
  83. T.c.value('DATAID[1]','varchar(500)') AS 'DATAID'
  84. ,T.c.value('INDIVIDUAL_ALIAS[3]/ALIAS_NAME[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_NAME2'
  85. ,T.c.value('INDIVIDUAL_ALIAS[3]/QUALITY[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_QUALITY1'
  86. ,T.c.value('INDIVIDUAL_ADDRESS[3]/COUNTRY[1]','varchar(500)') AS 'COUNTRY'
  87. ,T.c.value('INDIVIDUAL_ADDRESS[3]/zip[1]','varchar(500)') AS 'zip'
  88. ,T.c.value('INDIVIDUAL_ADDRESS[3]/city[1]','varchar(500)') AS 'city'
  89. ,T.c.value('INDIVIDUAL_ADDRESS[3]/STREET[1]','varchar(500)') AS 'STREET'
  90. ,T.c.value('INDIVIDUAL_ADDRESS[3]/NOTE[1]','varchar(500)') AS 'ADDRESS'
  91. FROM @xml.nodes('CONSOLIDATED_LIST/INDIVIDUALS/INDIVIDUAL') T(c)
  92. UNION ALL
  93. SELECT
  94. T.c.value('DATAID[1]','varchar(500)') AS 'DATAID'
  95. ,T.c.value('INDIVIDUAL_ALIAS[4]/ALIAS_NAME[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_NAME2'
  96. ,T.c.value('INDIVIDUAL_ALIAS[4]/QUALITY[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_QUALITY1'
  97. ,T.c.value('INDIVIDUAL_ADDRESS[4]/COUNTRY[1]','varchar(500)') AS 'COUNTRY'
  98. ,T.c.value('INDIVIDUAL_ADDRESS[4]/zip[1]','varchar(500)') AS 'zip'
  99. ,T.c.value('INDIVIDUAL_ADDRESS[4]/city[1]','varchar(500)') AS 'city'
  100. ,T.c.value('INDIVIDUAL_ADDRESS[4]/STREET[1]','varchar(500)') AS 'STREET'
  101. ,T.c.value('INDIVIDUAL_ADDRESS[4]/NOTE[1]','varchar(500)') AS 'ADDRESS'
  102. FROM @xml.nodes('CONSOLIDATED_LIST/INDIVIDUALS/INDIVIDUAL') T(c)
  103. UNION ALL
  104. SELECT
  105. T.c.value('DATAID[1]','varchar(500)') AS 'DATAID'
  106. ,T.c.value('INDIVIDUAL_ALIAS[5]/ALIAS_NAME[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_NAME2'
  107. ,T.c.value('INDIVIDUAL_ALIAS[5]/QUALITY[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_QUALITY1'
  108. ,T.c.value('INDIVIDUAL_ADDRESS[1]/COUNTRY[1]','varchar(500)') AS 'COUNTRY'
  109. ,T.c.value('INDIVIDUAL_ADDRESS[5]/zip[1]','varchar(500)') AS 'zip'
  110. ,T.c.value('INDIVIDUAL_ADDRESS[5]/city[1]','varchar(500)') AS 'city'
  111. ,T.c.value('INDIVIDUAL_ADDRESS[5]/STREET[1]','varchar(500)') AS 'STREET'
  112. ,T.c.value('INDIVIDUAL_ADDRESS[5]/NOTE[1]','varchar(500)') AS 'ADDRESS'
  113. FROM @xml.nodes('CONSOLIDATED_LIST/INDIVIDUALS/INDIVIDUAL') T(c)
  114. UNION ALL
  115. SELECT
  116. T.c.value('DATAID[1]','varchar(500)') AS 'DATAID'
  117. ,T.c.value('INDIVIDUAL_ALIAS[6]/ALIAS_NAME[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_NAME2'
  118. ,T.c.value('INDIVIDUAL_ALIAS[6]/QUALITY[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_QUALITY1'
  119. ,T.c.value('INDIVIDUAL_ADDRESS[6]/COUNTRY[1]','varchar(500)') AS 'COUNTRY'
  120. ,T.c.value('INDIVIDUAL_ADDRESS[6]/zip[1]','varchar(500)') AS 'zip'
  121. ,T.c.value('INDIVIDUAL_ADDRESS[6]/city[1]','varchar(500)') AS 'city'
  122. ,T.c.value('INDIVIDUAL_ADDRESS[6]/STREET[1]','varchar(500)') AS 'STREET'
  123. ,T.c.value('INDIVIDUAL_ADDRESS[6]/NOTE[1]','varchar(500)') AS 'ADDRESS'
  124. FROM @xml.nodes('CONSOLIDATED_LIST/INDIVIDUALS/INDIVIDUAL') T(c)
  125. UNION ALL
  126. SELECT
  127. T.c.value('DATAID[1]','varchar(500)') AS 'DATAID'
  128. ,T.c.value('INDIVIDUAL_ALIAS[7]/ALIAS_NAME[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_NAME2'
  129. ,T.c.value('INDIVIDUAL_ALIAS[7]/QUALITY[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_QUALITY1'
  130. ,T.c.value('INDIVIDUAL_ADDRESS[7]/COUNTRY[1]','varchar(500)') AS 'COUNTRY'
  131. ,T.c.value('INDIVIDUAL_ADDRESS[7]/zip[1]','varchar(500)') AS 'zip'
  132. ,T.c.value('INDIVIDUAL_ADDRESS[7]/city[1]','varchar(500)') AS 'city'
  133. ,T.c.value('INDIVIDUAL_ADDRESS[7]/STREET[1]','varchar(500)') AS 'STREET'
  134. ,T.c.value('INDIVIDUAL_ADDRESS[7]/NOTE[1]','varchar(500)') AS 'ADDRESS'
  135. FROM @xml.nodes('CONSOLIDATED_LIST/INDIVIDUALS/INDIVIDUAL') T(c)
  136. UNION ALL
  137. SELECT
  138. T.c.value('DATAID[1]','varchar(500)') AS 'DATAID'
  139. ,T.c.value('INDIVIDUAL_ALIAS[8]/ALIAS_NAME[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_NAME2'
  140. ,T.c.value('INDIVIDUAL_ALIAS[8]/QUALITY[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_QUALITY1'
  141. ,T.c.value('INDIVIDUAL_ADDRESS[8]/COUNTRY[1]','varchar(500)') AS 'COUNTRY'
  142. ,T.c.value('INDIVIDUAL_ADDRESS[8]/zip[1]','varchar(500)') AS 'zip'
  143. ,T.c.value('INDIVIDUAL_ADDRESS[8]/city[1]','varchar(500)') AS 'city'
  144. ,T.c.value('INDIVIDUAL_ADDRESS[8]/STREET[1]','varchar(500)') AS 'STREET'
  145. ,T.c.value('INDIVIDUAL_ADDRESS[8]/NOTE[1]','varchar(500)') AS 'ADDRESS'
  146. FROM @xml.nodes('CONSOLIDATED_LIST/INDIVIDUALS/INDIVIDUAL') T(c)
  147. UNION ALL
  148. SELECT
  149. T.c.value('DATAID[1]','varchar(500)') AS 'DATAID'
  150. ,T.c.value('INDIVIDUAL_ALIAS[9]/ALIAS_NAME[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_NAME2'
  151. ,T.c.value('INDIVIDUAL_ALIAS[9]/QUALITY[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_QUALITY1'
  152. ,T.c.value('INDIVIDUAL_ADDRESS[9]/COUNTRY[1]','varchar(500)') AS 'COUNTRY'
  153. ,T.c.value('INDIVIDUAL_ADDRESS[9]/zip[1]','varchar(500)') AS 'zip'
  154. ,T.c.value('INDIVIDUAL_ADDRESS[9]/city[1]','varchar(500)') AS 'city'
  155. ,T.c.value('INDIVIDUAL_ADDRESS[9]/STREET[1]','varchar(500)') AS 'STREET'
  156. ,T.c.value('INDIVIDUAL_ADDRESS[9]/NOTE[1]','varchar(500)') AS 'ADDRESS'
  157. FROM @xml.nodes('CONSOLIDATED_LIST/INDIVIDUALS/INDIVIDUAL') T(c)
  158. UNION ALL
  159. SELECT
  160. T.c.value('DATAID[1]','varchar(500)') AS 'DATAID'
  161. ,T.c.value('INDIVIDUAL_ALIAS[10]/ALIAS_NAME[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_NAME2'
  162. ,T.c.value('INDIVIDUAL_ALIAS[10]/QUALITY[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_QUALITY1'
  163. ,T.c.value('INDIVIDUAL_ADDRESS[10]/COUNTRY[1]','varchar(500)') AS 'COUNTRY'
  164. ,T.c.value('INDIVIDUAL_ADDRESS[10]/zip[1]','varchar(500)') AS 'zip'
  165. ,T.c.value('INDIVIDUAL_ADDRESS[10]/city[1]','varchar(500)') AS 'city'
  166. ,T.c.value('INDIVIDUAL_ADDRESS[10]/STREET[1]','varchar(500)') AS 'STREET'
  167. ,T.c.value('INDIVIDUAL_ADDRESS[10]/NOTE[1]','varchar(500)') AS 'ADDRESS'
  168. FROM @xml.nodes('CONSOLIDATED_LIST/INDIVIDUALS/INDIVIDUAL') T(c)
  169. UNION ALL
  170. SELECT
  171. T.c.value('DATAID[1]','varchar(500)') AS 'DATAID'
  172. ,T.c.value('INDIVIDUAL_ALIAS[11]/ALIAS_NAME[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_NAME2'
  173. ,T.c.value('INDIVIDUAL_ALIAS[11]/QUALITY[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_QUALITY1'
  174. ,T.c.value('INDIVIDUAL_ADDRESS[11]/COUNTRY[1]','varchar(500)') AS 'COUNTRY'
  175. ,T.c.value('INDIVIDUAL_ADDRESS[11]/zip[1]','varchar(500)') AS 'zip'
  176. ,T.c.value('INDIVIDUAL_ADDRESS[11]/city[1]','varchar(500)') AS 'city'
  177. ,T.c.value('INDIVIDUAL_ADDRESS[11]/STREET[1]','varchar(500)') AS 'STREET'
  178. ,T.c.value('INDIVIDUAL_ADDRESS[11]/NOTE[1]','varchar(500)') AS 'ADDRESS'
  179. FROM @xml.nodes('CONSOLIDATED_LIST/INDIVIDUALS/INDIVIDUAL') T(c)
  180. UNION ALL
  181. SELECT
  182. T.c.value('DATAID[1]','varchar(500)') AS 'DATAID'
  183. ,T.c.value('INDIVIDUAL_ALIAS[12]/ALIAS_NAME[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_NAME2'
  184. ,T.c.value('INDIVIDUAL_ALIAS[12]/QUALITY[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_QUALITY1'
  185. ,T.c.value('INDIVIDUAL_ADDRESS[12]/COUNTRY[1]','varchar(500)') AS 'COUNTRY'
  186. ,T.c.value('INDIVIDUAL_ADDRESS[12]/zip[1]','varchar(500)') AS 'zip'
  187. ,T.c.value('INDIVIDUAL_ADDRESS[12]/city[1]','varchar(500)') AS 'city'
  188. ,T.c.value('INDIVIDUAL_ADDRESS[12]/STREET[1]','varchar(500)') AS 'STREET'
  189. ,T.c.value('INDIVIDUAL_ADDRESS[12]/NOTE[1]','varchar(500)') AS 'ADDRESS'
  190. FROM @xml.nodes('CONSOLIDATED_LIST/INDIVIDUALS/INDIVIDUAL') T(c)
  191. UNION ALL
  192. SELECT
  193. T.c.value('DATAID[1]','varchar(500)') AS 'DATAID'
  194. ,T.c.value('INDIVIDUAL_ALIAS[13]/ALIAS_NAME[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_NAME2'
  195. ,T.c.value('INDIVIDUAL_ALIAS[13]/QUALITY[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_QUALITY1'
  196. ,T.c.value('INDIVIDUAL_ADDRESS[13]/COUNTRY[1]','varchar(500)') AS 'COUNTRY'
  197. ,T.c.value('INDIVIDUAL_ADDRESS[13]/zip[1]','varchar(500)') AS 'zip'
  198. ,T.c.value('INDIVIDUAL_ADDRESS[13]/city[1]','varchar(500)') AS 'city'
  199. ,T.c.value('INDIVIDUAL_ADDRESS[13]/STREET[1]','varchar(500)') AS 'STREET'
  200. ,T.c.value('INDIVIDUAL_ADDRESS[13]/NOTE[1]','varchar(500)') AS 'ADDRESS'
  201. FROM @xml.nodes('CONSOLIDATED_LIST/INDIVIDUALS/INDIVIDUAL') T(c)
  202. UNION ALL
  203. SELECT
  204. T.c.value('DATAID[1]','varchar(500)') AS 'DATAID'
  205. ,T.c.value('INDIVIDUAL_ALIAS[14]/ALIAS_NAME[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_NAME2'
  206. ,T.c.value('INDIVIDUAL_ALIAS[14]/QUALITY[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_QUALITY1'
  207. ,T.c.value('INDIVIDUAL_ADDRESS[14]/COUNTRY[1]','varchar(500)') AS 'COUNTRY'
  208. ,T.c.value('INDIVIDUAL_ADDRESS[14]/zip[1]','varchar(500)') AS 'zip'
  209. ,T.c.value('INDIVIDUAL_ADDRESS[14]/city[1]','varchar(500)') AS 'city'
  210. ,T.c.value('INDIVIDUAL_ADDRESS[14]/STREET[1]','varchar(500)') AS 'STREET'
  211. ,T.c.value('INDIVIDUAL_ADDRESS[14]/NOTE[1]','varchar(500)') AS 'ADDRESS'
  212. FROM @xml.nodes('CONSOLIDATED_LIST/INDIVIDUALS/INDIVIDUAL') T(c)
  213. UNION ALL
  214. SELECT
  215. T.c.value('DATAID[1]','varchar(500)') AS 'DATAID'
  216. ,T.c.value('INDIVIDUAL_ALIAS[15]/ALIAS_NAME[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_NAME2'
  217. ,T.c.value('INDIVIDUAL_ALIAS[15]/QUALITY[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_QUALITY1'
  218. ,T.c.value('INDIVIDUAL_ADDRESS[15]/COUNTRY[1]','varchar(500)') AS 'COUNTRY'
  219. ,T.c.value('INDIVIDUAL_ADDRESS[15]/zip[1]','varchar(500)') AS 'zip'
  220. ,T.c.value('INDIVIDUAL_ADDRESS[15]/city[1]','varchar(500)') AS 'city'
  221. ,T.c.value('INDIVIDUAL_ADDRESS[15]/STREET[1]','varchar(500)') AS 'STREET'
  222. ,T.c.value('INDIVIDUAL_ADDRESS[15]/NOTE[1]','varchar(500)') AS 'ADDRESS'
  223. FROM @xml.nodes('CONSOLIDATED_LIST/INDIVIDUALS/INDIVIDUAL') T(c)
  224. UNION ALL
  225. SELECT
  226. T.c.value('DATAID[1]','varchar(500)') AS 'DATAID'
  227. ,T.c.value('INDIVIDUAL_ALIAS[16]/ALIAS_NAME[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_NAME2'
  228. ,T.c.value('INDIVIDUAL_ALIAS[16]/QUALITY[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_QUALITY1'
  229. ,T.c.value('INDIVIDUAL_ADDRESS[16]/COUNTRY[1]','varchar(500)') AS 'COUNTRY'
  230. ,T.c.value('INDIVIDUAL_ADDRESS[16]/zip[1]','varchar(500)') AS 'zip'
  231. ,T.c.value('INDIVIDUAL_ADDRESS[16]/city[1]','varchar(500)') AS 'city'
  232. ,T.c.value('INDIVIDUAL_ADDRESS[16]/STREET[1]','varchar(500)') AS 'STREET'
  233. ,T.c.value('INDIVIDUAL_ADDRESS[16]/NOTE[1]','varchar(500)') AS 'ADDRESS'
  234. FROM @xml.nodes('CONSOLIDATED_LIST/INDIVIDUALS/INDIVIDUAL') T(c)
  235. UNION ALL
  236. SELECT
  237. T.c.value('DATAID[1]','varchar(500)') AS 'DATAID'
  238. ,T.c.value('INDIVIDUAL_ALIAS[17]/ALIAS_NAME[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_NAME2'
  239. ,T.c.value('INDIVIDUAL_ALIAS[17]/QUALITY[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_QUALITY1'
  240. ,T.c.value('INDIVIDUAL_ADDRESS[17]/COUNTRY[1]','varchar(500)') AS 'COUNTRY'
  241. ,T.c.value('INDIVIDUAL_ADDRESS[17]/zip[1]','varchar(500)') AS 'zip'
  242. ,T.c.value('INDIVIDUAL_ADDRESS[17]/city[1]','varchar(500)') AS 'city'
  243. ,T.c.value('INDIVIDUAL_ADDRESS[17]/STREET[1]','varchar(500)') AS 'STREET'
  244. ,T.c.value('INDIVIDUAL_ADDRESS[17]/NOTE[1]','varchar(500)') AS 'ADDRESS'
  245. FROM @xml.nodes('CONSOLIDATED_LIST/INDIVIDUALS/INDIVIDUAL') T(c)
  246. UNION ALL
  247. SELECT
  248. T.c.value('DATAID[1]','varchar(500)') AS 'DATAID'
  249. ,T.c.value('INDIVIDUAL_ALIAS[18]/ALIAS_NAME[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_NAME2'
  250. ,T.c.value('INDIVIDUAL_ALIAS[18]/QUALITY[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_QUALITY1'
  251. ,T.c.value('INDIVIDUAL_ADDRESS[18]/COUNTRY[1]','varchar(500)') AS 'COUNTRY'
  252. ,T.c.value('INDIVIDUAL_ADDRESS[18]/zip[1]','varchar(500)') AS 'zip'
  253. ,T.c.value('INDIVIDUAL_ADDRESS[18]/city[1]','varchar(500)') AS 'city'
  254. ,T.c.value('INDIVIDUAL_ADDRESS[18]/STREET[1]','varchar(500)') AS 'STREET'
  255. ,T.c.value('INDIVIDUAL_ADDRESS[18]/NOTE[1]','varchar(500)') AS 'ADDRESS'
  256. FROM @xml.nodes('CONSOLIDATED_LIST/INDIVIDUALS/INDIVIDUAL') T(c)
  257. UNION ALL
  258. SELECT
  259. T.c.value('DATAID[1]','varchar(500)') AS 'DATAID'
  260. ,T.c.value('INDIVIDUAL_ALIAS[19]/ALIAS_NAME[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_NAME2'
  261. ,T.c.value('INDIVIDUAL_ALIAS[19]/QUALITY[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_QUALITY1'
  262. ,T.c.value('INDIVIDUAL_ADDRESS[19]/COUNTRY[1]','varchar(500)') AS 'COUNTRY'
  263. ,T.c.value('INDIVIDUAL_ADDRESS[19]/zip[1]','varchar(500)') AS 'zip'
  264. ,T.c.value('INDIVIDUAL_ADDRESS[19]/city[1]','varchar(500)') AS 'city'
  265. ,T.c.value('INDIVIDUAL_ADDRESS[19]/STREET[1]','varchar(500)') AS 'STREET'
  266. ,T.c.value('INDIVIDUAL_ADDRESS[19]/NOTE[1]','varchar(500)') AS 'ADDRESS'
  267. FROM @xml.nodes('CONSOLIDATED_LIST/INDIVIDUALS/INDIVIDUAL') T(c)
  268. UNION ALL
  269. SELECT
  270. T.c.value('DATAID[1]','varchar(500)') AS 'DATAID'
  271. ,T.c.value('INDIVIDUAL_ALIAS[20]/ALIAS_NAME[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_NAME2'
  272. ,T.c.value('INDIVIDUAL_ALIAS[20]/QUALITY[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_QUALITY1'
  273. ,T.c.value('INDIVIDUAL_ADDRESS[20]/COUNTRY[1]','varchar(500)') AS 'COUNTRY'
  274. ,T.c.value('INDIVIDUAL_ADDRESS[20]/zip[1]','varchar(500)') AS 'zip'
  275. ,T.c.value('INDIVIDUAL_ADDRESS[20]/city[1]','varchar(500)') AS 'city'
  276. ,T.c.value('INDIVIDUAL_ADDRESS[20]/STREET[1]','varchar(500)') AS 'STREET'
  277. ,T.c.value('INDIVIDUAL_ADDRESS[20]/NOTE[1]','varchar(500)') AS 'ADDRESS'
  278. FROM @xml.nodes('CONSOLIDATED_LIST/INDIVIDUALS/INDIVIDUAL') T(c)
  279. )X
  280. --SELECT * FROM #TEMPINDVALIASNAME
  281. --RETURN
  282. --######################END OF INDIVIDUAL LIST-- ###################################
  283. -- ENTITY
  284. --########## BEGINING OF ENTITY ###############################################
  285. SELECT
  286. T.c.value('DATAID[1]','varchar(500)') AS 'DATAID'
  287. ,T.c.value('FIRST_NAME[1]','varchar(500)') AS 'FIRST_NAME'
  288. ,T.c.value('REFERENCE_NUMBER[1]','varchar(500)') AS 'REFERENCE_NUMBER'
  289. ,T.c.value('VERSIONNUM[1]','varchar(500)') AS 'VERSIONNUM'
  290. ,T.c.value('UN_LIST_TYPE[1]','varchar(500)') AS 'UN_LIST_TYPE'
  291. ,T.c.value('LISTED_ON[1]','varchar(500)') AS 'LISTED_ON'
  292. ,'UN' AS 'source'
  293. ,'UN' AS 'from_file'
  294. ,'I' AS 'indEnt'
  295. ,'' AS 'OTHERFIELDS'
  296. ,T.c.value('LIST_TYPE[1]','varchar(500)') AS 'LIST_TYPE'
  297. ,T.c.value('LAST_DAY_UPDATED[1]','varchar(500)') AS 'LAST_DAY_UPDATED'
  298. ,T.c.value('COMMENTS1[1]','varchar(MAX)') AS 'Remarks'
  299. ,T.c.value('SORT_KEY[1]','varchar(MAX)') AS 'SORT_KEY'
  300. ,T.c.value('SORT_KEY_LAST_MOD[1]','varchar(MAX)') AS 'SORT_KEY_LAST_MOD'
  301. INTO #TEMPENTITYLIST
  302. FROM @xml.nodes('CONSOLIDATED_LIST/ENTITIES/ENTITY') T(c)
  303. --SELECT * FROM #TEMPENTITYLIST
  304. SELECT * INTO #TEMPENTITYNAME FROM (
  305. SELECT
  306. T.c.value('DATAID[1]','varchar(500)') AS 'DATAID'
  307. ,T.c.value('ENTITY_ALIAS[1]/QUALITY[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_QUALITY1'
  308. ,T.c.value('ENTITY_ALIAS[1]/ALIAS_NAME[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_NAME1'
  309. ,T.c.value('ENTITY_ADDRESS[1]/COUNTRY[1]','varchar(500)') AS 'COUNTRY'
  310. ,T.c.value('ENTITY_ADDRESS[1]/NOTE[1]','varchar(500)') AS 'ADDRESS'
  311. ,T.c.value('ENTITY_ADDRESS[1]/STREET[1]','varchar(500)') AS 'STREET'
  312. ,T.c.value('ENTITY_ADDRESS[1]/CITY[1]','varchar(500)') AS 'CITY'
  313. ,T.c.value('ENTITY_ADDRESS[1]/zip[1]','varchar(500)') AS 'ZIP'
  314. FROM @xml.nodes('CONSOLIDATED_LIST/ENTITIES/ENTITY') T(c)
  315. UNION ALL
  316. SELECT
  317. T.c.value('DATAID[1]','varchar(500)') AS 'DATAID'
  318. , T.c.value('ENTITY_ALIAS[2]/QUALITY[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_QUALITY1'
  319. ,T.c.value('ENTITY_ALIAS[2]/ALIAS_NAME[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_NAME1'
  320. ,T.c.value('ENTITY_ADDRESS[2]/COUNTRY[1]','varchar(500)') AS 'COUNTRY'
  321. ,T.c.value('ENTITY_ADDRESS[2]/NOTE[1]','varchar(500)') AS 'ADDRESS'
  322. ,T.c.value('ENTITY_ADDRESS[2]/STREET[1]','varchar(500)') AS 'STREET'
  323. ,T.c.value('ENTITY_ADDRESS[2]/CITY[1]','varchar(500)') AS 'CITY'
  324. ,T.c.value('ENTITY_ADDRESS[2]/zip[1]','varchar(500)') AS 'ZIP'
  325. FROM @xml.nodes('CONSOLIDATED_LIST/ENTITIES/ENTITY') T(c)
  326. UNION ALL
  327. SELECT
  328. T.c.value('DATAID[1]','varchar(500)') AS 'DATAID'
  329. ,T.c.value('ENTITY_ALIAS[3]/QUALITY[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_QUALITY1'
  330. ,T.c.value('ENTITY_ALIAS[3]/ALIAS_NAME[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_NAME1'
  331. ,T.c.value('ENTITY_ADDRESS[3]/COUNTRY[1]','varchar(500)') AS 'COUNTRY'
  332. ,T.c.value('ENTITY_ADDRESS[3]/NOTE[1]','varchar(500)') AS 'ADDRESS'
  333. ,T.c.value('ENTITY_ADDRESS[3]/STREET[1]','varchar(500)') AS 'STREET'
  334. ,T.c.value('ENTITY_ADDRESS[3]/CITY[1]','varchar(500)') AS 'CITY'
  335. ,T.c.value('ENTITY_ADDRESS[3]/zip[1]','varchar(500)') AS 'ZIP'
  336. FROM @xml.nodes('CONSOLIDATED_LIST/ENTITIES/ENTITY') T(c)
  337. UNION ALL
  338. SELECT
  339. T.c.value('DATAID[1]','varchar(500)') AS 'DATAID'
  340. ,T.c.value('ENTITY_ALIAS[4]/QUALITY[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_QUALITY1'
  341. ,T.c.value('ENTITY_ALIAS[4]/ALIAS_NAME[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_NAME1'
  342. ,T.c.value('ENTITY_ADDRESS[4]/COUNTRY[1]','varchar(500)') AS 'COUNTRY'
  343. ,T.c.value('ENTITY_ADDRESS[4]/NOTE[1]','varchar(500)') AS 'ADDRESS'
  344. ,T.c.value('ENTITY_ADDRESS[4]/STREET[1]','varchar(500)') AS 'STREET'
  345. ,T.c.value('ENTITY_ADDRESS[4]/CITY[1]','varchar(500)') AS 'CITY'
  346. ,T.c.value('ENTITY_ADDRESS[4]/zip[1]','varchar(500)') AS 'ZIP'
  347. FROM @xml.nodes('CONSOLIDATED_LIST/ENTITIES/ENTITY') T(c)
  348. UNION ALL
  349. SELECT
  350. T.c.value('DATAID[1]','varchar(500)') AS 'DATAID' ,
  351. T.c.value('ENTITY_ALIAS[5]/QUALITY[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_QUALITY1'
  352. ,T.c.value('ENTITY_ALIAS[5]/ALIAS_NAME[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_NAME1'
  353. ,T.c.value('ENTITY_ADDRESS[5]/COUNTRY[1]','varchar(500)') AS 'COUNTRY'
  354. ,T.c.value('ENTITY_ADDRESS[5]/NOTE[1]','varchar(500)') AS 'ADDRESS'
  355. ,T.c.value('ENTITY_ADDRESS[5]/STREET[1]','varchar(500)') AS 'STREET'
  356. ,T.c.value('ENTITY_ADDRESS[5]/CITY[1]','varchar(500)') AS 'CITY'
  357. ,T.c.value('ENTITY_ADDRESS[5]/zip[1]','varchar(500)') AS 'ZIP'
  358. FROM @xml.nodes('CONSOLIDATED_LIST/ENTITIES/ENTITY') T(c)
  359. UNION ALL
  360. SELECT
  361. T.c.value('DATAID[1]','varchar(500)') AS 'DATAID' ,
  362. T.c.value('ENTITY_ALIAS[6]/QUALITY[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_QUALITY1'
  363. ,T.c.value('ENTITY_ALIAS[6]/ALIAS_NAME[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_NAME1'
  364. ,T.c.value('ENTITY_ADDRESS[6]/COUNTRY[1]','varchar(500)') AS 'COUNTRY'
  365. ,T.c.value('ENTITY_ADDRESS[6]/NOTE[1]','varchar(500)') AS 'ADDRESS'
  366. ,T.c.value('ENTITY_ADDRESS[6]/STREET[1]','varchar(500)') AS 'STREET'
  367. ,T.c.value('ENTITY_ADDRESS[6]/CITY[1]','varchar(500)') AS 'CITY'
  368. ,T.c.value('ENTITY_ADDRESS[6]/zip[1]','varchar(500)') AS 'ZIP'
  369. FROM @xml.nodes('CONSOLIDATED_LIST/ENTITIES/ENTITY') T(c)
  370. UNION ALL
  371. SELECT
  372. T.c.value('DATAID[1]','varchar(500)') AS 'DATAID' ,
  373. T.c.value('ENTITY_ALIAS[7]/QUALITY[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_QUALITY1'
  374. ,T.c.value('ENTITY_ALIAS[7]/ALIAS_NAME[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_NAME1'
  375. ,T.c.value('ENTITY_ADDRESS[7]/COUNTRY[1]','varchar(500)') AS 'COUNTRY'
  376. ,T.c.value('ENTITY_ADDRESS[7]/NOTE[1]','varchar(500)') AS 'ADDRESS'
  377. ,T.c.value('ENTITY_ADDRESS[7]/STREET[1]','varchar(500)') AS 'STREET'
  378. ,T.c.value('ENTITY_ADDRESS[7]/CITY[1]','varchar(500)') AS 'CITY'
  379. ,T.c.value('ENTITY_ADDRESS[7]/zip[1]','varchar(500)') AS 'ZIP'
  380. FROM @xml.nodes('CONSOLIDATED_LIST/ENTITIES/ENTITY') T(c)
  381. UNION ALL
  382. SELECT
  383. T.c.value('DATAID[1]','varchar(500)') AS 'DATAID' ,
  384. T.c.value('ENTITY_ALIAS[8]/QUALITY[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_QUALITY1'
  385. ,T.c.value('ENTITY_ALIAS[8]/ALIAS_NAME[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_NAME1'
  386. ,T.c.value('ENTITY_ADDRESS[8]/COUNTRY[1]','varchar(500)') AS 'COUNTRY'
  387. ,T.c.value('ENTITY_ADDRESS[8]/NOTE[1]','varchar(500)') AS 'ADDRESS'
  388. ,T.c.value('ENTITY_ADDRESS[8]/STREET[1]','varchar(500)') AS 'STREET'
  389. ,T.c.value('ENTITY_ADDRESS[8]/CITY[1]','varchar(500)') AS 'CITY'
  390. ,T.c.value('ENTITY_ADDRESS[8]/zip[1]','varchar(500)') AS 'ZIP'
  391. FROM @xml.nodes('CONSOLIDATED_LIST/ENTITIES/ENTITY') T(c)
  392. UNION ALL
  393. SELECT
  394. T.c.value('DATAID[1]','varchar(500)') AS 'DATAID' ,
  395. T.c.value('ENTITY_ALIAS[9]/QUALITY[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_QUALITY1'
  396. ,T.c.value('ENTITY_ALIAS[9]/ALIAS_NAME[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_NAME1'
  397. ,T.c.value('ENTITY_ADDRESS[9]/COUNTRY[1]','varchar(500)') AS 'COUNTRY'
  398. ,T.c.value('ENTITY_ADDRESS[9]/NOTE[1]','varchar(500)') AS 'ADDRESS'
  399. ,T.c.value('ENTITY_ADDRESS[9]/STREET[1]','varchar(500)') AS 'STREET'
  400. ,T.c.value('ENTITY_ADDRESS[9]/CITY[1]','varchar(500)') AS 'CITY'
  401. ,T.c.value('ENTITY_ADDRESS[9]/zip[1]','varchar(500)') AS 'ZIP'
  402. FROM @xml.nodes('CONSOLIDATED_LIST/ENTITIES/ENTITY') T(c)
  403. UNION ALL
  404. SELECT
  405. T.c.value('DATAID[1]','varchar(500)') AS 'DATAID' ,
  406. T.c.value('ENTITY_ALIAS[10]/QUALITY[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_QUALITY1'
  407. ,T.c.value('ENTITY_ALIAS[10]/ALIAS_NAME[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_NAME1'
  408. ,T.c.value('ENTITY_ADDRESS[10]/COUNTRY[1]','varchar(500)') AS 'COUNTRY'
  409. ,T.c.value('ENTITY_ADDRESS[10]/NOTE[1]','varchar(500)') AS 'ADDRESS'
  410. ,T.c.value('ENTITY_ADDRESS[10]/STREET[1]','varchar(500)') AS 'STREET'
  411. ,T.c.value('ENTITY_ADDRESS[10]/CITY[1]','varchar(500)') AS 'CITY'
  412. ,T.c.value('ENTITY_ADDRESS[10]/zip[1]','varchar(500)') AS 'ZIP'
  413. FROM @xml.nodes('CONSOLIDATED_LIST/ENTITIES/ENTITY') T(c)
  414. UNION ALL
  415. SELECT
  416. T.c.value('DATAID[1]','varchar(500)') AS 'DATAID' ,
  417. T.c.value('ENTITY_ALIAS[11]/QUALITY[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_QUALITY1'
  418. ,T.c.value('ENTITY_ALIAS[11]/ALIAS_NAME[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_NAME1'
  419. ,T.c.value('ENTITY_ADDRESS[11]/COUNTRY[1]','varchar(500)') AS 'COUNTRY'
  420. ,T.c.value('ENTITY_ADDRESS[11]/NOTE[1]','varchar(500)') AS 'ADDRESS'
  421. ,T.c.value('ENTITY_ADDRESS[11]/STREET[1]','varchar(500)') AS 'STREET'
  422. ,T.c.value('ENTITY_ADDRESS[11]/CITY[1]','varchar(500)') AS 'CITY'
  423. ,T.c.value('ENTITY_ADDRESS[11]/zip[1]','varchar(500)') AS 'ZIP'
  424. FROM @xml.nodes('CONSOLIDATED_LIST/ENTITIES/ENTITY') T(c)
  425. UNION ALL
  426. SELECT
  427. T.c.value('DATAID[1]','varchar(500)') AS 'DATAID' ,
  428. T.c.value('ENTITY_ALIAS[12]/QUALITY[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_QUALITY1'
  429. ,T.c.value('ENTITY_ALIAS[12]/ALIAS_NAME[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_NAME1'
  430. ,T.c.value('ENTITY_ADDRESS[12]/COUNTRY[1]','varchar(500)') AS 'COUNTRY'
  431. ,T.c.value('ENTITY_ADDRESS[12]/NOTE[1]','varchar(500)') AS 'ADDRESS'
  432. ,T.c.value('ENTITY_ADDRESS[12]/STREET[1]','varchar(500)') AS 'STREET'
  433. ,T.c.value('ENTITY_ADDRESS[12]/CITY[1]','varchar(500)') AS 'CITY'
  434. ,T.c.value('ENTITY_ADDRESS[12]/zip[1]','varchar(500)') AS 'ZIP'
  435. FROM @xml.nodes('CONSOLIDATED_LIST/ENTITIES/ENTITY') T(c)
  436. UNION ALL
  437. SELECT
  438. T.c.value('DATAID[1]','varchar(500)') AS 'DATAID' ,
  439. T.c.value('ENTITY_ALIAS[13]/QUALITY[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_QUALITY1'
  440. ,T.c.value('ENTITY_ALIAS[13]/ALIAS_NAME[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_NAME1'
  441. ,T.c.value('ENTITY_ADDRESS[13]/COUNTRY[1]','varchar(500)') AS 'COUNTRY'
  442. ,T.c.value('ENTITY_ADDRESS[13]/NOTE[1]','varchar(500)') AS 'ADDRESS'
  443. ,T.c.value('ENTITY_ADDRESS[13]/STREET[1]','varchar(500)') AS 'STREET'
  444. ,T.c.value('ENTITY_ADDRESS[13]/CITY[1]','varchar(500)') AS 'CITY'
  445. ,T.c.value('ENTITY_ADDRESS[13]/zip[1]','varchar(500)') AS 'ZIP'
  446. FROM @xml.nodes('CONSOLIDATED_LIST/ENTITIES/ENTITY') T(c)
  447. UNION ALL
  448. SELECT
  449. T.c.value('DATAID[1]','varchar(500)') AS 'DATAID' ,
  450. T.c.value('ENTITY_ALIAS[14]/QUALITY[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_QUALITY1'
  451. ,T.c.value('ENTITY_ALIAS[14]/ALIAS_NAME[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_NAME1'
  452. ,T.c.value('ENTITY_ADDRESS[14]/COUNTRY[1]','varchar(500)') AS 'COUNTRY'
  453. ,T.c.value('ENTITY_ADDRESS[14]/NOTE[1]','varchar(500)') AS 'ADDRESS'
  454. ,T.c.value('ENTITY_ADDRESS[14]/STREET[1]','varchar(500)') AS 'STREET'
  455. ,T.c.value('ENTITY_ADDRESS[14]/CITY[1]','varchar(500)') AS 'CITY'
  456. ,T.c.value('ENTITY_ADDRESS[14]/zip[1]','varchar(500)') AS 'ZIP'
  457. FROM @xml.nodes('CONSOLIDATED_LIST/ENTITIES/ENTITY') T(c)
  458. UNION ALL
  459. SELECT
  460. T.c.value('DATAID[1]','varchar(500)') AS 'DATAID' ,
  461. T.c.value('ENTITY_ALIAS[15]/QUALITY[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_QUALITY1'
  462. ,T.c.value('ENTITY_ALIAS[15]/ALIAS_NAME[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_NAME1'
  463. ,T.c.value('ENTITY_ADDRESS[15]/COUNTRY[1]','varchar(500)') AS 'COUNTRY'
  464. ,T.c.value('ENTITY_ADDRESS[15]/NOTE[1]','varchar(500)') AS 'ADDRESS'
  465. ,T.c.value('ENTITY_ADDRESS[15]/STREET[1]','varchar(500)') AS 'STREET'
  466. ,T.c.value('ENTITY_ADDRESS[15]/CITY[1]','varchar(500)') AS 'CITY'
  467. ,T.c.value('ENTITY_ADDRESS[15]/zip[1]','varchar(500)') AS 'ZIP'
  468. FROM @xml.nodes('CONSOLIDATED_LIST/ENTITIES/ENTITY') T(c)
  469. UNION ALL
  470. SELECT
  471. T.c.value('DATAID[1]','varchar(500)') AS 'DATAID' ,
  472. T.c.value('ENTITY_ALIAS[16]/QUALITY[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_QUALITY1'
  473. ,T.c.value('ENTITY_ALIAS[16]/ALIAS_NAME[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_NAME1'
  474. ,T.c.value('ENTITY_ADDRESS[16]/COUNTRY[1]','varchar(500)') AS 'COUNTRY'
  475. ,T.c.value('ENTITY_ADDRESS[16]/NOTE[1]','varchar(500)') AS 'ADDRESS'
  476. ,T.c.value('ENTITY_ADDRESS[16]/STREET[1]','varchar(500)') AS 'STREET'
  477. ,T.c.value('ENTITY_ADDRESS[16]/CITY[1]','varchar(500)') AS 'CITY'
  478. ,T.c.value('ENTITY_ADDRESS[16]/zip[1]','varchar(500)') AS 'ZIP'
  479. FROM @xml.nodes('CONSOLIDATED_LIST/ENTITIES/ENTITY') T(c)
  480. UNION ALL
  481. SELECT
  482. T.c.value('DATAID[1]','varchar(500)') AS 'DATAID' ,
  483. T.c.value('ENTITY_ALIAS[17]/QUALITY[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_QUALITY1'
  484. ,T.c.value('ENTITY_ALIAS[17]/ALIAS_NAME[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_NAME1'
  485. ,T.c.value('ENTITY_ADDRESS[17]/COUNTRY[1]','varchar(500)') AS 'COUNTRY'
  486. ,T.c.value('ENTITY_ADDRESS[17]/NOTE[1]','varchar(500)') AS 'ADDRESS'
  487. ,T.c.value('ENTITY_ADDRESS[17]/STREET[1]','varchar(500)') AS 'STREET'
  488. ,T.c.value('ENTITY_ADDRESS[17]/CITY[1]','varchar(500)') AS 'CITY'
  489. ,T.c.value('ENTITY_ADDRESS[17]/zip[1]','varchar(500)') AS 'ZIP'
  490. FROM @xml.nodes('CONSOLIDATED_LIST/ENTITIES/ENTITY') T(c)
  491. UNION ALL
  492. SELECT
  493. T.c.value('DATAID[1]','varchar(500)') AS 'DATAID' ,
  494. T.c.value('ENTITY_ALIAS[18]/QUALITY[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_QUALITY1'
  495. ,T.c.value('ENTITY_ALIAS[18]/ALIAS_NAME[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_NAME1'
  496. ,T.c.value('ENTITY_ADDRESS[18]/COUNTRY[1]','varchar(500)') AS 'COUNTRY'
  497. ,T.c.value('ENTITY_ADDRESS[18]/NOTE[1]','varchar(500)') AS 'ADDRESS'
  498. ,T.c.value('ENTITY_ADDRESS[18]/STREET[1]','varchar(500)') AS 'STREET'
  499. ,T.c.value('ENTITY_ADDRESS[18]/CITY[1]','varchar(500)') AS 'CITY'
  500. ,T.c.value('ENTITY_ADDRESS[18]/ZIP[1]','varchar(500)') AS 'ZIP'
  501. FROM @xml.nodes('CONSOLIDATED_LIST/ENTITIES/ENTITY') T(c)
  502. UNION ALL
  503. SELECT
  504. T.c.value('DATAID[1]','varchar(500)') AS 'DATAID' ,
  505. T.c.value('ENTITY_ALIAS[19]/QUALITY[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_QUALITY1'
  506. ,T.c.value('ENTITY_ALIAS[19]/ALIAS_NAME[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_NAME1'
  507. ,T.c.value('ENTITY_ADDRESS[19]/COUNTRY[1]','varchar(500)') AS 'COUNTRY'
  508. ,T.c.value('ENTITY_ADDRESS[19]/NOTE[1]','varchar(500)') AS 'ADDRESS'
  509. ,T.c.value('ENTITY_ADDRESS[19]/STREET[1]','varchar(500)') AS 'STREET'
  510. ,T.c.value('ENTITY_ADDRESS[19]/CITY[1]','varchar(500)') AS 'CITY'
  511. ,T.c.value('ENTITY_ADDRESS[19]/ZIP[1]','varchar(500)') AS 'ZIP'
  512. FROM @xml.nodes('CONSOLIDATED_LIST/ENTITIES/ENTITY') T(c)
  513. UNION ALL
  514. SELECT
  515. T.c.value('DATAID[1]','varchar(500)') AS 'DATAID' ,
  516. T.c.value('ENTITY_ALIAS[20]/QUALITY[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_QUALITY1'
  517. ,T.c.value('ENTITY_ALIAS[20]/ALIAS_NAME[1]','varchar(500)') AS 'INDIVIDUAL_ALIAS1_NAME1'
  518. ,T.c.value('ENTITY_ADDRESS[20]/COUNTRY[1]','varchar(500)') AS 'COUNTRY'
  519. ,T.c.value('ENTITY_ADDRESS[20]/NOTE[1]','varchar(500)') AS 'ADDRESS'
  520. ,T.c.value('ENTITY_ADDRESS[20]/STREET[1]','varchar(500)') AS 'STREET'
  521. ,T.c.value('ENTITY_ADDRESS[20]/CITY[1]','varchar(500)') AS 'CITY'
  522. ,T.c.value('ENTITY_ADDRESS[20]/zip[1]','varchar(500)') AS 'ZIP'
  523. FROM @xml.nodes('CONSOLIDATED_LIST/ENTITIES/ENTITY') T(c)
  524. )x
  525. --SELECT * FROM #TEMPENTITYNAME
  526. --select * from blacklist where dataSource='UNSCR'
  527. --############# INSERTING DATA ON BLACK LIST ############################################
  528. IF EXISTS(SELECT TOP 1 'x' #TEMPUNSCRLIST)
  529. DELETE FROM blacklist where dataSource='UNSCR'
  530. INSERT INTO blacklist (ofacKey,entNum,name,vesselType,address,city,zip,country,remarks,sortOrder,fromFile,dataSource,indEnt)
  531. SELECT dataSource+''+CAST(entNum AS VARCHAR),entNum,[NAME],[vesselType],address,city,zip,country,remarks,[sortOrder],fromFile,[dataSource],indEnt
  532. FROM
  533. (
  534. SELECT
  535. entNum = DATAID
  536. ,[NAME] = FIRST_NAME+' '+ISNULL(SECOND_NAME,'') +' '+ISNULL(THIRD_NAME,'') +' '+ISNULL(FOURTH_NAME,'')
  537. ,[vesselType]= 'sdn'
  538. ,address = NULL
  539. ,city= NULL
  540. ,zip = NULL
  541. ,country = NULL
  542. ,remarks = ISNULL(SORT_KEY,'')+'/'+' last mod: '+ISNULL(REPLACE(SORT_KEY_LAST_MOD,'T00:00:00',','),'')+' Place Of Birth: '+ISNULL(REPLACE(INDIVIDUAL_PLACE_OF_BIRTH,'T00:00:00',','),'')
  543. +' Date of birth: '+ISNULL(REPLACE(INDIVIDUAL_DATE_OF_BIRTH,'T00:00:00',','),'')+' Nationality: '+ISNULL(NATIONALITY,'')+' Remarks: '+ISNULL(REMARKS,'')+' UNList Type: '+ISNULL(UN_LIST_TYPE,'')
  544. +' Last Update date: '+ISNULL(REPLACE(LAST_DAY_UPDATED,'T00:00:00',','),'')+' Reference No: '+ISNULL(REFERENCE_NUMBER,'')+' Version No: '+ISNULL(VERSIONNUM,'')
  545. ,[sortOrder] = 1
  546. ,fromFile = @xmlFileName
  547. ,[dataSource] = @dataSource
  548. ,indEnt = INDENT
  549. FROM #TEMPUNSCRLIST WITH (NOLOCK)
  550. UNION ALL
  551. SELECT
  552. DATAID,
  553. REPLACE(REPLACE(INDIVIDUAL_ALIAS1_NAME,'? ',''),'?',''),
  554. 'alt',
  555. NULL,
  556. NULL,
  557. NULL,
  558. NULL,
  559. NULL
  560. ,2,
  561. @xmlFileName [fromFile],
  562. @dataSource [dataSource],
  563. 'I'
  564. FROM #TEMPINDVALIASNAME WHERE INDIVIDUAL_ALIAS1_NAME IS NOT NULL
  565. AND ISNULL(REPLACE(REPLACE(INDIVIDUAL_ALIAS1_NAME,'? ',''),'?',''),'B')<>'B'
  566. UNION ALL
  567. SELECT
  568. DATAID,
  569. NULL,
  570. 'add',
  571. ADDRESS,
  572. CITY,
  573. ZIP,
  574. COUNTRY,
  575. NULL,
  576. 3,
  577. @xmlFileName [fromFile],
  578. @dataSource [dataSource],
  579. 'I'
  580. FROM #TEMPINDVALIASNAME
  581. WHERE ( ADDRESS IS NOT NULL OR CITY IS NOT NULL OR ZIP IS NOT NULL OR COUNTRY IS NOT NULL)
  582. UNION ALL
  583. SELECT
  584. DATAID,
  585. FIRST_NAME,
  586. 'sdn' [vesselType],
  587. NULL,
  588. NULL,
  589. NULL,
  590. NULL
  591. ,ISNULL(SORT_KEY,'')+' last mod: '+ISNULL(REPLACE(SORT_KEY_LAST_MOD,'T00:00:00',','),'')
  592. +' UNList Type: '+ISNULL(UN_LIST_TYPE,'') +' Comments: '+ISNULL(Remarks,'') +' List Type: '+ISNULL(LIST_TYPE,'')+' Last updated date: '+ISNULL(REPLACE(LAST_DAY_UPDATED,'T00:00:00',','),'')
  593. +' Listed on: '+ISNULL(LISTED_ON,'')+' Reference No: '+ISNULL(REFERENCE_NUMBER,'')+' Version No: '+ISNULL(VERSIONNUM,'') [remarks]
  594. ,1 [sortOrder],
  595. @xmlFileName [fromFile],
  596. @dataSource [dataSource],
  597. INDENT
  598. FROM #TEMPENTITYLIST WITH (NOLOCK)
  599. UNION ALL
  600. SELECT
  601. DATAID,
  602. INDIVIDUAL_ALIAS1_NAME1,
  603. 'alt',
  604. NULL,
  605. NULL,
  606. NULL,
  607. NULL,
  608. NULL
  609. ,2,
  610. @xmlFileName [fromFile],
  611. @dataSource [dataSource],
  612. 'E'
  613. FROM #TEMPENTITYNAME WHERE INDIVIDUAL_ALIAS1_NAME1 IS NOT NULL
  614. UNION ALL
  615. SELECT
  616. DATAID,
  617. NULL,
  618. 'add',
  619. ADDRESS,
  620. CITY,
  621. NULL,
  622. COUNTRY,
  623. NULL,
  624. 3,
  625. @xmlFileName [fromFile],
  626. @dataSource [dataSource],
  627. 'E'
  628. FROM #TEMPENTITYNAME
  629. WHERE ( ADDRESS IS NOT NULL OR CITY IS NOT NULL OR COUNTRY IS NOT NULL)
  630. )x
  631. DECLARE @sdnCount INT
  632. SELECT @sdnCount = COUNT(*) FROM #TEMPUNSCRLIST
  633. SELECT @sdnCount = @sdnCount + COUNT(*) FROM #TEMPENTITYNAME
  634. INSERT INTO blacklistLog (totalRecord, dataSource, createdBy, createdDate,ofacDate)
  635. SELECT @sdnCount, @dataSource, @user, GETDATE(),CAST(LEFT(@ofacDate,10) AS DATE)
  636. DROP TABLE #TEMPUNSCRLIST
  637. DROP TABLE #TEMPINDVALIASNAME
  638. DROP TABLE #TEMPENTITYNAME
  639. DROP TABLE #TEMPENTITYLIST
  640. MERGE blackListHistory AS blh
  641. USING (SELECT rowId, ofacKey, entNum, name, vesselType, address, city, state, zip, country, remarks, sortOrder, fromFile, dataSource, indEnt FROM blacklist WITH(NOLOCK) WHERE dataSource ='UNSCR' /* @dataSource*/ ) AS bl
  642. ON ISNULL(blh.ofacKey, '') = ISNULL(bl.ofacKey, '') AND ISNULL(blh.entNum, '') = ISNULL(bl.entNum, '')
  643. AND ISNULL(blh.name, '') = ISNULL(bl.name, '') AND ISNULL(blh.vesselType, '') = ISNULL(bl.vesselType, '')
  644. AND ISNULL(blh.address, '') = ISNULL(bl.address, '') AND ISNULL(blh.city, '') = ISNULL(bl.city, '')
  645. AND ISNULL(blh.state, '') = ISNULL(bl.state, '') AND ISNULL(blh.zip, '') = ISNULL(bl.zip, '')
  646. AND ISNULL(blh.country, '') = ISNULL(bl.country, '') AND ISNULL(blh.remarks, '') = ISNULL(bl.remarks, '')
  647. AND ISNULL(blh.sortOrder, '') = ISNULL(bl.sortOrder, '') AND ISNULL(blh.fromFile, '') = ISNULL(bl.fromFile, '')
  648. AND ISNULL(blh.dataSource, '') = ISNULL(bl.dataSource, '') AND ISNULL(blh.indEnt, '') = ISNULL(bl.indEnt, '')
  649. AND bl.dataSource = 'UNSCR' --@dataSource
  650. WHEN NOT MATCHED THEN
  651. INSERT(blackListId, ofacKey, entNum, name, vesselType, address, city, state, zip, country, remarks, sortOrder, fromFile, dataSource, indEnt)
  652. VALUES(bl.rowId, bl.ofacKey, bl.entNum, bl.name, bl.vesselType, bl.address, bl.city, bl.state, bl.zip, bl.country, bl.remarks, bl.sortOrder, bl.fromFile, bl.dataSource, bl.indEnt);
  653. --INSERT INTO blacklistHistory (blackListId,entNum,name,vesselType,address,city,zip,country,remarks,sortOrder,fromFile,dataSource,indEnt)
  654. --SELECT rowId,entNum,name,vesselType,address,city,zip,country,remarks,sortOrder,fromFile,dataSource,indEnt
  655. --FROM blacklist WITH(NOLOCK) WHERE dataSource='UNSCR'
  656. IF @@TRANCOUNT > 0
  657. COMMIT TRANSACTION
  658. SELECT
  659. 0 error_code
  660. ,'UNSCR Data imported successfully' mes
  661. ,NULL as id
  662. EXEC PROC_UPDATE_METAPHONE
  663. END
  664. END
  665. --- ENTITY CLOSE
  666. END TRY
  667. BEGIN CATCH
  668. IF @@TRANCOUNT > 0
  669. ROLLBACK TRANSACTION
  670. SELECT 1 error_code, ERROR_MESSAGE() mes, null as id
  671. END CATCH
  672. GO