Clipper/FiveWin - IF DELETED()

 
Vista:

IF DELETED()

Publicado por byone (49 intervenciones) el 05/06/2003 16:28:15
Hola a todos estoy diseñando un programa, el cual lleva una rutina que debe de actualizar unos registros. El programa dice algo asi
msgBox("Espere mientras se actualiza el sistema de archivos...") // funcion que yo hice
DO WHILE !EOF()
IF DELETED()
// rutina
ELSE
nDebe = nDebe + 1
ENDIF
SKIP
END DO
El resto del programa funciona bien pero cuando lega a la linea IF DELETED() se queda ahi, eso lo comprobe con el depurador e Clipper, lo ejecuto paso a paso y me doy cuenta que de esa linea no pasa.
¿Alguien sabe que puede estar pasando???
No se si tenga algo que ver que esa rutina esta dentro de otro IF (que uso para comprobar si es lunes)
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
sin imagen de perfil

RE:IF DELETED()

Publicado por Gustavo Alvarez Gambini (274 intervenciones) el 06/06/2003 09:30:29
Byone, lo que se me ocurre que puede estar pasando, teniendo en cuenta tu comentario que estás dentro de otro IF, es que quizás cuando justo pasas por ese IF DELETED() luego no estás pasando por el skip entonces siempre regresas ahí al no estar avanzando el registro.
Se queda desde la primer pasada ? o es un registro determinado ?
Espero haberte ayudado.
Saludos.
Gustavo.
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:IF DELETED()

Publicado por Jose manuel (15 intervenciones) el 06/06/2003 22:51:56
DO WHILE !EOF()
IF DELETED()
rutina
ELSE
nDebe = nDebe + 1
************* TE FALTAN ESTAS DOS INSTRUCCIONES
******** SKIP
********LOOP
ENDIF
SKIP
ENDDO
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:IF DELETED()

Publicado por probaco (153 intervenciones) el 09/06/2003 15:35:54
Hola,
La rutina es correcta, tiene que funcionar, NO LE FALTA ninguna instruccion.
No hay problemas del SKIP, ya que el mismo se encuentra debajo del determinante del IF. o sea el el registro lo salta.
El tema pasa que no vuelve de la funcion RUTINA().
y vos talvez tengas esta funcion en otro prg que no hayas compilado con /B entonces el depurador te muestra hasta la linea anterior y da la sensacion de que esta clavado en ese lugar.
Anula la funcion RUTINA() y pone un contador para probar.

Saludos
Cesar
El tema creo que pasa que la funcion RUTINA(), la debes tener en otro fuente

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

Gracias...........

Publicado por byone (49 intervenciones) el 10/06/2003 23:08:32
Con los consejos de todos y un poco, en realidad mucha paciencia he corregido el error.
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