Totvs Protheus Função DiaSemana AdvPL [Tlpp]

Totvs Protheus Função DiaSemana AdvPL [Tlpp]

Hoje vamos aprender a usar a Função DiaSemana do AdvPL [Tlpp], [tl++] Retorna a Descrição do Dia da Semana conforme parâmetros – Curso Protheus grátis AdvPL / TLPP.

#Include "Protheus.ch"
/*-------------------------------------------------------------------------------------------*
{Protheus.doc} User Function mDiaSemana()
@type:      User Function
@author:    Jose Moura
@site:      https://academiaprotheus.com.br
@canal:     [Inscreva-se no canal https://www.youtube.com/@academiaprotheus]
@desc.:     Função DiaSemana. Retorna a Descrição do Dia da Semana conforme parâmetros
@Sintaxe:   DiaSemana(dData, nTam, nDia)
*-------------------------------------------------------------------------------------------*/

User Function mDiaSemana()
Local aArea    := FWGetArea()
Local dData    := Date()
Local nTam     := 7 //Tamanho padrão, se não informado recebe 7 mesmo.
Local nDia     := 6 //Sexta-feira
Local dDiaSem  := DiaSemana(dData, nTam, nDia)

FWAlertSuccess( 'A Data é: ' + cValToChar(dData);
+ CRLF + 'Dia da Semana: ' + cValtoChar( dDiaSem )  ;
+ CRLF + 'Dia da Semana: ' + cValtoChar( DiaSemana( dData,, 5 ) ) ;     //Linha 3
+ CRLF + 'Dia da Semana: ' + cValtoChar( DiaSemana( dData, 15, 5 ) ) ;  //Linha 4
+ CRLF + 'Dia da Semana: ' + cValtoChar( DiaSemana( dData, 3, 5 ) ) ;   //Linha 5
+ CRLF + 'Dia da Semana: ' + cValtoChar( DiaSemana( ,, 5 ) ) , 'Academia Protheus' )

FWRestArea(aArea)
Return

Informações importantes:

nTam => Esse parâmetro utiliza “Tipo” Padrão Completa ou Trunca String, ou seja, se for passado um valor menor que 5, o retorno será cortado. Ex: Sábado == nTam(3) == Sab
Se for informado o primeiro parâmetro (dData), o terceiro (nDia) será ignorado.
Terceiro parâmetro é apenas respeitado quando o primeiro (dData) não informado;
Por isso as Linhas 2, 3, 4 e 5 ignorou o parâmetro do nDia (6-Sexta-feira)

One thought on “Totvs Protheus Função DiaSemana AdvPL [Tlpp]

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *