FoxPro/Visual FoxPro - ayuda con calculo de fechas

 
Vista:

ayuda con calculo de fechas

Publicado por gustavo (34 intervenciones) el 04/10/2008 00:13:40
hola a todos
alguien me puede ayudar con el suiguient codigo
***********************************
LOCAL fmxm
SELECT inas_mae
GO top
LOCATE FOR id_dnimaes=thisform.txtdni.Value
IF FOUND()
For mes = 3 To 12
Count For estado="AUSENTE" AND justifica = "SI" AND id_dnimaes=thisform.txtdni.Value AND Month(fecha) = mes TO fmxm
IF fmxm = 3
MESSAGEBOX("El maestro a las 3 faltas en un mismo mes",16)
else
IF fmxm > 3
MESSAGEBOX("El maestro supero las 4 faltas en un mismo mes",16)
ELSE
IF fmxm < 3
MESSAGEBOX("El maestro no llego al limite de faltas en un mismo mes",16)
ENDIF
ENDIF
ENDIF
ENDFOR
ELSE
MESSAGEBOX("El maestro no tiene faltas",64)
ENDIF
***********************************************
lo que ocurre al ejecutarlo, los mensaje aparecen por todos los meses
si el maestro solo tubo 3 faltas en octubre en este mes me muestra su mensage correspondiente y el resto de los meses me muestra tambien su mensage correspondient
es decir que siempre me muestra 9 veces un mensaje,uno por mes
como podria cambiar esto
y si es posible que en un mensaje me figure el nombre del mes

chau y hasta pronto
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:ayuda con calculo de fechas

Publicado por douglas (297 intervenciones) el 05/10/2008 06:05:30
hola que tal colega, que mas me gustaria ayudarte pero segun entiendo tu codigo, lo que tu necesitas a mi pareces es que emplees un consulta en ves del ciclo con sql select

para optimizar tu programacion

select count(*) as falta,cMONTh(fecha) as meses from inas_mae where;
id_dnimaes=thisform.txtdin.value;
and estado=''ausente' and;
justifica="SI" group by month(fecha),estado order by fecha o el mes into cursor tmpausente
podes modificar segun tus necesidad esta consulta a como podes ver

pero si no es esto trata de xplicar mejor no entiendo q es lo q
ves mal exactamente si lo que a mi parecer
quiers saber cuantas ausencia tiene alguien
especificamente 1 maestro, en el where agrega
ese dato. ok saludes

saludes

Douglas
from Nicaragua
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:ayuda con calculo de fechas

Publicado por gustavo  (34 intervenciones) el 06/10/2008 16:21:26
hola a todos
lo que deseo hacer con el codigo es comprobar las faltas de un maestro por mes
con el count for cuento al AUSENTE JUSTIFICADO DE UN MISMO MES
de acuerdo al conteo muetra el mensaje
el proble es que verifica mes x mes es decir el me muestra un mensaje x mes.
esto es justamente lo que kiero evitar.
solo quiero q muestre el mesnsaje cuando coincida con el conteo
***********************************
LOCAL fmxm
SELECT inas_mae
GO top
LOCATE FOR id_dnimaes=thisform.txtdni.Value
IF FOUND()
For mes = 3 To 12
Count For estado="AUSENTE" AND justifica = "SI" AND id_dnimaes=thisform.txtdni.Value AND Month(fecha) = mes TO fmxm
IF fmxm = 3
MESSAGEBOX("El maestro a las 3 faltas en un mismo mes",16)
else
IF fmxm > 3
MESSAGEBOX("El maestro supero las 4 faltas en un mismo mes",16)
ELSE
IF fmxm < 3
MESSAGEBOX("El maestro no llego al limite de faltas en un mismo mes",16)
ENDIF
ENDIF
ENDIF
ENDFOR
ELSE
MESSAGEBOX("El maestro no tiene faltas",64)
ENDIF
***********************************************
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:ayuda con calculo de fechas

Publicado por enrique (1041 intervenciones) el 07/10/2008 00:10:29
LOCAL fmxm , ftotal
SELECT inas_mae
GO top
LOCATE FOR id_dnimaes=thisform.txtdni.Value
IF FOUND()
ftotal=0
For mes = 3 To 12
fmxm=0
Count For estado="AUSENTE" AND justifica = "SI" AND id_dnimaes=thisform.txtdni.Value AND Month(fecha) = mes TO fmxm
ftotal = ftotal + fmxm
ENDFOR
IF ftotal = 3
MESSAGEBOX("El maestro a las 3 faltas en un mismo mes",16)
else
IF ftotal > 3
MESSAGEBOX("El maestro supero las 4 faltas en un mismo mes",16)
ELSE
IF ftotal < 3
MESSAGEBOX("El maestro no llego al limite de faltas en un mismo mes",16)
ENDIF
ENDIF
ENDIF
ELSE
MESSAGEBOX("El maestro no tiene faltas",64)
ENDIF
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:ayuda con calculo de fechas

Publicado por vicky (5 intervenciones) el 30/10/2008 21:51:47
Hola.

tengo un problema que ro calcular fechas pero con la condicion que la fecha de ingreso + vida util y se drepecie si es mayor que la > fecha del mes tiene que calcularse la depresiacion.
pero si la ultima fecha<fecha del mes no hay que depreciar la pregunta como puedo hacer esto si con fechas o con numero como lo maneja excel.
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:ayuda con calculo de fechas

Publicado por vicky (5 intervenciones) el 30/10/2008 21:53:04
Hola.

tengo un problema que ro calcular fechas pero con la condicion que la fecha de ingreso + vida util y se drepecie si es mayor que la > fecha del mes tiene que calcularse la depresiacion.
pero si la ultima fecha<fecha del mes no hay que depreciar la pregunta como puedo hacer esto si con fechas o con numero como lo maneja excel.
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