Problema creando indices
Publicado por giovanni (64 intervenciones) el 10/03/2009 03:40:03
Hola a todos tengo un inconveniente no se si se pueda solucionar
Tengo unas tablas libres con sus indices cdx algunas con 1 entrada y otros con 2 o 3 entradas, en ocaciones hay que recrear los indices si hay cortes de luz o si los balances no cuadran e.t.c. para eso tengo una funcion la cual hace su tarea correctamente (supuestamente).
Probando la funcion y generandole errores encontre que cuando yo borro los archivos de indice .cdx y corro la funcion me genera el siguiente error
1707 no se encuentra el archivo cdx estructural
Pero este solo aparece cuando trata de abrir cualquier dbf con 2 o mas entradas (logico el archivo no existe por que yo lo borre) yo manejo este error con una rutina de errores que dice !!el archivo no esta disponible desea reintentarlo ? !! el usuario le da reintentar y entonces se genera el indice correctamente y listo. Ese mensaje es el que le muestro al usuario pero el verdadero error es el arriba escrito. Esta manera no es la mas ortodoxa pero funciona.
Otra manera que funciona es corriendo la funcion sin la rutina de errores entonces el genera todos los indices de 1 o 2 o cualquier entrada sin problema. Pero (siempre hay un pero) si alguna dbf no se puede abrir en exclusiva para generar los indices me generar un error. Esa era la idea inicial de la rutina de errores.
Mis preguntas son:
Existe alguna manera para saltar ese error (1707) y que no me pause el programa ?
Tengo que limitar esa opcion de recrear los indices con mensajes como !! ATENCION ESTE PROCESO ES MUY DELICADO asegurese que todos los usuarios este desconectados para continuar ?
Alguien tiene un ejemplo de una forma de hacerlo sin estos inconvenientes ?
Gracias por su colaboracion
Tengo unas tablas libres con sus indices cdx algunas con 1 entrada y otros con 2 o 3 entradas, en ocaciones hay que recrear los indices si hay cortes de luz o si los balances no cuadran e.t.c. para eso tengo una funcion la cual hace su tarea correctamente (supuestamente).
Probando la funcion y generandole errores encontre que cuando yo borro los archivos de indice .cdx y corro la funcion me genera el siguiente error
1707 no se encuentra el archivo cdx estructural
Pero este solo aparece cuando trata de abrir cualquier dbf con 2 o mas entradas (logico el archivo no existe por que yo lo borre) yo manejo este error con una rutina de errores que dice !!el archivo no esta disponible desea reintentarlo ? !! el usuario le da reintentar y entonces se genera el indice correctamente y listo. Ese mensaje es el que le muestro al usuario pero el verdadero error es el arriba escrito. Esta manera no es la mas ortodoxa pero funciona.
Otra manera que funciona es corriendo la funcion sin la rutina de errores entonces el genera todos los indices de 1 o 2 o cualquier entrada sin problema. Pero (siempre hay un pero) si alguna dbf no se puede abrir en exclusiva para generar los indices me generar un error. Esa era la idea inicial de la rutina de errores.
Mis preguntas son:
Existe alguna manera para saltar ese error (1707) y que no me pause el programa ?
Tengo que limitar esa opcion de recrear los indices con mensajes como !! ATENCION ESTE PROCESO ES MUY DELICADO asegurese que todos los usuarios este desconectados para continuar ?
Alguien tiene un ejemplo de una forma de hacerlo sin estos inconvenientes ?
Gracias por su colaboracion
Valora esta pregunta


0