FoxPro/Visual FoxPro - funcion gomonth

   
Vista:

funcion gomonth

Publicado por Sebastian (253 intervenciones) el 02/04/2008 22:16:19
Buenas tardes a todos en primer lugar gracias por la ayuda anterior espero contar con ustedes, en esta ocacion se trata de lo siguiente.............. cada pacientes debe de atenderse cada 5 meses ejem cuando lleno mis registros y grabo con fecha 01/01/08 este ya no puede ser registrado hasta el 01/05/08 donde recien me permitira darle una cita pueden ayudarme gracias este es mi codigo pero lamentablemente no me funciona

Nota: ya tengo creado un indice con la fecha+codigopaciente
el codigo de paciente es de tipo char.

selec tabla1
public cod
set order to pac_fec
cod=dtoc(thisform.fechatencion.value)+alltrim(thisform.codigopaciente.value)
Seek cod
if found()then
if thisform.text9.value <= GoMonth(fecpa,-5)
messagebox("Debe de pasar 5 meses para la proximo atencion","Mensaje del Sistema")
thisform.text1.value=""
thisform.text1.setfocus
endif
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

RE:funcion gomonth

Publicado por jose camilo (688 intervenciones) el 03/04/2008 04:39:31
en tu tabla de pacientes donde guardas el codigo,nombre,direcion agrega un campo llamado fecha_C donde guarda la ultima consulta
y controla desde este lugar.
asi busca el codigo del paciente y bingo tienes la ultima fecha de consulta y lo maneja a tu antojo ----- sin complicaciones --- solo duplica una informacion nadie lo sabra solo el foro completo
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

Gomonth +5

Publicado por Luighi (105 intervenciones) el 03/04/2008 21:21:44
entiendo que cada atención realizada es un nuevo registro

bueno entonces me parece que el índice que usas no es el más indicado tan sólo necesitas de uno que ordene la tabla por código de paciente

activas la tabla
ordenas por código del paciente
al ingresar en el formulario la fecha de nuevo registro para atención sólo compruebas que dicha fecha sea mayor o igual a la que ya tienes registrada para ese paciente
si eso es cierto entonces se hace el nuevo registro y atiendes al mismo

supongamos que estamos en el futuro
precisamente estamos en el momento justo del 01/05/2008
y viene nuestro cliente carmelo
al revisar el archivo vemos que carmelo fue atendido el 01/01/2008
estando en nuestro archivo asi:

codigo--cliente----atendido
01--------carmelo--01/01/2008

entonces observamos que justamente hoy se cumplen los 5 meses y debes atenderlo

en nuestro formulario de nuevos registros para nuevos pacientes
debemos hacer:

sele tabla_de_pacientes
set orde to codigo_de_paciente && que nomas ordena por codigo de paciente
if !seek(allt(thisform.txtCodigoDelPaciente.value)) or ;
thisform.txtFechaDeAtencion.value>=gomonth(fecha_de_atencion,+5)
cMensaje='atiendan al paciente lo antes posible'
else
cMensaje='deben pasar al menos 5 meses para poder atender a este paciente nuevamente'
endif
messagebox(cMensaje)

lo anterior, si no se encuentra el código del paciente en nuestra tabla
entonces nunca se le atendió y por lo tanto hay que atenderlo pero si
se encuentra entonces evalúa la fecha en que se le atendió y verifica
que esa fecha sea mayor o igual a cinco meses después, si eso también
es cierto entonces hay que atender al paciente

más simple imposible
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:Gomonth +5

Publicado por Sebastian (253 intervenciones) el 04/04/2008 15:30:43
Pucha eres lo maximo mil gracias amigo
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