ActiveDelphi - Índice do Fórum ActiveDelphi
.: O site do programador Delphi! :.
 
 FAQFAQ   PesquisarPesquisar   MembrosMembros   GruposGrupos   RegistrarRegistrar 
 PerfilPerfil   Entrar e ver Mensagens ParticularesEntrar e ver Mensagens Particulares   EntrarEntrar 

Atualizar registros após N dias úteis

 
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi
Exibir mensagem anterior :: Exibir próxima mensagem  
Autor Mensagem
hyper_r
Novato
Novato


Registrado: Domingo, 21 de Novembro de 2004
Mensagens: 59

MensagemEnviada: Sáb Ago 05, 2006 1:53 pm    Assunto: Atualizar registros após N dias úteis Responder com Citação

Bom, é o seguinte:

Tenho que atualizar um campo para S ou N, esse campo chama-se ENCERRADO, este flag serve para verificar se a última vez que o registro foi atualizado, faz mais de 5 dias úteis, sim ou não. O problema é:

Como vou fazer para validar este prazo de 5 dias úteis, incluindo os feriados? Os feriados farei referência atravéz de uma tabela.

Eu desenhei a lógica mais ou menos assim:

1º Crio a função que terá 2 parâmetros, a data atual e a data de retificação, e esta retorna um inteiro com o número de dias úteis entre as duas datas...

2º Dentro da função crio um loop que passará por toda tabela...

3º Dentro deste loop, crio outro loop e vou antecendendo a data atual, e verifico se o dia é sábado, domingo ou feriado. Caso seja um dia útil incremento o result, caso o contrário passo para o dia anterior.

4º Depois uso esta função para fazer uma condicional, tipo:
if VerificaDiasUteis (Date, DataRetificacao) >= 5 then // ... faço o update no campo ENCERRADO da tabela.

Bom, agora queria uma ajuda para escrever a codificação desta lógica. Pois tenho muitas duvidas, por exemplo como vou fazer um loop que anteceda uma data. Além de várias outras.

Desde já agradeço....

______________________
[url=http://www.activedelphi.com.br/modules.php?op=modload&name=XForum&file=viewthread&tid=102] Regra nº 3[/url]
Título Original: Ae pessoal, esta é dificil....

[Editado em 5/8/2006 por KMerlotti]
_________________
<legend> Cuide bem de seu filhos, pois eles que vão escolher seu AZILO!!!
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular MSN Messenger
KMerlotti
Moderador
Moderador


Registrado: Terça-Feira, 27 de Janeiro de 2004
Mensagens: 3032
Localização: Votuporanga / SP

MensagemEnviada: Sáb Ago 05, 2006 2:58 pm    Assunto: Atualizar registros após N dias úteis Responder com Citação

pra percorrer os últimos registros, bota uma qry e faz assim:[code]with qry do
begin
Close;
SQL.Clear;
SQL.Add(\'SELECT * FROM TABLA \');
SQL.Add(\'WHERE DATA > \'+
QuotedStr( FormatDateTime(\'MM/dd/yyyy\', Date-15) ) );
// -15 para pegar os registos dos últimos 15 dias
Open;
while not Eof do
begin
if VerificaDiasUteis (Date, FieldByName(\'NOME_CAMPO_DATA\').AsDateime) >= 5 then
DoUpdate();
Next;
end;
end;[/code]Agora, a função VerificaDiasUteis eu não sei como ajudar, pq não conheço a estrutura da tabela dos feriados!

E a procedure DoUpdate é por tua conta! Ela deve atualizar o registro que esta selecionado naquele momento, na qry.

acho que isso ae já ajuda!

Abraços!

[Editado em 5/8/2006 por KMerlotti]
_________________
Kelver Merlotti - Coordenador Editorial da Active Delphi
http://twitter.com/kmerlotti
Por favor, leia as regras do fórum.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Visitar a homepage do Usuário Yahoo Messenger MSN Messenger
Mostrar os tópicos anteriores:   
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi Todos os horários são GMT - 3 Horas
Página 1 de 1

 
Ir para:  
Enviar Mensagens Novas: Proibido.
Responder Tópicos Proibido
Editar Mensagens: Proibido.
Excluir Mensagens: Proibido.
Votar em Enquetes: Proibido.


Powered by phpBB © 2001, 2005 phpBB Group
Traduzido por: Suporte phpBB