Clarion - RECORDATORIO DIARIO

   
Vista:

RECORDATORIO DIARIO

Publicado por Diego (38 intervenciones) el 16/09/2009 14:39:01
Hola, saludos a todos, necesitaria saber si alguien conoce una forma de hacer un recordatorio en forma diaria de un evento... por ejemplo: TOMAR LA PASTILLA A LAS 3 DE LA TARDE LOS DIAS JUEVES Y SABADOS O TODOS LOS DIAS A LA MISMA HORA...

Se entiende? yo hice una agenda que cuando arranca tiene un recordatorio especifico para un dia especial, pero no se como hacer para setear dias u horarios en forma variada...

alguien conoce un template GRATUITO o una forma de realizar esto?

DESDE YA GRACIAS A TODOS

SALUDOS
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
información
Otras secciones de LWP con contenido de Clarion
- Código fuente de Clarion
- Cursos de Clarion
información
Códigos de Clarion
- Llamar al form para insertar desde el menu

RE:RECORDATORIO DIARIO

Publicado por Marcelo Madelon (572 intervenciones) el 16/09/2009 15:37:00
Hola Diego.

Tengo hecho algo parecido y es para mostrar los cumpleaños de los empleados.
Lo que hago es cargar una Queue e imprimirla. En el reporte habilito el Zoom al 100% y la vista previa.
En tu caso podría ser algo parecido a esto:
En la tabla (Tomas) guardo la fecha y la hora que debe tomar el medicamento y la declaro como clave duplicada.
TOM:KeyFechaToma (Clave)
..........TOM:FechaToma (Campo D6)
..........TOM:HoraToma (Campo T1)
Tambien guardaría el IdPaciente, IdMedicamento y la cantidad
luego leo la tabla, cargo una Queue con los registros que coinciden con Today()
y las muestro en el browse.

Queue seria:
QTomas
QT:IdTomas
QT:Fecha
QT:Hora
QT:IdMedicamento
QT:Cantidad

El reporte hacelo usando un archivo que tenga 1 (un) sólo registro. Esto te sirve para que por take record SOLO pasa una vez. Luego armas el reporte con los campos de la Queue. En:
ReportPropierties
................ Tildá PrintPreview
................................Preview Options Zoom 100%
..............................................Filters
..........................................................Propierties
......................................................................Filter Agregale: False y tildaExclude Ulfiltered
Esto hace que la impresión se haga solo por código. Prueba quitarle esto y fijate la diferencia
En take record del reporte va este código

I# = 0
! Cargo la fecha de hoy
TOM:FechaToma = Today()
! me posiciono a partir de la fecha = Today()
Set (TOM:KeyFechaToma,TOM:KeyFechaToma)
! Leo hasta que el campo TOM:FechaToma sea > a Today()
LOOP UNTIL Access:Tomas.Next() or TOM:FechaToma > Today()
! Aca cargo la queue
QT:IdTomas = TOM:IdTomas
QT:Fecha = TOM:Fecha
QT:Hora = TOM:Hora
QT:IdMedicamento = TOM:IdMedicamento
QT:Cantidad = TOM:Cantidad
I# += 1
ADD(QTomas,I#)
IF ERRORCODE() THEN STOP(ERROR()).
End ! Loop

! Lo Ordenas por fecha y hora
SORT(QTomas,QT:Fecha,QT:Hora)
! Lo Imprimis
! Imprimir desde una Queue
Loop I#= 1 to Records(QToma)
Get(QToma,I#)
Print(RPT:Detail) ! Detail es el nombre por defecto. Podes usar cualquiera
End
EndPage(Report)




Si quiesiera incluir las tomas de Hoy y las de mañana sería:
LOOP UNTIL Access:Tomas.Next() or TOM:FechaToma > Today() + 1

! El resto igual

! Si lo quieres ordenado por Paciente, fecha y hora
SORT(QTomas,QT:IdPaciente,QT:Fecha,QT:Hora)

Espero te sirva.

Avisame si solucionaste.

Desde Venado Tuerto un abrazo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:RECORDATORIO DIARIO

Publicado por Diego (38 intervenciones) el 16/09/2009 19:44:19
UAU! MUCHAS GRACIAS POR EL DATO, LO VOY A PROBAR!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar