Como faço para obter o número da semana corrente?
Fala galera do Show Delphi, tudo beleza? Aqui quem fala é Giovani e vamos para uma nova super dica.
Para alguns cálculos vamos precisar saber em qual semana do ano estamos.
Isso é muito comum para sistemas de controle de produção sem impressão de etiquetas para a identificação do produto.
Legal, o ano tem 52 semanas, mas como saber de modo simples e rápido em que semana estamos?
Seus Problemas Acabaram!
Felizmente o Delphi conta com uma função muito simples que já faz todo o trabalho árduo para a gente.
A função é WeekOfTheYear, disponível na unit DateUtils, ou seja, para utiliza-la é necessário declarar DateUtils para versões do Delphi Antigas ou System.DateUtils.
Vamos aos Exemplos – Compatível com Delphi e Lazarus
Retornar a semana do ano da data atual
1
2
3
4
5
6
7
8
9
10
11
12
| procedure TForm1.Button1Click(Sender: TObject);
var
vSemana : Integer;
begin
vSemana := WeekOfTheYear(Date);
// Versões de Delphi mais recentes
ShowMessage('A semana no ano é: ' + vSemana.ToString);
// Versões de Delphi mais antigas
ShowMessage('A semana no ano é: ' + IntToStr(vSemana));
end; |
procedure TForm1.Button1Click(Sender: TObject);
var
vSemana : Integer;
begin
vSemana := WeekOfTheYear(Date);
// Versões de Delphi mais recentes
ShowMessage('A semana no ano é: ' + vSemana.ToString);
// Versões de Delphi mais antigas
ShowMessage('A semana no ano é: ' + IntToStr(vSemana));
end;
E tem como retornar a semana do ano de uma data específica?
Claro!, aqui vai o outro exemplo:
1
2
3
4
5
6
7
8
9
10
11
12
13
| procedure TForm1.Button2Click(Sender: TObject);
var
vSemana : Integer;
begin
vSemana := WeekOfTheYear(DateTimePicker1.DateTime);
// Versões de Delphi mais recentes
ShowMessage('A semana no ano é: ' + vSemana.ToString);
// Versões de Delphi mais antigas
ShowMessage('A semana no ano é: ' + IntToStr(vSemana));
end; |
procedure TForm1.Button2Click(Sender: TObject);
var
vSemana : Integer;
begin
vSemana := WeekOfTheYear(DateTimePicker1.DateTime);
// Versões de Delphi mais recentes
ShowMessage('A semana no ano é: ' + vSemana.ToString);
// Versões de Delphi mais antigas
ShowMessage('A semana no ano é: ' + IntToStr(vSemana));
end;
Isso vai nos ajudar bastante com este tipo de situação.
Para ver está dica em SQL, veja o seguinte link:
https://giovanidacruz.com.br/como-faco-para-obter-o-numero-da-semana-corrente-em-sql/
Então pessoal, espero que a dica pode ter ajudado e dúvidas ou sugestões em outras linguagens, deixe o seu comentário.
Uma abraço e até o próximo post. Valeu!
-
Giovani Da Cruz
-
265 views
- 2 comentários
- 1 de abril de 2023
Está gostando do conteúdo? Considere pagar um cafezinho para nossa equipe!
Posts Relacionados - Continue Aprendendo
Bom dia
Artigo show, muito bom top.
Que bom que está ajudando valdecy.