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.

621 lines
38 KiB

1 year ago
  1. USE [FastMoneyPro_Remit]
  2. GO
  3. /****** Object: StoredProcedure [dbo].[proc_txnDocumentReport] 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 proc [dbo].[proc_txnDocumentReport]
  9. @functionID VARCHAR(100)
  10. ,@user VARCHAR(30)
  11. ,@pageFrom INT
  12. ,@pageTo INT
  13. ,@branch INT
  14. ,@agent INT
  15. ,@fxml XML = NULL
  16. ,@qxml XML = NULL
  17. ,@dxml XML = NULL
  18. ,@downloadAll CHAR(1) = NULL
  19. AS
  20. SET NOCOUNT ON
  21. SET @pageFrom = ISNULL(NULLIF(@pageFrom, 0), 1)
  22. SET @pageTo = ISNULL(@pageTo, @pageFrom)
  23. DECLARE @pageSize INT = 50
  24. DECLARE @f1 VARCHAR(500), @f2 VARCHAR(500), @q1 VARCHAR(500), @d1 VARCHAR(500) , @d2 VARCHAR(500),@d3 VARCHAR(500)
  25. DECLARE @country VARCHAR(50),@agentId INT,@branchId INT,@fromDate VARCHAR(10),@toDate VARCHAR(10),
  26. @hdnrootUrl VARCHAR(500),@agentName VARCHAR(250),@branchName VARCHAR(250)
  27. DECLARE @grandTotal VARCHAR(2000),@filter VARCHAR(1000)
  28. SELECT
  29. @country = p.value('@country','VARCHAR(50)')
  30. ,@agentId = p.value('@agent','VARCHAR(250)')
  31. ,@branchId = p.value('@branch','VARCHAR(100)')
  32. ,@fromDate = p.value('@fromdate','VARCHAR(100)')
  33. ,@toDate = p.value('@todate','VARCHAR(100)')
  34. ,@hdnrootUrl = p.value('@hdnrooturl','VARCHAR(500)')
  35. FROM @fxml.nodes('/root/row') AS tmp(p)
  36. IF ISNULL(@toDate,'')=''
  37. SET @toDate=@fromDate
  38. SELECT @country=countryName FROM countryMaster WHERE countryId=@country
  39. SET @filter = 'Country = ' + @country
  40. +' | Agent = ' + (SELECT agentName FROM agentmaster WHERE agentId=@agentId)
  41. +' | Branch = ' + CASE WHEN isnull(@branchId,'')='' THEN 'All' ELSE (SELECT agentName FROM agentmaster WHERE agentId=@branchId) END
  42. +' | From Date =' +@fromDate
  43. +' | To Date =' +@toDate
  44. --print @fromDate+' '+@toDate+' '+ @country
  45. IF @functionID = '20168400'
  46. BEGIN
  47. SELECT
  48. --[Create Date]=y.createdDate,
  49. --[Agent]=y.sAgent,
  50. [Agent Name]=y.sAgentName,
  51. --[Branch]=y.sBranch,
  52. [Branch Name]=y.sBranchName,
  53. [No. Of Txn]='<span style="cursor:pointer;color:blue;" onclick="DrillDown(''20168400-d1'',''' + CAST(y.sAgent AS VARCHAR) + '|'+ CAST(y.sBranch AS VARCHAR) + ''');">' + CAST(y.txn AS VARCHAR) + '</span>',
  54. [Form Uploaded]='<span style="cursor:pointer;color:blue;" onclick="DrillDown(''20168400-d2'',''' + CAST(y.sAgent AS VARCHAR) + '|'+ CAST(y.sBranch AS VARCHAR) + ''');">' + CAST(y.form AS VARCHAR) + '</span>',
  55. [Receipt Uploaded]='<span style="cursor:pointer;color:blue;" onclick="DrillDown(''20168400-d3'',''' + CAST(y.sAgent AS VARCHAR) + '|'+ CAST(y.sBranch AS VARCHAR) + ''');">' + CAST(y.receipt AS VARCHAR) + '</span>',
  56. [Remaining Form]='<span style="cursor:pointer;color:blue;" onclick="DrillDown(''20168400-d4'',''' + CAST(y.sAgent AS VARCHAR) + '|'+ CAST(y.sBranch AS VARCHAR) + ''');">' + CAST((txn-form) AS VARCHAR) + '</span>',
  57. [Remaining Receipt]= '<span style="cursor:pointer;color:blue;" onclick="DrillDown(''20168400-d5'',''' + CAST(y.sAgent AS VARCHAR) + '|'+ CAST(y.sBranch AS VARCHAR) + ''');">' + CAST((txn-receipt) AS VARCHAR) + '</span>'
  58. FROM (
  59. SELECT ROW_NUMBER() OVER (ORDER BY x.sAgent ASC) row_Id,
  60. COUNT(tranId) txn,SUM(ISNULL(x.form,0)) form,SUM(ISNULL(x.receipt,0)) receipt,x.sAgent,x.sAgentName,x.sBranch,x.sBranchName--,x.createdDate
  61. FROM (
  62. SELECT tr.id tranId
  63. ,du.form
  64. ,du.receipt
  65. ,tr.sAgent,sAgentName,sBranch,sBranchName,tr.createdDate
  66. FROM vwRemitTran tr
  67. LEFT JOIN (
  68. SELECT SUM(form) form,SUM(receipt) receipt,tranId FROM (
  69. SELECT
  70. CASE WHEN du.fileType='form' THEN 1 ELSE 0 END AS form
  71. ,CASE WHEN du.fileType='receipt' THEN 1 ELSE 0 END AS receipt
  72. ,tranId
  73. FROM txnDocUpload du
  74. )a GROUP BY tranId
  75. )du ON du.tranId=tr.id
  76. --txnDocUpload du on du.tranId=tr.id
  77. WHERE tr.createdDate between @fromDate and @toDate+' 23:59:59'
  78. and tr.sCountry=ISNULL(@country,tr.sCountry)
  79. and tr.sAgent=ISNULL(@agentId,tr.sAgent)
  80. and tr.sBranch=ISNULL(@branchId,tr.sBranch)
  81. )x
  82. GROUP BY x.sAgent,x.sAgentName,x.sBranch,x.sBranchName--,x.createdDate
  83. )y
  84. WHERE y.row_Id BETWEEN (@pageFrom -1) * @pageSize + 1 AND @pageTo * @pageSize
  85. UPDATE #params SET
  86. ReportTitle='Txn Document Upload Report'
  87. ,Filters= @filter
  88. ,NoHeader = CASE WHEN @pageFrom > 1 THEN 1 ELSE 0 END
  89. --,FieldAlignment = '|L|R|R|R'
  90. --,FieldFormat = '||N|N|N'
  91. ,IncludeSerialNo=1
  92. ,PageNumber=@pageFrom
  93. ,PageSize=@pageSize
  94. --,TotalTextCol = 0
  95. --,TotalText ='<b>Total</b>'
  96. --,TotalFields ='2|3|4'
  97. ,LoadMode = 1
  98. --,MergeColumnHead=1
  99. --,HasGrandTotal =0
  100. --,GTotalText='[Grand Total]'
  101. --,GTData = @grandTotal
  102. SELECT * FROM #params
  103. RETURN
  104. END
  105. IF @functionID = '20168400-d1'
  106. BEGIN
  107. SELECT
  108. @q1 = p.value('@q1','VARCHAR(20)')
  109. FROM @qxml.nodes('/root/row') AS tmp(p)
  110. SELECT
  111. @d1 = p.value('@d1','VARCHAR(20)')
  112. ,@d2 =p.value('@d2','VARCHAR(20)')
  113. --,@d3 =p.value('@d3','VARCHAR(20)')
  114. FROM @dxml.nodes('/root/row') AS tmp(p)
  115. SELECT
  116. [Tran No]=x.tranId
  117. ,[Sender Name]=x.senderName
  118. ,[Sender ID]=x.Id
  119. ,[Receiver Name]=x.receiverName
  120. ,[Form]= '<a href="'+@hdnrootUrl+'/img.ashx?type=txn&id='+x.form+'&df='+x.txnDocFolder+'" target="_blank">' + x.form + '</a>'
  121. ,[Receipt]='<a href="'+@hdnrootUrl+'/img.ashx?type=txn&id='+x.receipt+'&df='+x.txnDocFolder+'" target="_blank">' + x.receipt + '</a>'
  122. FROM (
  123. SELECT
  124. ROW_NUMBER() OVER (ORDER BY tr.id ASC) row_Id,
  125. tr.id tranId,tr.senderName,ts.customerId as Id,tr.receiverName, du.receipt, du.form ,du.txnDocFolder
  126. FROM vwRemitTran tr
  127. INNER JOIN vwTranSenders ts ON tr.id=ts.tranId
  128. LEFT JOIN (
  129. SELECT
  130. MAX(form) form,MAX(receipt) receipt,tranId,MAX(txnDocFolder) txnDocFolder
  131. FROM (
  132. SELECT
  133. CASE WHEN du.fileType='form' THEN [fileName] ELSE '' END AS form
  134. ,CASE WHEN du.fileType='receipt' THEN [fileName] ELSE '' END AS receipt
  135. ,tranId
  136. ,ISNULL(txnDocFolder,'') AS txnDocFolder
  137. FROM txnDocUpload du
  138. )a GROUP BY tranId
  139. )du on du.tranId=tr.id
  140. WHERE tr.createdDate BETWEEN @fromDate AND @toDate+' 23:59:59'
  141. AND tr.sCountry=ISNULL(@country,tr.sCountry)
  142. AND tr.sAgent=@d1
  143. AND tr.sBranch=@d2
  144. )x
  145. WHERE x.row_Id BETWEEN (@pageFrom -1) * @pageSize + 1 AND @pageTo * @pageSize
  146. ----------------------
  147. SET @agentName= (SELECT agentName FROM agentmaster WHERE agentId=@d1)
  148. SET @branchName= (SELECT agentName FROM agentmaster WHERE agentId=@d2)
  149. --set @filter = 'Country = ' + isnull(@country,'All')
  150. -- +' | Agent = '+@d1
  151. -- +' | Branch = ' + @d2
  152. -- +' | Date =' +@d3
  153. UPDATE #params SET
  154. ReportTitle='Txn Document Upload Report Drilldown ' + ISNULL('-' + @agentName, '') + ISNULL('-' + @branchName, '')
  155. ,Filters= @filter
  156. ,NoHeader = CASE WHEN @pageFrom > 1 THEN 1 ELSE 0 END
  157. ,FieldAlignment = '||||||'
  158. ,FieldFormat ='||||||'
  159. ,IncludeSerialNo=1
  160. ,PageNumber=@pageFrom
  161. ,PageSize=@pageSize
  162. --,TotalTextCol = 0
  163. --,TotalText ='<b>Total</b>'
  164. --,TotalFields ='5|6|7'
  165. --,SubTotalBy = 0
  166. --,SubTotalTextCol =0
  167. --,SubTotalText ='<b>Country Total</b>'
  168. --,SubTotalFields ='5|6|7'
  169. --,HasGrandTotal =1
  170. --,GTotalText='[Grand Total]'
  171. --,GTData = @grandTotal
  172. ,LoadMode = 1
  173. --,MergeColumnHead=1
  174. SELECT * FROM #params
  175. RETURN
  176. END
  177. ELSE IF @functionID = '20168400-d2'
  178. BEGIN
  179. SELECT
  180. @q1 = p.value('@q1','VARCHAR(20)')
  181. FROM @qxml.nodes('/root/row') AS tmp(p)
  182. SELECT
  183. @d1 = p.value('@d1','VARCHAR(20)')
  184. ,@d2 =p.value('@d2','VARCHAR(20)')
  185. --,@d3 =p.value('@d3','VARCHAR(20)')
  186. FROM @dxml.nodes('/root/row') AS tmp(p)
  187. SELECT
  188. [Tran No]=x.tranId
  189. ,[Sender Name]=x.senderName
  190. ,[Sender ID]=x.Id
  191. ,[Receiver Name]=x.receiverName
  192. ,[Form]= '<a href="'+@hdnrootUrl+'/img.ashx?type=txn&id='+x.form+'&df='+x.txnDocFolder+'" target="_blank">' + x.form + '</a>'
  193. ,[Receipt]='<a href="'+@hdnrootUrl+'/img.ashx?type=txn&id='+x.receipt+'&df='+x.txnDocFolder+'" target="_blank">' + x.receipt + '</a>'
  194. FROM (
  195. SELECT
  196. ROW_NUMBER() OVER (ORDER BY tr.id ASC) row_Id,
  197. tr.id tranId,tr.senderName,ts.customerId as Id,tr.receiverName,du.receipt, du.form,du.txnDocFolder
  198. FROM vwRemitTran tr
  199. INNER JOIN vwTranSenders ts on tr.id=ts.tranId
  200. --LEFT JOIN txnDocUpload du on du.tranId=tr.id
  201. LEFT JOIN (
  202. SELECT
  203. MAX(form) form,MAX(receipt) receipt,tranId,MAX(txnDocFolder) txnDocFolder
  204. FROM (
  205. SELECT
  206. CASE WHEN du.fileType='form' THEN [fileName] ELSE '' END AS form
  207. ,CASE WHEN du.fileType='receipt' THEN [fileName] ELSE '' END AS receipt
  208. ,tranId
  209. ,ISNULL(txnDocFolder,'') AS txnDocFolder
  210. FROM txnDocUpload du
  211. )a GROUP BY tranId
  212. )du ON du.tranId=tr.id
  213. WHERE tr.createdDate BETWEEN @fromDate AND @toDate+' 23:59:59'
  214. AND tr.sCountry=isnull(@country,tr.sCountry)
  215. AND tr.sAgent=@d1
  216. AND tr.sBranch=@d2
  217. AND form<>''
  218. )x
  219. WHERE x.row_Id BETWEEN (@pageFrom -1) * @pageSize + 1 AND @pageTo * @pageSize
  220. ----------------------
  221. --SET @filter = 'Country = ' + isnull(@country,'All')
  222. -- +' | Agent = '+@d1
  223. -- +' | Branch = ' + @d2
  224. -- +' | Date =' +@d3
  225. SET @agentName= (SELECT agentName FROM agentmaster WHERE agentId=@d1)
  226. SET @branchName= (SELECT agentName FROM agentmaster WHERE agentId=@d2)
  227. UPDATE #params SET
  228. ReportTitle='Txn Document Upload Report Drilldown ' + ISNULL('-' + @agentName, '') + ISNULL('-' + @branchName, '')
  229. ,Filters= @filter
  230. ,NoHeader = CASE WHEN @pageFrom > 1 THEN 1 ELSE 0 END
  231. ,FieldAlignment = '||||||'
  232. ,FieldFormat ='||||||'
  233. ,IncludeSerialNo=1
  234. ,PageNumber=@pageFrom
  235. ,PageSize=@pageSize
  236. --,TotalTextCol = 0
  237. --,TotalText ='<b>Total</b>'
  238. --,TotalFields ='5|6|7'
  239. --,SubTotalBy = 0
  240. --,SubTotalTextCol =0
  241. --,SubTotalText ='<b>Country Total</b>'
  242. --,SubTotalFields ='5|6|7'
  243. --,HasGrandTotal =1
  244. --,GTotalText='[Grand Total]'
  245. --,GTData = @grandTotal
  246. ,LoadMode = 1
  247. --,MergeColumnHead=1
  248. SELECT * FROM #params
  249. RETURN
  250. END
  251. ELSE IF @functionID = '20168400-d3'
  252. BEGIN
  253. SELECT
  254. @q1 = p.value('@q1','VARCHAR(20)')
  255. FROM @qxml.nodes('/root/row') AS tmp(p)
  256. SELECT
  257. @d1 = p.value('@d1','VARCHAR(20)')
  258. ,@d2 =p.value('@d2','VARCHAR(20)')
  259. --,@d3 =p.value('@d3','VARCHAR(20)')
  260. FROM @dxml.nodes('/root/row') AS tmp(p)
  261. SELECT
  262. [Tran No]=x.tranId
  263. ,[Sender Name]=x.senderName
  264. ,[Sender ID]=x.Id
  265. ,[Receiver Name]=x.receiverName
  266. ,[Form]= '<a href="'+@hdnrootUrl+'/img.ashx?type=txn&id='+x.form+'&df='+x.txnDocFolder+'" target="_blank">' + x.form + '</a>'
  267. ,[Receipt]='<a href="'+@hdnrootUrl+'/img.ashx?type=txn&id='+x.receipt+'&df='+x.txnDocFolder+'" target="_blank">' + x.receipt + '</a>'
  268. FROM (
  269. SELECT
  270. ROW_NUMBER() OVER (ORDER BY tr.id ASC) row_Id,
  271. tr.id tranId,tr.senderName,ts.customerId as Id,tr.receiverName,du.receipt, du.form,du.txnDocFolder
  272. FROM vwRemitTran tr
  273. INNER JOIN vwTranSenders ts on tr.id=ts.tranId
  274. --LEFT JOIN txnDocUpload du on du.tranId=tr.id
  275. LEFT JOIN (
  276. SELECT
  277. MAX(form) form,MAX(receipt) receipt,tranId ,MAX(txnDocFolder) txnDocFolder
  278. FROM (
  279. SELECT
  280. CASE WHEN du.fileType='form' THEN [fileName] ELSE '' END AS form
  281. ,CASE WHEN du.fileType='receipt' THEN [fileName] ELSE '' END AS receipt
  282. ,tranId
  283. ,ISNULL(txnDocFolder,'') AS txnDocFolder
  284. FROM txnDocUpload du
  285. )a GROUP BY tranId
  286. )du ON du.tranId=tr.id
  287. WHERE tr.createdDate BETWEEN @fromDate AND @toDate+' 23:59:59'
  288. AND tr.sCountry=ISNULL(@country,tr.sCountry)
  289. AND tr.sAgent=@d1
  290. AND tr.sBranch=@d2
  291. AND receipt<>''
  292. )x
  293. WHERE x.row_Id BETWEEN (@pageFrom -1) * @pageSize + 1 AND @pageTo * @pageSize
  294. ----------------------
  295. --set @filter = 'Country = ' + isnull(@country,'All')
  296. -- +' | Agent = '+@d1
  297. -- +' | Branch = ' + @d2
  298. -- +' | Date =' +@d3
  299. SET @agentName= (SELECT agentName FROM agentmaster WHERE agentId=@d1)
  300. SET @branchName= (SELECT agentName FROM agentmaster WHERE agentId=@d2)
  301. UPDATE #params SET
  302. ReportTitle='Txn Document Upload Report Drilldown ' + ISNULL('-' + @agentName, '') + ISNULL('-' + @branchName, '')
  303. ,Filters= @filter
  304. ,NoHeader = CASE WHEN @pageFrom > 1 THEN 1 ELSE 0 END
  305. ,FieldAlignment = '||||||'
  306. ,FieldFormat ='||||||'
  307. ,IncludeSerialNo=1
  308. ,PageNumber=@pageFrom
  309. ,PageSize=@pageSize
  310. --,TotalTextCol = 0
  311. --,TotalText ='<b>Total</b>'
  312. --,TotalFields ='5|6|7'
  313. --,SubTotalBy = 0
  314. --,SubTotalTextCol =0
  315. --,SubTotalText ='<b>Country Total</b>'
  316. --,SubTotalFields ='5|6|7'
  317. --,HasGrandTotal =1
  318. --,GTotalText='[Grand Total]'
  319. --,GTData = @grandTotal
  320. ,LoadMode = 1
  321. --,MergeColumnHead=1
  322. SELECT * FROM #params
  323. RETURN
  324. END
  325. ELSE IF @functionID = '20168400-d4'
  326. BEGIN
  327. SELECT
  328. @q1 = p.value('@q1','VARCHAR(20)')
  329. FROM @qxml.nodes('/root/row') AS tmp(p)
  330. SELECT
  331. @d1 = p.value('@d1','VARCHAR(20)')
  332. ,@d2 =p.value('@d2','VARCHAR(20)')
  333. --,@d3 =p.value('@d3','VARCHAR(20)')
  334. FROM @dxml.nodes('/root/row') AS tmp(p)
  335. SELECT
  336. [Tran No]=x.tranId
  337. ,[Sender Name]=x.senderName
  338. ,[Sender ID]=x.Id
  339. ,[Receiver Name]=x.receiverName
  340. ,[Form]= '<a href="'+@hdnrootUrl+'/img.ashx?type=txn&id='+x.form+'&df='+x.txnDocFolder+'" target="_blank">' + x.form + '</a>'
  341. ,[Receipt]='<a href="'+@hdnrootUrl+'/img.ashx?type=txn&id='+x.receipt+'&df='+x.txnDocFolder+'" target="_blank">' + x.receipt + '</a>'
  342. FROM (
  343. SELECT
  344. ROW_NUMBER() OVER (ORDER BY tr.id ASC) row_Id,
  345. tr.id tranId,tr.senderName,ts.customerId AS Id,tr.receiverName,form,receipt,du.txnDocFolder
  346. FROM vwRemitTran tr
  347. INNER JOIN vwTranSenders ts ON tr.id=ts.tranId
  348. --LEFT JOIN (
  349. -- select
  350. -- tranId,
  351. -- from txnDocUpload du where fileType='form'
  352. --)du on du.tranId=tr.id
  353. LEFT JOIN (
  354. SELECT
  355. MAX(form) form,MAX(receipt) receipt,tranId,MAX(txnDocFolder) txnDocFolder
  356. FROM (
  357. SELECT
  358. CASE WHEN du.fileType='form' THEN [fileName] ELSE '' END AS form
  359. ,CASE WHEN du.fileType='receipt' THEN [fileName] ELSE '' END AS receipt
  360. ,tranId
  361. ,ISNULL(txnDocFolder,'') AS txnDocFolder
  362. FROM txnDocUpload du WHERE fileType='form'
  363. )a GROUP BY tranId
  364. )du ON du.tranId=tr.id
  365. WHERE tr.createdDate BETWEEN @fromDate AND @toDate+' 23:59:59'
  366. AND tr.sCountry=ISNULL(@country,tr.sCountry)
  367. AND tr.sAgent=@d1
  368. AND tr.sBranch=@d2
  369. AND du.tranId IS NULL
  370. )x
  371. WHERE x.row_Id BETWEEN (@pageFrom -1) * @pageSize + 1 AND @pageTo * @pageSize
  372. ----------------------
  373. --set @filter = 'Country = ' + isnull(@country,'All')
  374. -- +' | Agent = '+@d1
  375. -- +' | Branch = ' + @d2
  376. -- +' | Date =' +@d3
  377. SET @agentName= (SELECT agentName FROM agentmaster WHERE agentId=@d1)
  378. SET @branchName= (SELECT agentName FROM agentmaster WHERE agentId=@d2)
  379. UPDATE #params SET
  380. ReportTitle='Txn Document Upload Report Drilldown ' + ISNULL('-' + @agentName, '') + ISNULL('-' + @branchName, '')
  381. ,Filters= @filter
  382. ,NoHeader = CASE WHEN @pageFrom > 1 THEN 1 ELSE 0 END
  383. ,FieldAlignment = '||||||'
  384. ,FieldFormat ='||||||'
  385. ,IncludeSerialNo=1
  386. ,PageNumber=@pageFrom
  387. ,PageSize=@pageSize
  388. --,TotalTextCol = 0
  389. --,TotalText ='<b>Total</b>'
  390. --,TotalFields ='5|6|7'
  391. --,SubTotalBy = 0
  392. --,SubTotalTextCol =0
  393. --,SubTotalText ='<b>Country Total</b>'
  394. --,SubTotalFields ='5|6|7'
  395. --,HasGrandTotal =1
  396. --,GTotalText='[Grand Total]'
  397. --,GTData = @grandTotal
  398. ,LoadMode = 1
  399. --,MergeColumnHead=1
  400. SELECT * FROM #params
  401. RETURN
  402. END
  403. ELSE IF @functionID = '20168400-d5'
  404. BEGIN
  405. SELECT
  406. @q1 = p.value('@q1','VARCHAR(20)')
  407. FROM @qxml.nodes('/root/row') AS tmp(p)
  408. SELECT
  409. @d1 = p.value('@d1','VARCHAR(20)')
  410. ,@d2 =p.value('@d2','VARCHAR(20)')
  411. --,@d3 =p.value('@d3','VARCHAR(20)')
  412. FROM @dxml.nodes('/root/row') AS tmp(p)
  413. SELECT
  414. [Tran No]=x.tranId
  415. ,[Sender Name]=x.senderName
  416. ,[Sender ID]=x.Id
  417. ,[Receiver Name]=x.receiverName
  418. ,[Form]= '<a href="'+@hdnrootUrl+'/img.ashx?type=txn&id='+x.form+'&df='+x.txnDocFolder+'" target="_blank">' + x.form + '</a>'
  419. ,[Receipt]='<a href="'+@hdnrootUrl+'/img.ashx?type=txn&id='+x.receipt+'&df='+x.txnDocFolder+'" target="_blank">' + x.receipt + '</a>'
  420. FROM (
  421. SELECT
  422. ROW_NUMBER() OVER (ORDER BY tr.id ASC) row_Id,
  423. tr.id tranId,tr.senderName,ts.customerId as Id,tr.receiverName,form,receipt,du.txnDocFolder
  424. FROM vwRemitTran tr
  425. INNER JOIN vwTranSenders ts on tr.id=ts.tranId
  426. --LEFT JOIN (
  427. --select tranId
  428. -- from txnDocUpload where fileType='receipt'
  429. --)du on du.tranId=tr.id
  430. LEFT JOIN (
  431. SELECT
  432. MAX(form) form,MAX(receipt) receipt,tranId,MAX(txnDocFolder) txnDocFolder
  433. FROM (
  434. SELECT
  435. CASE WHEN du.fileType='form' THEN [fileName] ELSE '' END AS form
  436. ,CASE WHEN du.fileType='receipt' THEN [fileName] ELSE '' END AS receipt
  437. ,tranId
  438. ,ISNULL(txnDocFolder,'') AS txnDocFolder
  439. FROM txnDocUpload du WHERE fileType='receipt'
  440. )a GROUP BY tranId
  441. )du ON du.tranId=tr.id
  442. WHERE tr.createdDate BETWEEN @fromDate AND @toDate+' 23:59:59'
  443. AND tr.sCountry=ISNULL(@country,tr.sCountry)
  444. AND tr.sAgent=@d1
  445. AND tr.sBranch=@d2
  446. AND du.tranId IS NULL
  447. )x
  448. WHERE x.row_Id BETWEEN (@pageFrom -1) * @pageSize + 1 AND @pageTo * @pageSize
  449. ----------------------
  450. --set @filter = 'Country = ' + isnull(@country,'All')
  451. -- +' | Agent = '+@d1
  452. -- +' | Branch = ' + @d2
  453. -- +' | Date =' +@d3
  454. SET @agentName= (SELECT agentName FROM agentmaster WHERE agentId=@d1)
  455. SET @branchName= (SELECT agentName FROM agentmaster WHERE agentId=@d2)
  456. UPDATE #params SET
  457. ReportTitle='Txn Document Upload Report Drilldown ' + ISNULL('-' + @agentName, '') + ISNULL('-' + @branchName, '')
  458. ,Filters= @filter
  459. ,NoHeader = CASE WHEN @pageFrom > 1 THEN 1 ELSE 0 END
  460. ,FieldAlignment = '||||||'
  461. ,FieldFormat ='||||||'
  462. ,IncludeSerialNo=1
  463. ,PageNumber=@pageFrom
  464. ,PageSize=@pageSize
  465. --,TotalTextCol = 0
  466. --,TotalText ='<b>Total</b>'
  467. --,TotalFields ='5|6|7'
  468. --,SubTotalBy = 0
  469. --,SubTotalTextCol =0
  470. --,SubTotalText ='<b>Country Total</b>'
  471. --,SubTotalFields ='5|6|7'
  472. --,HasGrandTotal =1
  473. --,GTotalText='[Grand Total]'
  474. --,GTData = @grandTotal
  475. ,LoadMode = 1
  476. --,MergeColumnHead=1
  477. SELECT * FROM #params
  478. RETURN
  479. END
  480. GO