FoxPro/Visual FoxPro - novato pide ayuda con algo

 
Vista:

novato pide ayuda con algo

Publicado por jose (12 intervenciones) el 25/01/2003 19:52:57
Tengo dos problemas: el primero es que yo tengo un proyecto con dos tablas, una de alumnos con todos sus datos y otra tabla de inasistencias que solo incluye dos campos, el nombre del alumno y un campo de fecha. sucede que quiero lograr que por medio de un boton se me registre al alumno que tengo en memoria como inasistente, para lo cual el boton me abre la tabla inasistencias y crea un registro con el nombre del alumno y la fecha( sencillo, con m,fecha= date() ) pero lo extraño es que siempre me mete los datos en el ultimo registro de la tabla inasistencia reescribiendo, y no me crea uno nuevo como yo quisiera, no entiendo porque si hago un go bottom y despues scatter memvar memo blank, acaso hay otro metodo mas eficiente ?.

la segunda duda es que necesito validar cuano un campo del tipo date este vacio o nulo y no me funciona ni " if m.campo=0" ni "if m.campo=" " "
ya que por ser una variable tipo date no puede valer cero, ¿ como hago para validar el campo del tipo date vacio ?

GRACIAS
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:novato pide ayuda con algo

Publicado por veronica (1 intervención) el 27/01/2003 04:17:28
Necesitas crear un programa que incluya el comando EoF( )que es prinicipio de archivo ó BoF ( ) que es fin de archivo utiliza el GO BOTTOM pero también incluye SKIP-1 ó solo SKIP
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:novato pide ayuda con algo

Publicado por upliftmofopartyplan (265 intervenciones) el 27/01/2003 14:15:14
Hola!
por que no pruebas colocando el blank fuera del scatter. ej:
append blank
scatter memvar.
otra sería usar un SQL:
insert into inasistencias(nombre, fecha) values(m.nombre, m.fecha)
con la validación de fecha puedes probar validarla a:
len(alltrim(dtoc(m.fecha)))=4
es decir, si no se introduce la fecha o no es un valor válido (por ej 30/02/2003), el valor en tipo cadena siempre te dará una longitud de 4 caracteres (cuando le quitas los espacios en blanco "/ /").
para pasar de un DATE a un STRING usas el DTOC.
saludos.
Uplift

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:novato pide ayuda con algo

Publicado por Hector Urbina (17 intervenciones) el 28/01/2003 16:51:13
lo unico que debes haces es utilizar APPEND BLANK y asignar los valores a tus campos con REPLACE campo WITH valor
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