- Criar uma pagina Dia_util.aspx
- Inserir um textbox
- Inserir um button
Na página dia_util.aspx.vb criar as funções abaixo:
Private Shared Function RetornaQuintoDiaUtil(ByVal Data As DateTime, ByVal vdtvcto As Integer) As String
Dim primeiroDiaUtil As Int32 = RetornaPrimeiroDiaUtil(Data, vdtvcto)
Dim auxDiasUteisLocalizados As Int32 = 1
Dim auxContadorDiaVerificados As Int32 = 1
Dim mes As Int32 = vdtvcto
Dim quintoDiaUtil As DateTime = DateTime.Now
Dim dataPrimeiroDiaUtil As New DateTime(Data.Year, vdtvcto, primeiroDiaUtil)
While auxDiasUteisLocalizados < 5
quintoDiaUtil = dataPrimeiroDiaUtil.AddDays(auxContadorDiaVerificados)
If VerificaDiaUtil(quintoDiaUtil) Then
auxDiasUteisLocalizados += 1
End If
auxContadorDiaVerificados += 1
End While
Return quintoDiaUtil.ToString("dd/MM/yyyy")
End Function
Private Shared Function RetornaPrimeiroDiaUtil(ByVal Data As DateTime, ByVal vdtvcto As Integer) As Integer
Dim primeiroDiaMes As New DateTime(Data.Year, vdtvcto, 1)
While Not VerificaDiaUtil(primeiroDiaMes)
primeiroDiaMes = primeiroDiaMes.AddDays(1.0F)
End While
Return primeiroDiaMes.Day
End Function
Private Shared Function VerificaDiaUtil(ByVal DiaMes As DateTime) As Boolean
If DiaMes.DayOfWeek = DayOfWeek.Saturday Or DiaMes.DayOfWeek = DayOfWeek.Sunday Then
''''''''''''''Se for utilizar a tabela substituir a linha acima pela linha abaixo e tirar o comentario da funcao abaixo'''''''''''''''''
' If DiaMes.DayOfWeek = DayOfWeek.Saturday Or DiaMes.DayOfWeek = DayOfWeek.Sunday Or VerificaFeriado(DiaMes) Then
Return False
End If
Return True
End Function 'VerificaDiaUtil
No on_click do botão criado:
Protected Sub btn_OK_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btn_OK.Click
'''''Só passar o mes nessa variavel, lembrando que deve ser numerico
Dim vdtvcto As Integer = txt_mes.Text
Dim dt As String
dt = RetornaQuintoDiaUtil(New Date(2010, vdtvcto, 1), (vdtvcto))
lbl_msg_superior.Text = dt
End Sub
End Class
Qualquer dúvida entrar em contato!
Espero que gostem do meu primeiro post!