none
Sobre Datas RRS feed

  • Pergunta

  • Estou precisando de ajuda na seguinte situação não consigo criar uma algoritmo para quando um dia vencer ele seja debitado como um dia de multa e queria também escolher os dias da semana para que seja só de segunda a sábado e o domingo ficasse de fora eu uso o vb.net.
    sábado, 2 de janeiro de 2021 15:34

Todas as Respostas

  • Tente assim:

    Dim dia_vencimento As Date = CDate("27/12/2020")
            Dim dia_pagamento As Date = CDate("31/12/2020")
            Dim valor_pagar As Double = 1653.28
            Dim multa_ao_dia As Single = 0.005 'meio porcento ao dia 
            Dim atraso As Integer = CInt(DateDiff(DateInterval.Day, dia_vencimento, dia_pagamento))

            If dia_vencimento.ToString("dddd") = "domingo" Then ' ou dia_vencimento.DayOfWeek = 0 --> 1=segunda-feira, etc
                atraso -= 1
            End If

            If atraso > 0 Then 'neste exemplo o vencimento é domingo em vez de 4 dias de atraso são consiferados 3 dias
                MsgBox("Pagamento em atraso de " & atraso.ToString & " dias." & vbCrLf &
                       "Valor inicial = " & valor_pagar.ToString("C") & vbCrLf &
                       "Multa calculada = " & CDec(valor_pagar * multa_ao_dia * atraso).ToString("C") & vbCrLf &
                       "Valor a pagar = " & CDec(valor_pagar * (1 + multa_ao_dia * atraso)).ToString("C"))
            End If


    MARIANO1776

    sábado, 2 de janeiro de 2021 18:00
  • Denis,

    Você também pode dar uma olhada nesse método

    https://docs.microsoft.com/en-us/dotnet/api/microsoft.visualbasic.duedate?view=net-5.0
    segunda-feira, 4 de janeiro de 2021 12:30
    Moderador