FoxPro/Visual FoxPro - Problema con Archivo CDX

   
Vista:

Problema con Archivo CDX

Publicado por Sergio Leonardini sergileonar@hotmai.com (4 intervenciones) el 22/03/2011 18:01:38
hola. nose por que motivo cuando abro con un combobox una tabla de proveedores se rompe el archivo indice (CDX) y me pone un cartel diciendo archivo Indice dañado Reindexe la Tabla.

Aca la pregunta. como reindexo si no me deja abrir la tabla por que el indice extrucural esta dañado. Como debo Hacer ? 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
Imágen de perfil de Mauricio

Problema con Archivo CDX

Publicado por Mauricio (1367 intervenciones) el 22/03/2011 20:34:25
borra el cdx
cierra todas tus tablas y con SET abre la tabla en mencion y reindexala......
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

Problema con Archivo CDX

Publicado por xx (378 intervenciones) el 24/03/2011 02:29:23
Bueno creo que deberias analizar bien, si utilizas un combo para seleccionar un proveedor deberias dar simplemente acceso de lectura a la tabla es decir abirlo con USE PROVEEDORES.DBF SHARED NOUPDATE, siempre asignando el minimo privilegio, si esto es permanente o sea que cada vez que ejecutas tu seleccion de proveedores se daña tu CDX, deberias verificar que:
1) El codigo de tu formulario en alguna parte no este alterando la estructura de tu tabla PROVEEDORES
2) deberias chequear que tu disco duro funcione correctamente con el scandisk o similar a fin de localizar pistas defectuosas, sobre todo si tu PC tiene cuelgues inexplicables.

Ahora si esto es fortuito es decir solo ocurrio una vez!!, simplemente deberias repararlos y para ello:
1) tratandose de una tabla libre: podrias abrir la tabla con USE PROVEEDORES EXCLUSIVE y ejecutar DELETE TAG ALL a fin de romper vinculos y luego cierras la tabla eliminas el archivo PROVEEDORES.CDX, abres de nuevo la tabla USE PROVEEDORES EXCLUSIVE y vuelves a generar el mismo ya sea con INDEX ON o por medio MODIFY STRUCTURE PROVEEDORES

2) Si se trata de una tabla incluida en una base de datos deberias primero quitarla de la base de datos con FREE TABLE PROVEEDORES y luego hacer la recuperacion como si fuera tabla libre es decir paso1

Saludos

Pd No es recomendable utilizar combos con tablas que tienen cantidad excesiva de registros
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