Ya mira.
el datediff como te digo devuelve negativo
Código vb:
Ver original<html>
<head>
<script runat="server">
Sub Page_Load()
Dim fchVence As DateTime = "15/01/2011"
Dim fch2 As DateTime = "10/01/2011"
lblFecha.Text = DateDiff(DateInterval.Month, fchVence, fch2)
End Sub
</script>
</head>
<body>
<form runat="server">
<asp:Label runat="server" ID="lblFecha"></asp:Label>
</form>
</body>
</html>
esto devuelve 0
si cambias las fechas
Dim fchVence As DateTime = "15/01/2011"
Dim fch2 As DateTime = "31/05/2011"
lblFecha.Text = DateDiff(DateInterval.Month, fchVence, fch2)
devuelve 4
si kieres saber la cantidad de meses y dias exactos juega con el date difff y date add
x ejemplo
Código vb:
Ver originalSub Page_Load()
Dim fchVence As DateTime = "15/01/2011"
Dim fch2 As DateTime = "31/05/2011"
Dim intMeses As Integer = DateDiff(DateInterval.Month, fchVence, fch2)
lblFecha.Text = intMeses
Dim fch3 As DateTime = DateAdd(DateInterval.Month, intMeses, fchVence)
lblFecha.Text = fch3
Dim intDias As Integer = DateDiff(DateInterval.Day, fch3, fch2)
lblFecha.Text = "vencio el: " & fchVence & ", hoy es: " & fch2 & ", la fecha esta pasada en " & intMeses & " meses y " & intDias & " dias"
End Sub
devolvera
vencio el: 15-01-2011, hoy es: 31-05-2011, la fecha esta pasada en 4 meses y 16 dias
que es una fecha mas exacta.
ahora q tienes los valores en enteros, puedes evaluarlos y saber de cuanto es la multa.
usa funciones para saber mas exactamente esto.