Fala galera, mais uma vez trazendo uma dúvida!
Tenho uma tabela que é cadastrado os "afastamentos" do funcionário pelo RH.
Preciso saber, via select, se um determinado período que eu digitar, estará no período de férias ou outro afastamento que esteja cadastrada nessa tabela.
Por exemplo:
Mangaba precisa viajar a trabalho de 01/03/2012
Quando eu for colocar isso na tela, a tela me retorne uma msg do estilo: "Nesse período o funcionario x estará de férias"
Espero ter conseguido me expressar!
Abs
Comparar período com período e retornar um resultado
-
- Moderador
- Mensagens: 2016
- Registrado em: Qua, 12 Jan 2005 3:25 pm
- Localização: Araraquara - SP
Abraço,
Trevisolli
OCA Oracle PL/SQL Developer Certified Associate
OCP Oracle Forms Developer Certified Professional
Araraquara-SP
Trevisolli
OCA Oracle PL/SQL Developer Certified Associate
OCP Oracle Forms Developer Certified Professional
Araraquara-SP
Brother, beleza?
Manda mais informações pra gente, tipo, ambas as informações ficam na mesma tabela?
Caso negativo, você consegue resolver teu problema com "EXISTS" nesta outra tabela, onde guarda as férias, afastamento etc.
Manda mais informações pra gente, tipo, ambas as informações ficam na mesma tabela?
Caso negativo, você consegue resolver teu problema com "EXISTS" nesta outra tabela, onde guarda as férias, afastamento etc.
-
- Moderador
- Mensagens: 641
- Registrado em: Seg, 03 Set 2007 3:26 pm
- Localização: Fortaleza - CE
att,
Daniel N.N.
Daniel N.N.
Bem...
Se entendi bem existe uma tabela de afastamentos e você quer saber se tal data corresponde a um periodo de afastamento.
Pelo que entendi é simples.
Supondo existir as datas de afastamento ou períodos de afastamento na tabela.
Se entendi bem existe uma tabela de afastamentos e você quer saber se tal data corresponde a um periodo de afastamento.
Pelo que entendi é simples.
Select *
from afastamentos a
where param_data BETWEEN a.data_inicial AND a.data_final
-
- Rank: Programador Júnior
- Mensagens: 20
- Registrado em: Qua, 15 Out 2008 10:59 am
- Localização: Rio de Janeiro - RJ
Sim, os dados do afastamento estão todos numa única tabela (sgrh.afastamentos).
A tabela conta com os campos de Data de Entrada (início das férias), Data de Saída (fim das férias) e coloquei um campo chamado Ativo, pois podem mudar as datas, mas devido a pedido da chefia, não podemos apagar o histórico de cadastro das férias.
Daí a ideia era fazer com que, quando selecionar um intervalo, esse intervalo seja procurado na sgrh.afastamento e se tiver algum "evento" no período que ele colocou, dar a mensagem de "impossibilitado".
A tabela conta com os campos de Data de Entrada (início das férias), Data de Saída (fim das férias) e coloquei um campo chamado Ativo, pois podem mudar as datas, mas devido a pedido da chefia, não podemos apagar o histórico de cadastro das férias.
Daí a ideia era fazer com que, quando selecionar um intervalo, esse intervalo seja procurado na sgrh.afastamento e se tiver algum "evento" no período que ele colocou, dar a mensagem de "impossibilitado".
-
- Moderador
- Mensagens: 641
- Registrado em: Seg, 03 Set 2007 3:26 pm
- Localização: Fortaleza - CE
att,
Daniel N.N.
Daniel N.N.
Opa,
Aqui tem um select que retorna os dias aastados dentro do periodo informado(por parametro).
Acho que deve ajudar:
Aqui tem um select que retorna os dias aastados dentro do periodo informado(por parametro).
Acho que deve ajudar:
SELECT DISTINCT x.dia dias_afastados
FROM (SELECT data_inicial + LEVEL - 1 dia
FROM (SELECT to_date(&p_ini, 'dd/mm/rrrr') data_inicial FROM dual)
CONNECT BY LEVEL <= to_date(&p_fim, 'dd/mm/rrrr') - to_date(&p_ini, 'dd/mm/rrrr') + 1) x
, afastamento a
where x.dia BETWEEN a.data_inicial AND a.data_final
ORDER BY x.dia;
-
- Informação
-
Quem está online
Usuários navegando neste fórum: Nenhum usuário registrado e 13 visitantes