Advertisement
Guest User

Untitled

a guest
Jun 17th, 2019
60
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.83 KB | None | 0 0
  1. if object_id('dbo.batidas', 'TF') is null
  2. begin
  3. exec('create function dbo.batidas() returns @retorno table(T int) as begin return end');
  4. end;
  5. go
  6.  
  7. alter function dbo.batidas(@data_inicio date,
  8. @data_final date)
  9. returns @retorno table(chapa varchar(100),
  10. nome varchar(100),
  11. filial varchar(100),
  12. secao varchar(100),
  13. situacao varchar(100),
  14. [data 1] date,
  15. [data 2] date,
  16. [data 3] date,
  17. ocorrencia varchar(100))
  18. as
  19. begin
  20. declare @batidas table(filial varchar(100),
  21. coligada varchar(100),
  22. chapa varchar(100),
  23. secao varchar(100),
  24. situacao varchar(100),
  25. nome varchar(100),
  26. data datetime,
  27. dia varchar(100),
  28. batida int);
  29.  
  30. insert into @batidas
  31. (filial,
  32. coligada,
  33. chapa,
  34. secao,
  35. situacao,
  36. nome,
  37. data,
  38. dia,
  39. batida)
  40. select f.filial,
  41. f.coligada,
  42. f.chapa,
  43. f.secao,
  44. f.situacao,
  45. f.nome,
  46. v.data,
  47. datename(dw,v.data),
  48. max(v.sequencialbatida)
  49. from arelbatidatransitoview as v
  50. left join vwfunc as f on v.chapa = f.chapa
  51. where datepart(dw,v.data) = 1 -- domingo
  52. and batida is not null
  53. and v.data between @data_inicio and @data_final
  54. and v.codcoligada = 1
  55. group by v.chapa,
  56. v.data,
  57. f.filial,
  58. f.coligada,
  59. f.chapa,
  60. f.secao,
  61. f.funcao,
  62. f.nome,
  63. f.situacao;
  64.  
  65. insert into @retorno
  66. (chapa,
  67. nome,
  68. filial,
  69. secao,
  70. situacao,
  71. [data 1],
  72. [data 2],
  73. [data 3],
  74. ocorrencia)
  75. select t1.chapa,
  76. t1.nome,
  77. t1.filial,
  78. t1.secao,
  79. t1.situacao,
  80. cast(t1.data as date),
  81. cast(t2.data as date),
  82. cast(t3.data as date),
  83. '04 - TESTE DOMINGO'
  84. from @batidas as t1
  85. inner join @batidas as t2 on t2.chapa = t1.chapa
  86. inner join @batidas as t3 on t3.chapa = t1.chapa
  87. where t2.data = dateadd(day, + 7, t1.data)
  88. and t3.data = dateadd(day, + 14, t1.data);
  89.  
  90. return;
  91. end;
  92. go
  93.  
  94. SELECT
  95. bat.CHAPA,
  96. LEFT(bat.NOME,25) AS NOME,
  97. bat.FILIAL,
  98. bat.SECAO,
  99. bat.NSECAO,
  100. bat.SITUACAO,
  101. bat.[DATA 1],
  102. bat.[DATA 2],
  103. bat.[DATA 3],
  104. bat.OCORRENCIA
  105. FROM dbo.batidas(@DTINICIO, @DTFINAL) bat
  106. WHERE bat.FILIAL = @LOJA
  107. ORDER BY bat.FILIAL,bat.NSECAO,bat.NOME;
  108.  
  109. Msg 137, Nível 15, Estado 2, Procedimento VIEW_MAIS_DOIS_DOMINGOS_SEM_FOLGA, Linha 13 [Linha de Início do Lote 11]
  110. Must declare the scalar variable "@DTINICIO".
  111.  
  112. Msg 216, Nível 16, Estado 1, Procedimento VIEW_MAIS_DOIS_DOMINGOS_SEM_FOLGA, Linha 13 [Linha de Início do Lote 11]
  113. Parameters were not supplied for the function 'dbo.batidas'.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement