Advertisement
Guest User

Untitled

a guest
May 6th, 2015
204
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.15 KB | None | 0 0
  1. LAST_EVENT_PROC_DT (numeric(8,0),not null)
  2.  
  3. '' + '|' +
  4. '' + '|' +
  5. cast(q.NEXT_EVENT_PROC_DT as varchar) + '|' + -- Due Date
  6. cast(q.LAST_EVENT_PROC_DT +12 as varchar) + '|' + -- Disco Date = Due date +15
  7. CONVERT(VARCHAR(10),GETDATE() +15,112) + '|' + -- Agency Send Date todays date + 15
  8.  
  9. SET NOCOUNT ON
  10.  
  11. CREATE TABLE #Dates (
  12. d DATE,
  13. isWeekend BIT,
  14. PRIMARY KEY (d)
  15. )
  16. DECLARE @dIncr DATE = '2000-01-01'
  17. DECLARE @dEnd DATE = '2100-01-01'
  18.  
  19.  
  20. WHILE ( @dIncr < @dEnd )
  21. BEGIN
  22.  
  23. INSERT INTO #Dates (d, isWeekend) VALUES( @dIncr, IIF(DATEPART(WEEKDAY, @dIncr) IN (7, 1), 1, 0 ))
  24. SELECT @dIncr = DATEADD(DAY, 1, @dIncr )
  25. END
  26.  
  27. SELECT
  28. '' + '|' +
  29. '' + '|' +
  30. cast(q.NEXT_EVENT_PROC_DT as varchar) + '|' + -- Due Date
  31. cast(dates.d as varchar) + '|' + -- Disco Date = Due date +15
  32. CONVERT(VARCHAR(10),GETDATE() +15,112) + '|' + -- Agency Send Date todays date + 15
  33. ...
  34. FROM <TABLE>
  35. CROSS APPLY
  36. (
  37. SELECT TOP 1 d
  38. FROM #Dates AS dates
  39. LEFT OUTER JOIN <holidays> ON holidays.date = dates.d
  40. WHERE d >= DATEADD(DAY, 12, CAST(CONVERT(CHAR(8), q.LAST_EVENT_PROC_DT) AS DATE))
  41. AND d.IsWeekend = 0
  42. AND holidays.date IS NULL
  43. ORDER BY d ASC
  44. ) AS dates
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement