quarta-feira, 9 de janeiro de 2008

Data Por Extenso (ASP com VBScript)

Dificuldades de colocar a data por extenso?

Ex:
Quarta-feira 12 de setembro de 2007

Não tem nada de difícil, é simples o código é esse:


Vamos separar os códigos para facilitar o entendimento!

1º Bloco de Instrução:


- WeekDayName pega o "Nome da Semana";
- WeekDay(Now) pega o valor numerico do "Nome da Semana" ficando assim : domingo(1), segunda-feira(2), etc...

Juntando os dois faz um parâmetro desse tipo

WeekDay(Now) vem o valor "4" que é quarta-feira
a resposta dentro do WeekDayName aparece assim:
WeekDayName(1) que é igual a quarta-feira (por extenso e letra minuscula)

- Left(WeekDayName(WeekDay(Now)),1), o "Left(INSTRUCAO,1)" ele vai pegar o primeiro caractere a instrução desejada que é a letra "q";
- UCase(Left(WeekDayName(WeekDay(Now)),1)) o "UCase()" vai transformar o caractere desejado em Maiúsculo, que no nosso caso é a letra "q", ficando assim:

UCase("q")
Resposta sai: "Q"

2º Bloco de Instrução:


- Len(WeekDayName(WeekDay(Now))) o "Len()" está fazendo a função de "contador de caracteres", ele irá contar a quantidade de caracteres que tem na palavra "quarta-feira" ficando assim:

Len("quarta-feira")
Total: 12 caracteres

- Right(WeekDayName(WeekDay(Now)),Len(WeekDayName(WeekDay(Now))) - 1) o "Right" e o oposto do "Left", ele tira o último caractere da palavra que é a letra "a" mais no nosso caso com o "Len" isso não irá acontecer. Se colocarmos o "quarta-feira" dentrodo "Right" olha o que acontecer:

Right("quarta-feira", 1)
Resposta: quarta-feir

Mais com o "Len" que o total deu 12 menos 1 que é para ele não cortar o nome todo fica assim

Right("quarta-feira", 12 - 1)
Resposta: uarta-feira

E pronto! Mais um assunto resolvido e o resto do código é só formatação de data

Day(Date), pega o valor do dia
MonthName(Month(Now)), o nome do mês
Year(Date), pega o ano atual

Juntando tudo fica:


e fim de papo
Quarta-feira 12 de setembro de 2007

Fonte Inicial

Nenhum comentário: