Foros del Web » Programación para mayores de 30 ;) » .NET »

AYUDA conteo de fechas

Estas en el tema de AYUDA conteo de fechas en el foro de .NET en Foros del Web. Hola amigos aka les presento un problema que me surgio en el sistema espero me puedan ayudar a como hacerle, en mi sistema hago una ...
  #1 (permalink)  
Antiguo 28/10/2009, 14:29
 
Fecha de Ingreso: enero-2008
Mensajes: 181
Antigüedad: 16 años, 3 meses
Puntos: 1
De acuerdo AYUDA conteo de fechas

Hola amigos aka les presento un problema que me surgio en el sistema espero me puedan ayudar a como hacerle, en mi sistema hago una instruccion para fechas de pago de un credito que estoy otorgando, por ejemplo. si doy un credito hoy 28 de oct con pagos quincenales entonces mis fechas de pagos seria los dias 11 y 26 de cada mes contando que un mes trae 30 dias, pero en el caso de ocubre trae 31
mi problema es que no quiero que tome encuenta los meses que tra 31 dias es decir que a todos los meses los tome como 30 dias que omita el dia 31 y en el caso de febrero que omita el dia 29 alguien podria ayudarme con mi problema, aka les muestro con que instruccion hago que me calcule cada 15 dias las fechas

Código:
 Dim diaFinal As DateTime = hoy.AddDays(7)
con ese codigo le sumo los dias, alguien puede ayudarme a omitir los 31 de los meses y en el caso de febrero el dia 29

espero que alguien pueda ayudarme y les agradezco de antemano su ayuda. graciassss. saludos
  #2 (permalink)  
Antiguo 28/10/2009, 15:44
Avatar de eperedo  
Fecha de Ingreso: septiembre-2009
Ubicación: Perú
Mensajes: 654
Antigüedad: 14 años, 7 meses
Puntos: 16
Respuesta: AYUDA conteo de fechas

No entendí bien el tema de los pagos, pero creo que la solución va por comprobar primero la cantidad de días que tiene el mes:

Código vb.net:
Ver original
  1. Dim res As New System.Text.StringBuilder()
  2.         '
  3.         Dim dias_mes As Int32 = Date.DaysInMonth(Date.Now.Year, Date.Now.Month)
  4.         Dim primera_cuota, segunda_cuota As Date
  5.         '
  6.         If dias_mes = 31 Then
  7.             Dim dias_agregar As Int32 = 31 - 15
  8.             primera_cuota = Date.Today.AddDays(dias_agregar)
  9.             segunda_cuota = primera_cuota.AddDays(15)
  10.             res.Append("Pagar los dias: ")
  11.             res.Append(primera_cuota.ToShortDateString())
  12.             res.Append(" y ")
  13.             res.Append(segunda_cuota.ToShortDateString())
  14.             MessageBox.Show(res.ToString())
  15.         End If

Espero te de una idea, cualquier cosa me avisas.
  #3 (permalink)  
Antiguo 29/10/2009, 11:49
 
Fecha de Ingreso: enero-2008
Mensajes: 181
Antigüedad: 16 años, 3 meses
Puntos: 1
De acuerdo Respuesta: AYUDA conteo de fechas

Cita:
Iniciado por eperedo Ver Mensaje
No entendí bien el tema de los pagos, pero creo que la solución va por comprobar primero la cantidad de días que tiene el mes:

Código vb.net:
Ver original
  1. Dim res As New System.Text.StringBuilder()
  2.         '
  3.         Dim dias_mes As Int32 = Date.DaysInMonth(Date.Now.Year, Date.Now.Month)
  4.         Dim primera_cuota, segunda_cuota As Date
  5.         '
  6.         If dias_mes = 31 Then
  7.             Dim dias_agregar As Int32 = 31 - 15
  8.             primera_cuota = Date.Today.AddDays(dias_agregar)
  9.             segunda_cuota = primera_cuota.AddDays(15)
  10.             res.Append("Pagar los dias: ")
  11.             res.Append(primera_cuota.ToShortDateString())
  12.             res.Append(" y ")
  13.             res.Append(segunda_cuota.ToShortDateString())
  14.             MessageBox.Show(res.ToString())
  15.         End If

Espero te de una idea, cualquier cosa me avisas.
Hola amigo muchas gracias el codigo funciona bien pero el problema es que aun cuenta los dias 31 de los meses que lo tienen y en el caso de feb el 29, a lo que me referia es omitir ese dia. por ejemplo


si doy un credito hoy 29 de oct. en 6 pagos quincenales entonces sin contar el 31 los pagos mensuales deben de ser los 14 y 29 de cada mes
en el caso de febrero en vez de que sea el 29 seria el 28 pero la sig fecha despues del 28 de feb seria el 14 de marzo es decir que sean fija las fechas con forme al plazo fijado... espero me haya dado a explica, sin mas por el momento me despido esperando puedan ayudarme muchas gracias :saludos:
  #4 (permalink)  
Antiguo 30/10/2009, 14:03
 
Fecha de Ingreso: enero-2008
Mensajes: 181
Antigüedad: 16 años, 3 meses
Puntos: 1
De acuerdo Respuesta: AYUDA conteo de fechas

Cita:
Iniciado por rishart Ver Mensaje
Hola amigo muchas gracias el codigo funciona bien pero el problema es que aun cuenta los dias 31 de los meses que lo tienen y en el caso de feb el 29, a lo que me referia es omitir ese dia. por ejemplo


si doy un credito hoy 29 de oct. en 6 pagos quincenales entonces sin contar el 31 los pagos mensuales deben de ser los 14 y 29 de cada mes
en el caso de febrero en vez de que sea el 29 seria el 28 pero la sig fecha despues del 28 de feb seria el 14 de marzo es decir que sean fija las fechas con forme al plazo fijado... espero me haya dado a explica, sin mas por el momento me despido esperando puedan ayudarme muchas gracias :saludos:
hola amigos buenas tardes, alguien puede ayudarme a como le puedo hacer cuando al conteo de los dias, en dicho conteo me omita los dias 31 de los meses que lo traen

les agradezco mucho su ayuda gracias
  #5 (permalink)  
Antiguo 03/11/2009, 12:56
Avatar de Valery-Net  
Fecha de Ingreso: agosto-2008
Mensajes: 694
Antigüedad: 15 años, 8 meses
Puntos: 12
Respuesta: AYUDA conteo de fechas

Puedes usar la siguiente función:

Cita:
Private Function GetLastDayOfMonth(ByVal dtDate As DateTime) As DateTime

Dim dtTo As DateTime = dtDate

dtTo = dtTo.AddMonths(1)
dtTo = dtTo.AddDays(-(dtTo.Day))

Return dtTo

End Function
Te servirá para evaluar y devolver si la fecha que le pases como parámetro tiene 31 días y en base a ello realizas tus cálculos.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:41.