Pular para o conteúdo
Português - Brasil
  • Não há sugestões porque o campo de pesquisa está em branco.

Erro ao gerar abono e recibo de férias

 

Problema: Ao tentar encontrar o arquivo, traz os erros abaixo:

 

Resolução: Ajuste de query de Aviso e Recibo de férias, como estava gerava um erro logico ao tentar gerar data de inicio e fim de férias quando não há dias de férias, pois foram abonados.

As Querys de aviso e recibo eram as mesmas.

Query Anterior:

SELECT

   inifer AS datafa,

   CASE

       WHEN

           (

              (inifer <= DATEFROMPARTS(2025,12,24)

               AND inifer + diafer >= DATEFROMPARTS(2025,12,24))

              AND

              (inifer <= DATEFROMPARTS(2025,12,31)

               AND inifer + diafer >= DATEFROMPARTS(2025,12,31))

           )

       THEN inifer + diafer + 1  

       ELSE inifer + diafer - 1 -- Esta operação diminui um dia da data de termino

   END AS datter

FROM VW_Joinin_Ferias

WHERE numemp = @num_emp

 AND numcad = @num_cad

 AND tipcol = 1

 AND inifer >= DATEADD(MONTH, -12, GETDATE())

 AND datpag > '2024-05-01'

 AND GETDATE() >= DATEADD(DAY, -3, datpag)

ORDER BY datafa DESC

 

Query atualizada:

SELECT

   inifer AS datafa,

   CASE

       WHEN

           (

              (inifer <= DATEFROMPARTS(2025,12,24)

               AND inifer + diafer >= DATEFROMPARTS(2025,12,24))

              AND

              (inifer <= DATEFROMPARTS(2025,12,31)

               AND inifer + diafer >= DATEFROMPARTS(2025,12,31))

           )

       THEN inifer + diafer + 1  

       ELSE

           CASE -- Em caso de haver dias de férias, será aplicado menos um dia

               WHEN diafer >= 1.0

                   THEN inifer + diafer - 1

               ELSE inifer

           END

   END AS datter

FROM VW_Joinin_Ferias

WHERE numemp = @num_emp

 AND numcad = @num_cad

 AND tipcol = 1

 AND inifer >= DATEADD(MONTH, -12, GETDATE())

 AND datpag > '2024-05-01'

 AND GETDATE() >= DATEADD(DAY, -3, datpag)

ORDER BY datafa DESC;