Hola amigos,
Imaginense...
Un programa que hace comprobaciones, abre ficheros (dbf), esto lo otro y en uno de los IF hay que hacer una copia de seguridad... con por ejemplo hb_zipfile()... pero resulta que lo mejor para utilizar hb_zipfile() es que nadie use los ficheros que van a ser usados para hacer la copia y como es el propio programa el que esta utilizando ficheros... que hacer...
Se me ocurre que habria que grabar el estado de todas las areas de trabajo y despues restaurarlas... ardua labor o no quizas usando dbinfo() y otras db..info()... vale.. las podemos salvar, pero y que pasa si durante el proceso de cierre de las areas hay algun usuario que te "pilla" un fichero que tenias en exclusive.... oh dios mio ! Que horror... por donde salir...
lo que yo pido en pseudocodigo seria:
ABRIR FICHEROS
IF X
NADA
ELSE
IF Y
NADA
ELSE
IF Z
NADA
ELSE
COPIA DE SEGURIDAD
ENDIF
ENDIF
ENDIF
RETURN NIL
FUNCTION COPIA DE SEGURIDAD()
SALVAR WORK AREAS
CLOSE DATABASES
BLOQUEAR "APLICACION" PARA QUE NADIE ENTRE
HACER COPIA
DESBLOQUEAR "APLICACION"
RESTAURAR COPIA
RETURN NIL
Saludos