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.

356 lines
33 KiB

1 year ago
  1. USE [FastMoneyPro_Remit]
  2. GO
  3. /****** Object: StoredProcedure [dbo].[proc_tranAnalysisDomRegional] 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_tranAnalysisDomRegional]
  9. @flag VARCHAR(20),
  10. @dateType VARCHAR(5) = NULL,
  11. @fromDate VARCHAR(20) = NULL,
  12. @fromTime VARCHAR(20) = NULL,
  13. @toDate VARCHAR(30) = NULL,
  14. @toTime VARCHAR(20) = NULL,
  15. @remitProduct VARCHAR(1) = NULL,
  16. @sAgentGrp VARCHAR(10) = NULL,
  17. @sCountry VARCHAR(50) = NULL,
  18. @sZone VARCHAR(50) = NULL,
  19. @sDistrict VARCHAR(50) = NULL,
  20. @sLocation VARCHAR(50) = NULL,
  21. @sAgent VARCHAR(50) = NULL,
  22. @sBranch VARCHAR(50) = NULL,
  23. @rAgentGrp VARCHAR(10) = NULL,
  24. @rCountry VARCHAR(50) = NULL,
  25. @rZone VARCHAR(50) = NULL,
  26. @rDistrict VARCHAR(50) = NULL,
  27. @rLocation VARCHAR(50) = NULL,
  28. @rAgent VARCHAR(50) = NULL,
  29. @rBranch VARCHAR(50) = NULL,
  30. @groupBy VARCHAR(50) = NULL,
  31. @id VARCHAR(50) = NULL,
  32. @reportType VARCHAR(50) = NULL,
  33. @pageSize VARCHAR(50) = NULL,
  34. @pageNumber VARCHAR(50) = NULL,
  35. @groupById VARCHAR(200)= NULL,
  36. @isExportFull VARCHAR(1) = NULL,
  37. @user VARCHAR(50) = NULL
  38. AS
  39. SET NOCOUNT ON;
  40. SET ANSI_NULLS ON;
  41. DECLARE @DateCondition VARCHAR(50),
  42. @GroupCondition VARCHAR(50),
  43. @ReportTypeCond VARCHAR(50),
  44. @SQL VARCHAR(MAX),
  45. @SQL1 VARCHAR(MAX),
  46. @GroupSelect VARCHAR(50),
  47. @GroupId VARCHAR(50),
  48. @Amt VARCHAR(50),
  49. @Date VARCHAR(50),
  50. @globalFilter VARCHAR(MAX),
  51. @joinTables VARCHAR(MAX)
  52. SET @fromDate=@fromDate+' '+@fromTime
  53. SET @toDate= @toDate+' '+@toTime
  54. SELECT @DateCondition = CASE WHEN @dateType = 's' THEN 'approvedDate'
  55. WHEN @dateType = 'p' THEN 'paidDate' END
  56. SELECT @joinTables = CASE WHEN @dateType = 's' THEN 'LEFT JOIN userZoneMapping szm with(nolock) on sbranch.agentState = szm.zoneName'
  57. WHEN @dateType = 'p' THEN 'LEFT JOIN userZoneMapping pzm with(nolock) on pbranch.agentState = pzm.zoneName' END
  58. SELECT @GroupCondition = CASE
  59. WHEN @dateType='s' AND @groupBy = 'c' THEN 'sCountry'
  60. WHEN @dateType='s' AND @groupBy = 'z' THEN 'SBRANCH.agentState'
  61. WHEN @dateType='s' AND @groupBy = 'd' THEN 'SBRANCH.agentDistrict'
  62. WHEN @dateType='s' AND @groupBy = 'l' THEN 'SLOC.districtName'
  63. WHEN @dateType='s' AND @groupBy = 'a' THEN 'sAgentName'
  64. WHEN @dateType='s' AND @groupBy = 'b' THEN 'sBranchName'
  65. WHEN @dateType='p' AND @groupBy = 'c' THEN 'pCountry'
  66. WHEN @dateType='p' AND @groupBy = 'z' THEN 'PLOC.zoneName'
  67. WHEN @dateType='p' AND @groupBy = 'd' THEN 'PLOC.districtName'
  68. WHEN @dateType='p' AND @groupBy = 'l' THEN 'PLOC.locationName'
  69. WHEN @dateType='p' AND @groupBy = 'a' THEN 'pAgentName'
  70. WHEN @dateType='p' AND @groupBy = 'b' THEN 'pBranchName'
  71. WHEN @groupBy = 'datewise' THEN 'CONVERT(VARCHAR,MAIN.'+@DateCondition+' ,101)'
  72. END
  73. ,@Amt = CASE WHEN @dateType='s' AND @groupBy IN ('c','a','b','z','d','l','datewise') THEN 'tAmt'
  74. WHEN @dateType='p' AND @groupBy IN ('c','a','b','z','d','l','datewise') THEN 'pAmt' END
  75. ,@GroupSelect = CASE
  76. WHEN @dateType='s' AND @groupBy = 'c' THEN 'Sending Country'
  77. WHEN @dateType='s' AND @groupBy = 'z' THEN 'Sending Zone'
  78. WHEN @dateType='s' AND @groupBy = 'd' THEN 'Sending District'
  79. WHEN @dateType='s' AND @groupBy = 'l' THEN 'Sending Location'
  80. WHEN @dateType='s' AND @groupBy = 'a' THEN 'Sending Agent'
  81. WHEN @dateType='s' AND @groupBy = 'b' THEN 'Sending Branch'
  82. WHEN @dateType='p' AND @groupBy = 'c' THEN 'Receiving Country'
  83. WHEN @dateType='p' AND @groupBy = 'z' THEN 'Receiving Zone'
  84. WHEN @dateType='p' AND @groupBy = 'd' THEN 'Receiving District'
  85. WHEN @dateType='p' AND @groupBy = 'l' THEN 'Receiving Location'
  86. WHEN @dateType='p' AND @groupBy = 'a' THEN 'Receiving Agent'
  87. WHEN @dateType='p' AND @groupBy = 'b' THEN 'Receiving Branch'
  88. WHEN @groupBy = 'datewise' THEN CASE WHEN @dateType = 's' THEN 'Send Date'
  89. WHEN @dateType = 'p' THEN 'Paid Date' END
  90. WHEN @groupBy = 'detail' THEN CASE WHEN @dateType = 's' THEN 'Send Date'
  91. WHEN @dateType = 'p' THEN 'Paid Date' END
  92. END
  93. ,@GroupId = CASE
  94. WHEN @dateType='s' AND @groupBy = 'c' THEN 'sCountry'
  95. WHEN @dateType='s' AND @groupBy = 'z' THEN 'SBRANCH.agentState'
  96. WHEN @dateType='s' AND @groupBy = 'd' THEN 'SBRANCH.agentDistrict'
  97. WHEN @dateType='s' AND @groupBy = 'l' THEN 'SLOC.districtName'
  98. WHEN @dateType='s' AND @groupBy = 'a' THEN 'sAgent'
  99. WHEN @dateType='s' AND @groupBy = 'b' THEN 'sBranch'
  100. WHEN @dateType='p' AND @groupBy = 'c' THEN 'pCountry'
  101. WHEN @dateType='p' AND @groupBy = 'z' THEN 'PLOC.zoneName'
  102. WHEN @dateType='p' AND @groupBy = 'd' THEN 'PLOC.districtName'
  103. WHEN @dateType='p' AND @groupBy = 'l' THEN 'PLOC.locationName'
  104. WHEN @dateType='p' AND @groupBy = 'a' THEN 'pAgent'
  105. WHEN @dateType='p' AND @groupBy = 'b' THEN 'pBranch'
  106. WHEN @groupBy = 'datewise' THEN 'CONVERT(VARCHAR,MAIN.'+@DateCondition+' ,101)'
  107. END
  108. ,@ReportTypeCond = CASE
  109. WHEN @dateType='s' AND @groupBy = 'c' THEN 'sCountry'
  110. WHEN @dateType='s' AND @groupBy = 'z' THEN 'SBRANCH.agentState'
  111. WHEN @dateType='s' AND @groupBy = 'd' THEN 'SBRANCH.agentDistrict'
  112. WHEN @dateType='s' AND @groupBy = 'l' THEN 'SBRANCH.agentLocation'
  113. WHEN @dateType='s' AND @groupBy = 'a' THEN 'sAgent'
  114. WHEN @dateType='s' AND @groupBy = 'b' THEN 'sBranch'
  115. WHEN @dateType='p' AND @groupBy = 'c' THEN 'pCountry'
  116. WHEN @dateType='p' AND @groupBy = 'z' THEN 'PLOC.zoneName'
  117. WHEN @dateType='p' AND @groupBy = 'd' THEN 'PLOC.districtName'
  118. WHEN @dateType='p' AND @groupBy = 'l' THEN 'MAIN.pLocation'
  119. WHEN @dateType='p' AND @groupBy = 'a' THEN 'pAgent'
  120. WHEN @dateType='p' AND @groupBy = 'b' THEN 'pBranch'
  121. WHEN @groupBy = 'datewise' THEN 'CONVERT(VARCHAR,MAIN.'+@DateCondition+' ,101)'
  122. END
  123. IF @groupById IS NOT NULL OR @groupById<>''
  124. BEGIN
  125. IF @groupBy='z' AND @dateType='s'
  126. SET @sZone = @groupById
  127. IF @groupBy='d' AND @dateType='s'
  128. SET @sDistrict = @groupById
  129. IF @groupBy='l' AND @dateType='s'
  130. SET @sLocation = @groupById
  131. IF @groupBy = 'a' AND @dateType='s'
  132. SET @sAgent = @groupById
  133. IF @groupBy='b' AND @dateType='s'
  134. SET @sBranch=@groupById
  135. IF @groupBy='z' AND @dateType='p'
  136. SET @rZone = @groupById
  137. IF @groupBy='d' AND @dateType='p'
  138. SET @rDistrict = @groupById
  139. IF @groupBy='l' AND @dateType='p'
  140. SET @rLocation=@groupById
  141. IF @groupBy='a' AND @dateType='p'
  142. SET @rAgent=@groupById
  143. IF @groupBy='b' AND @dateType='p'
  144. SET @rBranch=@groupById
  145. IF @groupBy='datewise'
  146. SET @Date=@groupById
  147. SET @groupBy='detail'
  148. SET @FLAG='main'
  149. SET @GroupSelect=
  150. CASE WHEN @dateType = 's' THEN 'Send Date'
  151. WHEN @dateType = 'p' THEN 'Paid Date' END
  152. END
  153. SET @globalFilter = ''
  154. IF @remitProduct = 'S'
  155. SET @globalFilter = @globalFilter + ' AND MAIN.tranType = ''D'' and TREC.stdCollegeId is null'
  156. IF @remitProduct = 'T'
  157. SET @globalFilter = @globalFilter + ' AND MAIN.tranType = ''B'''
  158. IF @remitProduct = 'E'
  159. SET @globalFilter = @globalFilter + ' AND MAIN.tranType = ''D'' and TREC.stdCollegeId is not null'
  160. IF @sAgent IS NOT NULL
  161. SET @globalFilter = @globalFilter + ' AND sAgent = ''' + @sAgent + ''''
  162. IF @sBranch IS NOT NULL
  163. SET @globalFilter = @globalFilter + ' AND sBranch = '''+ @sBranch +''''
  164. IF @rAgent IS NOT NULL
  165. SET @globalFilter = @globalFilter + ' AND pAgent = ''' + @rAgent + ''''
  166. IF @rBranch IS NOT NULL
  167. SET @globalFilter = @globalFilter + ' AND pBranch = '''+ @rBranch +''''
  168. IF @sLocation IS NOT NULL
  169. SET @globalFilter = @globalFilter + ' AND SBRANCH.agentLocation = '''+ @sLocation +''''
  170. IF @rLocation IS NOT NULL
  171. SET @globalFilter = @globalFilter + ' AND pLocation = '''+ @rLocation +''''
  172. IF @sZone IS NOT NULL
  173. SET @globalFilter = @globalFilter + ' AND SBRANCH.agentState = '''+ @sZone +''''
  174. IF @rZone IS NOT NULL
  175. SET @globalFilter = @globalFilter + ' AND PLOC.zoneName = '''+ @rZone +''''
  176. IF @sDistrict IS NOT NULL
  177. SET @globalFilter = @globalFilter + ' AND SBRANCH.agentDistrict = '''+ @sDistrict +''''
  178. IF @rDistrict IS NOT NULL
  179. SET @globalFilter = @globalFilter + ' AND PLOC.districtName = '''+ @rDistrict +''''
  180. IF @sAgentGrp IS NOT NULL
  181. SET @globalFilter =@globalFilter+ ' AND SBRANCH.agentGrp = ''' + @sAgentGrp + ''''
  182. IF @rAgentGrp IS NOT NULL
  183. SET @globalFilter =@globalFilter+ ' AND PBRANCH.agentGrp = ''' + @rAgentGrp + ''''
  184. IF @Date IS NOT NULL
  185. SET @globalFilter = @globalFilter + ' AND convert(varchar,MAIN.'+ @DATECONDITION +',101) = convert(varchar,'''+ @Date +''',101)'
  186. IF @user IS NOT NULL AND @dateType ='s'
  187. SET @globalFilter =@globalFilter+ ' AND szm.userName = ''' + @user + ''' and szm.isDeleted is null '
  188. IF @user IS NOT NULL AND @dateType ='p'
  189. SET @globalFilter =@globalFilter+ ' AND pzm.userName = ''' + @user + ''' and pzm.isDeleted is null '
  190. IF @FLAG = 'main' AND @groupBy = 'detail'
  191. BEGIN
  192. SET @SQL ='SELECT
  193. [Control No] =''<a href = "#" onclick="OpenInNewWindow('''''+dbo.FNAGetURL()+'Remit/Transaction/Reports/SearchTransaction.aspx?commentFlag=N&showBankDetail=N&tranId=''+CAST(main.id AS VARCHAR)+'''''')">''+dbo.FNADecryptString(controlNo)+''</a>''
  194. ,['+ @GroupSelect +'] = CONVERT(VARCHAR,MAIN.'+ @DATECONDITION +',101)
  195. ,[Sending Country] = sCountry
  196. ,[Sending Location] = SLOC.districtName
  197. ,[Sending Agent] = sAgentName
  198. ,[Sending Branch] = sBranchName
  199. ,[Sending Amt] = tAmt
  200. ,[Sending Currency] = collCurr
  201. ,[Status] = MAIN.tranStatus
  202. ,[Receiving Country] = ISNULL(pCountry,''-'')
  203. ,[Receiving Location] = PLOC.locationName
  204. ,[Receiving Agent] = ISNULL(pAgentName,''-'')
  205. ,[Receiving Branch] = ISNULL(pBranchName,''-'')
  206. ,[Receiving Amt] = pAmt
  207. ,[Receiving Currency] = payoutCurr
  208. ,[Tran Type] = MAIN.paymentMethod
  209. ,[Sender Name]=TSEND.firstName + ISNULL('' '' + TSEND.middleName, '''') + ISNULL('' '' + TSEND.lastName1, '''') + ISNULL('' '' + TSEND.lastName2,'''')
  210. ,[Receiver Name]=TREC.firstName + ISNULL('' '' + TREC.middleName, '''') + ISNULL('' '' + TREC.lastName1, '''') + ISNULL('' '' + TREC.lastName2, '''')
  211. ,[Receiver Id Type] = isnull(TREC.idType2, TREC.idType)
  212. ,[Receiver Id Number] = isnull(TREC.idNumber2, TREC.idNumber)
  213. FROM remitTran MAIN WITH(NOLOCK)
  214. LEFT JOIN agentMaster SBRANCH WITH(NOLOCK) ON SBRANCH.agentId=MAIN.sBranch
  215. LEFT JOIN agentMaster PBRANCH WITH(NOLOCK) ON PBRANCH.agentId=MAIN.pBranch
  216. LEFT JOIN api_districtList SLOC WITH(NOLOCK) ON SLOC.districtCode=SBRANCH.agentLocation
  217. LEFT JOIN vwZoneDistrictLocation PLOC WITH(NOLOCK) ON PLOC.locationId=MAIN.pLocation
  218. LEFT JOIN tranSenders TSEND WITH(NOLOCK) ON MAIN.id=TSEND.tranId
  219. LEFT JOIN tranReceivers TREC WITH(NOLOCK) ON MAIN.id=TREC.tranId
  220. '+@joinTables+'
  221. WHERE MAIN.sCountry=''Nepal'' AND
  222. MAIN.'+ @DATECONDITION +' BETWEEN '''+ @FROMDATE +''' AND '''+ @TODATE +''' '
  223. SET @SQL = @SQL + @globalFilter
  224. END
  225. IF @FLAG = 'datewise'
  226. BEGIN
  227. SET @SQL = 'SELECT
  228. '+@ReportTypeCond+' [groupBy]
  229. ,'+ @GroupCondition +' ['+ @GroupSelect +']
  230. ,COUNT(*) [Txn Count]
  231. ,SUM('+@Amt+') [Txn Amount]
  232. FROM remitTran MAIN WITH(NOLOCK)
  233. LEFT JOIN agentMaster SBRANCH WITH(NOLOCK) ON SBRANCH.agentId=MAIN.sBranch
  234. LEFT JOIN agentMaster PBRANCH WITH(NOLOCK) ON PBRANCH.agentId=MAIN.pBranch
  235. LEFT JOIN api_districtList SLOC WITH(NOLOCK) ON SLOC.districtCode=SBRANCH.agentLocation
  236. LEFT JOIN vwZoneDistrictLocation PLOC WITH(NOLOCK) ON PLOC.locationId=MAIN.pLocation
  237. LEFT JOIN tranSenders TSEND WITH(NOLOCK) ON MAIN.id=TSEND.tranId
  238. LEFT JOIN tranReceivers TREC WITH(NOLOCK) ON MAIN.id=TREC.tranId
  239. '+@joinTables+'
  240. WHERE MAIN.sCountry=''Nepal'' and
  241. MAIN.'+ @DATECONDITION +' BETWEEN '''+ @FROMDATE +''' AND '''+ @TODATE +''' '
  242. SET @SQL = @SQL + @globalFilter
  243. SET @SQL = @SQL + ' GROUP BY '+ @GroupCondition +''
  244. END
  245. IF @FLAG = 'main' AND @groupBy <>'detail'
  246. BEGIN
  247. --select @ReportTypeCond,@GroupSelect,@GroupCondition,@Amt
  248. SET @SQL = 'SELECT
  249. '+@ReportTypeCond+' [groupBy]
  250. ,['+ @GroupSelect +'] ='+ @GroupCondition +'
  251. ,COUNT(*) [Txn Count]
  252. ,SUM('+@Amt+') [Txn Amount]
  253. FROM remitTran MAIN WITH(NOLOCK)
  254. LEFT JOIN agentMaster SBRANCH WITH(NOLOCK) ON SBRANCH.agentId=MAIN.sBranch
  255. LEFT JOIN agentMaster PBRANCH WITH(NOLOCK) ON PBRANCH.agentId=MAIN.pBranch
  256. LEFT JOIN api_districtList SLOC WITH(NOLOCK) ON SLOC.districtCode=SBRANCH.agentLocation
  257. LEFT JOIN vwZoneDistrictLocation PLOC WITH(NOLOCK) ON PLOC.locationId=MAIN.pLocation
  258. LEFT JOIN tranSenders TSEND WITH(NOLOCK) ON MAIN.id=TSEND.tranId
  259. LEFT JOIN tranReceivers TREC WITH(NOLOCK) ON MAIN.id=TREC.tranId
  260. '+@joinTables+'
  261. WHERE ISNULL(MAIN.sCountry,'''')=''Nepal'' AND
  262. MAIN.'+ @DATECONDITION +' BETWEEN '''+ @FROMDATE +''' AND '''+ @TODATE +''' '
  263. SET @SQL = @SQL + @globalFilter
  264. SET @SQL = @SQL + ' GROUP BY '+ @GroupCondition +','+@ReportTypeCond+''
  265. PRINT(@SQL)
  266. END
  267. IF OBJECT_ID('tempdb..#temp_table') IS NOT NULL
  268. DROP TABLE #temp_table
  269. DECLARE @SQL2 AS VARCHAR(MAX)
  270. SET @SQL2='SELECT ROW_NUMBER() OVER (ORDER BY ['+@GroupSelect+']) AS [S.N.],*
  271. INTO #temp_table
  272. FROM
  273. (
  274. '+ @SQL +'
  275. ) AS aa ORDER BY ['+@GroupSelect+'] '
  276. IF @isExportFull = 'Y'
  277. BEGIN
  278. SET @SQL1=@SQL2+'; SELECT * FROM #temp_table'
  279. END
  280. ELSE
  281. BEGIN
  282. SET @SQL1=@SQL2+'; SELECT COUNT(''a'') AS TXNCOUNT,'+@pageSize+' PAGESIZE,'+@pageNumber+' PAGENUMBER FROM #temp_table;
  283. SELECT * FROM #temp_table WHERE [S.N.] BETWEEN (('+@pageNumber+' - 1) * '+@pageSize+' + 1) AND '+@pageNumber+' * '+@pageSize+''
  284. END
  285. PRINT(@SQL1)
  286. EXEC(@SQL1)
  287. EXEC proc_errorHandler '0', 'Report has been prepared successfully.', NULL
  288. SELECT 'GROUP BY' head ,@GroupSelect value
  289. UNION ALL
  290. SELECT 'DATE TYPE ' head,CASE WHEN @dateType = 'S' THEN 'Sending Date'
  291. WHEN @dateType = 'P' THEN 'Paid Date'
  292. WHEN @dateType = 'C' THEN 'Cancel Date' END value
  293. UNION ALL
  294. SELECT 'FROM DATE ' head, CONVERT(VARCHAR, @fromDate, 101) value
  295. UNION ALL
  296. SELECT 'TO DATE ' head, CONVERT(VARCHAR, @toDate, 101) value
  297. UNION ALL
  298. SELECT 'Remit Product ' head, (SELECT CASE WHEN @remitProduct ='S' THEN 'Normal Send'
  299. WHEN @remitProduct ='T' THEN 'Topup'
  300. WHEN @remitProduct ='E' THEN 'Edu Pay'
  301. ELSE 'All' END) value
  302. UNION ALL
  303. SELECT 'SENDING AGENT GROUP' head, CASE WHEN @sAgentGrp IS NULL THEN 'All' ELSE (SELECT detailTitle FROM staticdataValue WHERE valueId = @sAgentGrp) END
  304. UNION ALL
  305. SELECT 'SENDING COUNTRY' head,ISNULL(@sCountry,'All')
  306. UNION ALL
  307. SELECT 'SENDING ZONE ' head,ISNULL(@sZone,'All')
  308. UNION ALL
  309. SELECT 'SENDING DISTRICT ' head,ISNULL(@sDistrict,'All')
  310. UNION ALL
  311. SELECT 'SENDING LOCATION ' head,ISNULL((SELECT districtName FROM api_districtList WHERE districtCode=@sLocation),'All')
  312. UNION ALL
  313. SELECT 'SENDING AGENT ' head,ISNULL((SELECT agentName FROM agentMaster WITH(NOLOCK) WHERE agentId = @sAgent),'All')
  314. UNION ALL
  315. SELECT 'SENDING BRANCH ' head,ISNULL((SELECT agentName FROM agentMaster WITH(NOLOCK) WHERE agentId = @sBranch),'All')
  316. UNION ALL
  317. SELECT 'RECEIVING AGENT GROUP' head, CASE WHEN @rAgentGrp IS NULL THEN 'All' ELSE (SELECT detailTitle FROM staticdataValue WHERE valueId = @rAgentGrp) END
  318. UNION ALL
  319. SELECT 'RECEIVING COUNTRY ' head,ISNULL(@rCountry,'All')
  320. UNION ALL
  321. SELECT 'RECEIVING ZONE ' head,ISNULL(@rZone,'All')
  322. UNION ALL
  323. SELECT 'RECEIVING DISTRICT ' head,ISNULL(@rDistrict,'All')
  324. UNION ALL
  325. SELECT 'RECEIVING LOCATION ' head,ISNULL((SELECT districtName FROM api_districtList WHERE districtCode=@rLocation),'All')
  326. UNION ALL
  327. SELECT 'RECEIVING AGENT ' head,ISNULL((SELECT agentName FROM agentMaster WITH(NOLOCK) WHERE agentId = @rAgent),'All')
  328. UNION ALL
  329. SELECT 'RECEIVING BRANCH ' head,ISNULL((SELECT agentName FROM agentMaster WITH(NOLOCK) WHERE agentId = @rBranch),'All')
  330. SELECT 'TRANSACTION ANALYSIS REPORT- (DOMESTIC) ' title
  331. GO