Buscar todos os registros do ultimo dia útil ou ultimo dia lançado numa tabela

25/01/2017

0

Tenho o código abaixo, o qual preciso inserir uma variante que de suma importância para a query.

O código abaixo trás registros do ultimo DTCONTABIL lançado no banco,

Porem para alguns casos, tenho que o ultimo registro é DTGESTORCATEGORIA

Ou seja para centros que o ultima aprovação é o Contabil, e tenho centros que o contabil aprova e depois vai para o gestor de categorias aprovar..

Para os centros que o ultimo que aprova é o contábil, a data do gestor categoria fica como '1905-02-01'

Se contábil for a ultima aprovação, trazer a data de contábil, senão trazer a data de aprovação de gestor de categorias que sempre serão igual ou maior que contábil e maior que '1905-02-01'

O que precisava era de um Case ou outro variante que seguisse mais ou menos a regra abaixo ou outro que me atenda.

CASE S.DTGESTORCATEGORIA

WHEN '1905-02-01'

THEN S.DTCONTABIL

ELSE DTGESTORCATEGORIA

END AS DATA_FINALIZADO

Porem não consigo adaptar esta no código na query abaixo.

set @Data_consulta=
(SELECT top (1) Cast(DTCONTABIL as date)
from SOLICITACAO
where DTCONTABIL < @Hoje
-- and STATUS = 10 ??
order by DTCONTABIL desc);

--
SELECT S.SOL_COD, S.DTCONTABIL,
case when S.CODMAT = 0 then 'CRIAÇÃO' else 'AMPLIAÇÃO' end as [TIPO_SOLICITAÇÃO],
S.CODMATGERADO, SC.CENTRO
from SOLICITACAO as S
inner join SOL_CENTROS as SC on S.SOL_COD = SC.SOL_COD
where Cast(S.DTCONTABIL as date) = @Data_consulta
and S.STATUS = 10;

No aguardo e duvidas estou a disposição..
Osman Almeida

Osman Almeida

Responder

Posts

25/01/2017

Paulo Hendrix

me diga algo, que programação vc esta usando para Shear estes dados em SQL. e ela e Object ou apenas Sequencial...
Responder

25/01/2017

Osman Almeida

Apenas Query SQl, uso query em consultas excel.. acredito que seja sequencial.
Responder

25/01/2017

Paulo Hendrix

olha, pelo que entendi. você quer resgatar as contabil aprovadas por "gestor de categorias";
para retornar de novo a centros; eles precisam saber se Contabil aprovou etc.. então volta para tela com aprovado. para dar continuidade no processo, certo ?
Responder

25/01/2017

Osman Almeida

Tenho processo que são aprovados por contabil e aprovados por gestor categorias, e tenho processo que são somente por contabil sem a necessidade de aprovação de gestor categorias..

Os que são aprovados somente por contabil, a data padrão DTGESTORCATEGORIA = '1905-02-01' .

Nestes casos precisaria filtrar por DTGESTORCATEGORIA quando a DTGESTORCATEGORIA >'1905-02-01'
Caso DTGESTORCATEGORIA = '1905-02-01' filtrar por Dtcontabil.

Mas sempre buscando nesta query a ultima data de (dia de registro entre estas duas condições.. DTGESTORCATEGORIA ou Dtcontabil.

Estou a disposição para sanar qquers dúvidas..
Responder

Que tal ter acesso a um e-book gratuito que vai te ajudar muito nesse momento decisivo?

Ver ebook

Recomendado pra quem ainda não iniciou o estudos.

Eu quero
Ver ebook

Recomendado para quem está passando por dificuldades nessa etapa inicial

Eu quero

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar