Reparar DBF

6,368 views
Skip to first unread message

Dario David Puccio

unread,
Feb 8, 2012, 9:42:08 AM2/8/12
to Comunidad de Visual Foxpro en Español
Amigos que me recomiendadn para reparar las dbf de la version 9 pero
que no sea de codigo pago?, el mio funcionaba hasta que cambio la
informacion del header :(

Daniel Sánchez

unread,
Feb 8, 2012, 10:04:08 AM2/8/12
to publice...@googlegroups.com
Antes que nada realiza una copia de tu tabla dañada, luego en command pones set tablevalidate 0 esto te sirve para que no realice ninguna validación de la tabla al abrirla si logras abrirla le das un pack y ya debería quedar operativa realizando un browse.
En todo caso si esto no funciona te adjunto el cmrepair.app que te sirve para reparar los archivos dbf.

Saludos

-- 
Daniel Sánchez Escobar
Investigación y Desarrollo
Reset Software & Sistemas
Móvil +051-949398047
Trujillo - Perú
cmRepair-Reparar_Tablas.zip

Dario David Puccio

unread,
Feb 8, 2012, 10:11:34 AM2/8/12
to Comunidad de Visual Foxpro en Español
interesantisimo tu comentario, pero si bien logro abrirla se pierden
los datos :(
veo el cmrepair, pero no es de pago???

Dario
>  cmRepair-Reparar_Tablas.zip
> 145 KVerDescargar

Daniel Sánchez

unread,
Feb 8, 2012, 10:18:53 AM2/8/12
to publice...@googlegroups.com
Si es gratuito compartido en hace tiempo en algún foro o web de vfp. Lo que te recomiendo usando el reparador es que solo aumentes bytes al final del archivo en una de las opciones que te da su pantalla de reparación, por nada del mundo toques la cabecera porque ahí si se malogra tu tabla, una vez que le aumentaste el tamaño aunque sea un byte le das reparar y en la mayoría de los casos debería dejarte tu tabla operativa.

edgar suarez kummers

unread,
Feb 8, 2012, 10:18:58 AM2/8/12
to publice...@googlegroups.com
Te subí a Medifire una *.app de VFP llamada
CMREAPIR
es muy bueno tenerla dentro de las aplicaciones, porque permite invocarla y reparar.

http://www.mediafire.com/?o1objapvubqpmmy

saludos

edgar

--
edgar suarez kummers

Dario David Puccio

unread,
Feb 8, 2012, 10:44:32 AM2/8/12
to Comunidad de Visual Foxpro en Español
todo cmrepair es de pago, ademas abre la tabla y que boton dice
REAPARAR???? ni gaciendolo automatico con el parametro .t. lo hace,
por favor otra cosa??????????????????????


On 8 feb, 12:18, edgar suarez kummers <edgarkumm...@gmail.com> wrote:
> Te subí a Medifire una *.app de VFP llamada
> CMREAPIR
> es muy bueno tenerla dentro de las aplicaciones, porque permite invocarla y
> reparar.
>
> http://www.mediafire.com/?o1objapvubqpmmy
>
> saludos
>
> edgar
>

Dario David Puccio

unread,
Feb 8, 2012, 10:45:38 AM2/8/12
to Comunidad de Visual Foxpro en Español
SI pero donde esta el boton REAPARARRRRRRRR NI APARECE

GeoSys Diseño de Software

unread,
Feb 8, 2012, 11:36:47 AM2/8/12
to publice...@googlegroups.com
Recuerda decirle a tu cliente que todas las pc deben tener una UPS en buen estado.

Si usas tablas DBF´s usa siempre el comando FLUSH después de insertar o modificar los registros, te va a afectar un poquito el rendimiento en una red, pero tus datos quedarán guardados realmente en el disco, lo cual es una manera efectiva.

Te dejo este Tip del amigo David Acuña Guzman que está en la web:

Fuente: 

David Acuña Guzman Blog

Bajar nivel integridad al comprobar estado

Un problema frecuente, suele ser las tablas en mal estado, que no se dejan abrir en VFP9.
Hay casos, en los que en VFP6, esas mismas tablas, se podían abrir.
Reparar estas tablas en algunos casos, resulta fácil, simplemente hay que bajar el nivel de
comprobación de la integridad de las tablas, crear un registro, luego borrarlo, y ya tendremos
un acceso normal a la misma, sin tener que recurrir a programas de terceros para recuperar registros borrados.

Ejemplo:

Set tablevalidate to 0 && el valor es un cero.
Use XXXX exclusive && abrir la tabla XXXX
Appe blank && crear registro en blanco
delete && borrar registro creado
Use && cerrar la tabla
Set tablevalidate to 3 && valor por defecto

Consulte la información de ayuda de vfox.


Saludos

Anthony Contreras Peralta

Costa Rica.

Dario David Puccio

unread,
Feb 8, 2012, 12:27:53 PM2/8/12
to Comunidad de Visual Foxpro en Español
Amigo, todas las PC tiene UPC mas estabilizador general.

La ruptura es aleatoria dias si dias no...

La abri bajando el nivel, pude abrirla pero desaparecieron los
registros...

Tendria que probar con el flush

Lo extraño de todo es que siempre se rompen las mismas tablas
clientes, paramatros, provincia las tres de solo consulta y lectura y
la mas preocupante es la nrocbte donde se graban los numeros de
comprobates que tiene su rlock y en donde solo se hace un replace algo
asi

sele nrocbte
if rlock()
calculo ultimo numero
nro=campo+1
replace factura with nro
else
mesage... "espere por favor..."
return
endif
unlock

sigue con toda grabacion de datos y ninguna tabla se rompe... (mama
mia)

Estoy ya con medio clonazepan :)

Dario David Puccio

unread,
Feb 8, 2012, 12:28:58 PM2/8/12
to Comunidad de Visual Foxpro en Español
Agrego, creo que todo paso desde que pase de la version 6 a la 9...

David

unread,
Feb 8, 2012, 1:29:53 PM2/8/12
to Comunidad de Visual Foxpro en Español
Bueno te comentar�... Antes yo tenia ese mismo problema, pero como algunos
compa�eros mencionan el truco es accesar a la tabla corrupta desde una
versi�n anterior a la 9 (de preferencia la 6); en mi caso, yo tengo un
formulario que abre las tablas en modo exclusivo y hace un cambio en la
tabla corrupta y luego quita esa cambio, al final la tabla queda bien.
Si te interesa te envi� el c�digo fuente de ese form.


-----Mensaje original-----
From: Dario David Puccio
Sent: Wednesday, February 08, 2012 11:28 AM
To: Comunidad de Visual Foxpro en Espa�ol
Subject: [vfp] Re: Reparar DBF

Agrego, creo que todo paso desde que pase de la version 6 a la 9...

On 8 feb, 14:27, Dario David Puccio <sinse...@gmail.com> wrote:
> Amigo, todas las PC tiene UPC mas estabilizador general.
>
> La ruptura es aleatoria dias si dias no...
>
> La abri bajando el nivel, pude abrirla pero desaparecieron los
> registros...
>
> Tendria que probar con el flush
>

> Lo extra�o de todo es que siempre se rompen las mismas tablas

David Salazar

unread,
Feb 8, 2012, 1:41:48 PM2/8/12
to Comunidad de Visual Foxpro en Español
Prueba este codigo en un prg.
use tabla exclu
alter table tabla add column y c(1)
alter table tabla drop column y
reindex
use in tabla

-----Mensaje original-----
From: Dario David Puccio
Sent: Wednesday, February 08, 2012 11:28 AM
To: Comunidad de Visual Foxpro en Espa�ol
Subject: [vfp] Re: Reparar DBF

Agrego, creo que todo paso desde que pase de la version 6 a la 9...

On 8 feb, 14:27, Dario David Puccio <sinse...@gmail.com> wrote:
> Amigo, todas las PC tiene UPC mas estabilizador general.
>
> La ruptura es aleatoria dias si dias no...
>
> La abri bajando el nivel, pude abrirla pero desaparecieron los
> registros...
>
> Tendria que probar con el flush
>

> Lo extra�o de todo es que siempre se rompen las mismas tablas

GeoSys Diseño de Software

unread,
Feb 8, 2012, 1:55:26 PM2/8/12
to publice...@googlegroups.com
Para el futuro prueba así a ver si no se siguen rompiendo las tablas, agregando FLUSH después de remplazar:

SELECT nrocbte
IF RLOCK()
calculo ultimo numero
nro=campo+1
replace factura with nro
FLUSH && Guardo en disco.
ELSE
mesage... "espere por favor..." 
RETURN 
ENDIF 
UNLOCK  

Con respecto al si no pudo bloquear que veo que le pones solamente que espere en el ELSE, mesage... "espere por favor..." eso tienes una rutina que vuelve a ejecutar el código hasta que logre bloquearlo?. Porque de lo contrario si no logró boquear y le das RETURN entonces deberías enviar un mensaje como este en tu ELSE:
MESSAGEBOX("No se pudo bloquear el registro, vuelva a intentarlo nuevamente.", 48, "Registro bloqueado por otro usuario")

El problema lo tengas tal vez con los bloqueos de los registros o tablas y alguien te esté tronando la aplicación al quedar esperando el bloqueo y ver que su pc no responde, el personal no te está avisando que a veces las máquinas se quedan trabadas esperando.

Me imagino que tienes el SET MULTILOCK ON activado al principio de tu aplicación.

Saludos

Anthony Contreras Peralta

Costa Rica.
El 8 de febrero de 2012 12:41, David Salazar <cho...@hotmail.com> escribió:
Prueba este codigo en un prg.
use tabla exclu
alter table tabla add column y c(1)
alter table tabla drop column y
reindex
use in tabla


-----Mensaje original----- From: Dario David Puccio
Sent: Wednesday, February 08, 2012 11:28 AM
To: Comunidad de Visual Foxpro en Español

Subject: [vfp] Re: Reparar DBF

Agrego, creo que todo paso desde que pase de la version 6 a la 9...

On 8 feb, 14:27, Dario David Puccio <sinse...@gmail.com> wrote:
Amigo, todas las PC tiene UPC mas estabilizador general.

La ruptura es aleatoria dias si dias no...

La abri bajando el nivel, pude abrirla pero desaparecieron los
registros...

Tendria que probar con el flush

Lo extraño de todo es que siempre se rompen las mismas tablas

Dario David Puccio

unread,
Feb 8, 2012, 2:17:32 PM2/8/12
to Comunidad de Visual Foxpro en Español
claro que si amigo todo viene bien.... gracias

Dario David Puccio

unread,
Feb 8, 2012, 2:19:25 PM2/8/12
to Comunidad de Visual Foxpro en Español
pero david si esta dañada no se puede abrir y si lo hago bajando su
validacion se pierden los datos...

Britosis Soluciones Informáticas

unread,
Aug 28, 2017, 2:51:25 PM8/28/17
to Comunidad de Visual Foxpro en Español
Gracias gracias!!! Después de buscar varias soluciones en internet, esta finalmente me salvado la vida de una manera práctica y sencilla.

Saludos a todos!
Nada corre como un zorro...
Reply all
Reply to author
Forward
0 new messages