Gostaria de saber por que o erro abaixo ocorrem em SQL Server:
The conversion of a varchar data type to a datetime data type resulted in an out-of-range value.
Código da Informação: [0dc060f56fed3fedf055af476510b102]
A consulta utilizada é a seguinte:
select a.chapa, a.nome, b.cpf, convert(varchar, a.dataadmissao, 103) DTADM, c.nome, d.descricao, 50 vr
from pfunc a, ppessoa b, pfuncao c, psecao d
where b.codigo = a.codpessoa
and c.codcoligada = a.codcoligada
and d.codcoligada = a.codcoligada
and c.codigo = a.codfuncao
and d.codigo = a.codsecao
and a.chapa not in
(
select chapa
from vadvertencia x
where x.codcoligada = 1
and x.datahora between
CONVERT(varchar, CAST(
'21' + '/' + cast((select case when mescomp = 1 then 12 else mescomp - 1 end from pparam where codcoligada = 1) as char) + '/' + cast((select case when mescomp = 1 then anocomp - 1 else anocomp end from pparam where codcoligada = 1) as char)
AS datetime), 103)
and
CONVERT(varchar, CAST(
'20' + '/' + cast((select mescomp from pparam where codcoligada = 1) as char) + '/' + cast((select anocomp from pparam where codcoligada = 1) as char)
AS datetime), 103)
)
order by a.nome