[firebase-br] Criar Stored Procedure Para Retorno de Dias Uteis.
Lucio - UniData®
luciocobo em terra.com.br
Qua Ago 30 16:12:20 -03 2006
Caro Rubens Demorei um pouquinho mais fiz
Tem uma tabela que vc cadastra os feriados
e a procedure verifica se é feriado
os finais de semanas não presiza cadastrar na tabela de feriado
a procedure exclui o sabado e domingo sozinha
Obs Cadastra pelomenus um feriado na tabela
para dar certo
Codigo da TABELA e da PROCEDURE (DIAS_UTES) segue a baixo
Abraço
Tabela
CREATE TABLE FERIADOS (
ID INTEGER NOT NULL,
DT_FERIADO TIMESTAMP NOT NULL,
NM_FERIADO VARCHAR(25) NOT NULL
);
PROCEDURE
CREATE PROCEDURE DIAS_UTEIS (
P_DATA_INI DATE,
P_DATA_FIM DATE)
RETURNS (
R_DIA INTEGER,
R_DATA DATE)
AS
DECLARE VARIABLE W_DIA INTEGER;
DECLARE VARIABLE W_FERIADO DATE;
begin
/* Procedure Retona os Dias Uteis
do periodo informado
OBS Paramentro de Imput Data Inicial , Data Final*/
while (P_DATA_FIM > P_DATA_INI) do begin
/* Verifico se tem Feriado Cadastrado
-- OBS: Obrigatorio Ter pelomenus um Feriado cadastrado
se não tiver pode da errado -- Cadastra o Natal e ano Novo*/
FOR select DT_FERIADO FROM FERIADOS
WHERE DT_FERIADO = :p_data_ini
INTO :w_feriado DO
begin
P_DATA_INI = :P_DATA_INI + 1;
end
/* Verifico se é Sabado ou Domingo ou Feriado Cadastrado
0 = Domingo 6 = Sabado */
W_DIA = extract(weekday FROM :P_DATA_INI);
if (:w_feriado IS NOT NULL and :W_DIA <> 0 and :W_DIA <> 6) then begin
R_DATA = :P_DATA_INI;
R_DIA = W_DIA;
suspend;
end
P_DATA_INI = :P_DATA_INI + 1;
end
end
----- Original Message -----
From: "Rubens J Rodrigues" <rubens.rodrigues em abrevo.com.br>
To: <lista em firebase.com.br>
Sent: Wednesday, August 30, 2006 10:48 AM
Subject: Re: [firebase-br] Criar Stored Procedure Para Retorno de Dias Uteis.
Lucio,
Na verdade eu só preciso que a Stored Procedure me retorne todos os dias
úteis do mês atual. . . .
Não preciso nem passar parâmetros. . . .
Rubens
Lucio - UniData® escreveu:
> Rubens, vou montar para vc
> o que vc quer passar para a Procedure ??
>
> e o que vc quer que ela retorne ?
>
> Abraço
> Lucio Cobo
> Programador Delphi com Oracle.
>
>
> ----- Original Message -----
> From: "Rubens J Rodrigues" <rubens.rodrigues em abrevo.com.br>
> To: <lista em firebase.com.br>
> Sent: Wednesday, August 30, 2006 8:15 AM
> Subject: [firebase-br] Criar Stored Procedure Para Retorno de Dias Uteis.
>
>
> Colegas,
>
> Infelizmente esgotou-se minhas possibilidades e habilidades para criar
> uma stored procedures para me retornar os dias uteis do mês corrente.
> Por favor, me ajudem nesta cruzada . . .
>
> Cenário :
>
> a) Tabela de Feriados : CODFERIADO, DATAFERIADO, ATIVO.
>
> b) Criar uma stored procedures onde, eu pegaria os dias do mês corrente,
> eliminaria os sabados e domigos, com o restante eu eliminaria os dias
> que estariam na tabela de feriados.
>
>
> Conto com a ajuda de vocês,
>
>
> Obrigado,
>
> Rubens
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para editar sua configuração na lista, use o endereço
> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para editar sua configuração na lista, use o endereço http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para editar sua configuração na lista, use o endereço http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
Para consultar mensagens antigas: http://firebase.com.br/pesquisa
Mais detalhes sobre a lista de discussão lista