Advertisement
Guest User

Untitled

a guest
Jul 1st, 2015
212
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.43 KB | None | 0 0
  1. alter procedure AutoCheckExpiry_ForPayment
  2. @expiryDate date=null output,
  3. @userId int =null output,
  4. @packPeriod varchar(20)=null output,
  5. @count int=null
  6. as
  7. begin
  8. DECLARE @cmd AS NVARCHAR(max)
  9. declare @payments table
  10. (
  11. userId varchar(1000),
  12. PackagePeriod varchar(1000)
  13. )
  14.  
  15. CREATE TABLE #result
  16. (
  17. PackagePeriod varchar(20),
  18. UserId INT,
  19. OldExpiryDate DATE,
  20. AmountToPay FLOAT,
  21. PyingAmount FLOAT,
  22. Balance FLOAT,
  23. LastPaidDate DATE,
  24. Company_Id INT
  25. )
  26.  
  27. create table #temp
  28. (
  29. PackagePeriod varchar(20),
  30. UserId INT,
  31. OldExpiryDate DATE,
  32. AmountToPay FLOAT,
  33. PyingAmount FLOAT,
  34. Balance FLOAT,
  35. LastPaidDate DATE,
  36. Company_Id INT
  37. )
  38.  
  39. SET @cmd ='select Packages.PackagePeriod,Receive_Payment.UserId,
  40. Replace(CONVERT(VARCHAR(20), Receive_Payment.OldExpiryDate, 106),' ','-') AS OldExpiryDate,
  41. Receive_Payment.AmountToPay,Receive_Payment.PyingAmount,Receive_Payment.Balance,
  42. Receive_Payment.LastPaidDate,Receive_Payment.Company_Id
  43. from Receive_Payment
  44. join Packages on Receive_Payment.PackageId=Packages.PackageId
  45. join C_Register on Receive_Payment.UserId = C_Register.UserId
  46. where C_Register.LastPaidDate=Receive_Payment.LastPaidDate
  47. order by Receive_Payment.PayId DESC'
  48. Insert into #result
  49. EXEC(@cmd)
  50.  
  51. insert into #temp(PackagePeriod)
  52. select PackagePeriod from #result where OldExpiryDate<=Replace(CONVERT(VARCHAR(20), (GetDate()-1), 106),' ','-')
  53.  
  54. select @count=(select COUNT(PackagePeriod) from #temp)
  55.  
  56. if(PackagePeriod='Monthly')
  57. begin
  58. update Receive_Payment
  59. set Receive_Payment.OldExpiryDate=(
  60. )
  61.  
  62. values (select PackagePeriod from #result
  63. where OldExpiryDate<=Replace(CONVERT(VARCHAR(20), (GetDate()-1), 106),' ','-'))
  64. end
  65. else if(PackagePeriod='Quarterly')
  66. begin
  67. update Receive_Payment
  68. set Receive_Payment.OldExpiryDate=(
  69. )
  70.  
  71. values (select PackagePeriod from #result
  72. where OldExpiryDate<=Replace(CONVERT(VARCHAR(20), (GetDate()-1), 106),' ','-'))
  73. end
  74. drop table #result
  75. drop table #temp
  76. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement