Ver Mensaje Individual
  #2  
Antiguo 12-08-2021
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.289
Reputación: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por Critter Ver Mensaje
...no sé que campos debo guardar en la base de datos para implementar esta funcionalidad

Para el tema de la periodicidad, creo que es más sencillo que hagas el segundo punto (calcular cuando es la siguiente ocurrencia de un elemento periódico) y eso te dar´ñá la pista de los campos (informaciones) que necesitas guardar en la B.D.


Piensa en el calendario de Google (por ejemplo) y te dará una idea de las opciones y de lo que necesitas:


  • FechaInicial
  • FechaFinal, que en el ejemplo de arriba puedes calcularla de varias maneras
  • NumeroRepeticiones
  • TipoRepeticion (día, semana, mes, año)
  • DiasRepeticion (sólo en el caso de repetir cada semana)

Cita:
Empezado por Critter Ver Mensaje
después a la hora de realizar los cálculos de los eventos para mostrarlos en el calendario.
Para ello, segun los datos anteriores, tendrás que calcular todas las fechas de las repeticiones y ver si la actual coincide con alguna de ellas. Y guardar si ya has avisado en esa fecha, para no estar durante todo un día avisando.


Puedes complicar más la cosa, guardando o configurando, para una coincidencia si quieres avisar una o varias veces y con qué antelación, pero esto ya es otro tema.





Para los cálculos, revisa todas las funciones, variables,... definias en la unit System.DateUtils, porque seguramente vas a necesitar algunas:
http://docwiki.embarcadero.com/Libra...stem.DateUtils
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita