Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 07-02-2011
Avatar de microbiano
microbiano microbiano is offline
Miembro
 
Registrado: sep 2008
Ubicación: Mexico D.F
Posts: 349
Poder: 16
microbiano Va por buen camino
Ayuda con rango de fechas

bien resulta que tengo que hacer una funcion que determine cuantos meses hay entre un rango de fechas, ejemplo.

fecha inicio :7/01/2011 //realmente seria la fecha del ultimo pago
fecha fin: 07/03/2011// seria la fecha que tendria el sistema al dia que el usuario quiere realizar el pago.


a mi entender en numero de meses en este rango seia 1 el cual corresponderia a febrero, bien pues no se como ahcer jjajajaj, alguna suregencia. es para calcular que meses no ha pagado un usuario.


saludos y de antemano muchas gracias.
Responder Con Cita
  #2  
Antiguo 07-02-2011
afxe afxe is offline
Miembro
 
Registrado: jul 2004
Ubicación: Malaga-España
Posts: 273
Poder: 20
afxe Va por buen camino
En la libreria DateUtils tienes la funcion MonthsBetween (a partir de Delphi 7)

Bye
__________________
Amar al mundo apasionadamente.
Responder Con Cita
  #3  
Antiguo 12-02-2011
Avatar de microbiano
microbiano microbiano is offline
Miembro
 
Registrado: sep 2008
Ubicación: Mexico D.F
Posts: 349
Poder: 16
microbiano Va por buen camino
amigo tendras algun ejemplo de como se usa esa funcion por que ya lo intenten asi (MonthsBetween(date2,date1)) pero me manda error. no compatible, el resultado en que tipo de variable tendria que guardarlo.
Responder Con Cita
  #4  
Antiguo 12-02-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola microbiano.

Ejemplo:
Código Delphi [-]
uses DateUtils;

procedure TForm1.Button1Click(Sender: TObject);
var
  D1,D2: TDate;
  R: Integer;
begin
  D1:= StrToDate('07/01/2011');
  D2:= StrToDate('07/03/2011');
  R:= MonthsBetween(D1,D2);
  ShowMessage('Meses comprendidos entre ' + DateToStr(D1) + ' y ' +
              DateToStr(D2) + ':  ' + IntToStr(R));
end;

Un saludo.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #5  
Antiguo 12-02-2011
Avatar de microbiano
microbiano microbiano is offline
Miembro
 
Registrado: sep 2008
Ubicación: Mexico D.F
Posts: 349
Poder: 16
microbiano Va por buen camino
Excelente Muchas Gracias es lo que estaba buscando muchas gracias Amigo.
Responder Con Cita
  #6  
Antiguo 14-02-2011
Avatar de microbiano
microbiano microbiano is offline
Miembro
 
Registrado: sep 2008
Ubicación: Mexico D.F
Posts: 349
Poder: 16
microbiano Va por buen camino
hola hasta ahora me ha funcionado lo del rango de fechas, pero ahora necesito saber el nombre de los meses :-( que estan en ese ranfo por ejemplo 01/01/2001 al 01/04/2011, bien con la instruccion anterior me da el numero de meses esw decir me dice 2 meses, pero como puedo sabe el nombre de los meses en este caso seria Febrero y Marzo.

alguna sugerencia?.


de antemano muchas gracias por su respuesta.
Responder Con Cita
  #7  
Antiguo 19-02-2011
Avatar de microbiano
microbiano microbiano is offline
Miembro
 
Registrado: sep 2008
Ubicación: Mexico D.F
Posts: 349
Poder: 16
microbiano Va por buen camino
ayuda

resulta que no tngo indea de como hacer un formulario de cobro de agua potable, necesito determinar cuantos meses exisnten entre un rango de fechas para verificar cuantos meses se deben cobrar con recargo, pero que pasa si el usuario paga todo el año completo.

alguien tiene una aplicacion para cobro de algun servicio que a la vez sea por mes y que a la vez se vea que mes ya se pago que me de una idea de como se hace
Responder Con Cita
  #8  
Antiguo 19-02-2011
Avatar de Chris
[Chris] Chris is offline
Miembro Premium
 
Registrado: abr 2007
Ubicación: Jinotepe, Nicaragua
Posts: 1.678
Poder: 19
Chris Va por buen camino
Cita:
Empezado por microbiano Ver Mensaje
...necesito determinar cuantos meses exisnten entre un rango de fechas para verificar cuantos meses se deben cobrar con recargo, pero que pasa si el usuario paga todo el año completo.
OK OK OK OK! Estás desesperado creo. Eso no es bueno. Tómalo con calma que nada es para tanto

La solución de tu problema va por "volver a la mesa de dibujo o diseño", cómo quieras llamarle. Por lógica se deduce que si un cliente ya pago con antelación todo el año, él ni siquiera debería aparecer en la tabla de morosos. Si con los datos brindados por la DB no puedes deducir cuando un cliente ha pagado con antelación, pues creo que estás en un grave problema y necesitas revisar el diseño de tu sistema.

Con respecto a la diferencia de meses entre dos fechas, es un poco más complicado. A cómo se te ha mencionado, la función MonthBetween no puede garantizar ser exacta. Por lo delicado del asunto, no puedes pasar por alto esa impresión de la función. Ahorita, con sueño y con ganas más de dormir que de otra cosa, sólo se me ocurre que deberías de adentrarte a tratar de construir un algoritmo adecuado específicamente para la circunstancia que te premia. Gracias a Dios que los desarrolladores de Delphi nos dejaron rutinas para saber en qué mes estamos, en que día del año también. Cuando estamos en un año bisiesto y así sucesivamente. Creo que una ensalada de estas funciones puede ayudarte a determinar con mayor precisión cuando un cliente ha cumplido uno o más meses de mora.

Saludos,
Chris
__________________
Perfil Github - @chrramirez - Delphi Blog - Blog Web
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Consulta Mysql Suma entre rango de fechas kaeltas MySQL 4 22-06-2012 21:30:44
Ayuda SQL Between con rango de fechas darkbits SQL 16 26-07-2010 21:20:37
Ayuda SQL Between con rango de fechas darkbits SQL 3 14-04-2010 22:31:30
Rango de fechas roberasturias Varios 2 23-05-2005 18:02:35
Rango de fechas JODELSA Varios 8 22-05-2003 20:45:43


La franja horaria es GMT +2. Ahora son las 03:15:06.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi