FoxPro/Visual FoxPro - Reparar tablas

 
Vista:

Reparar tablas

Publicado por Elmer Rodriguez (40 intervenciones) el 10/02/2001 21:09:54
Alguien tiene por casualidad alguna rutina, que me permita reparar mis tablas, estas se dañan, a veces cuando el usuario apaga mal el equipo sin cerrar el sistema. Si las tablas estan abiertas, estas se dañan y por lo tanto las tengo que ir a reparar, haciendondolo desde Excel, y en algunas ocasiones se pierden registros.
Esto lo necesito para un sistema que esta Fox p/DOS.

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

RE:Reparar tablas

Publicado por R Hunter S (4 intervenciones) el 12/02/2001 19:28:10
Yo tengo problemas similares, pero lo he resuelto con el FILEFIX del Norton
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:Reparar tablas

Publicado por Joel (8 intervenciones) el 25/04/2001 00:26:09
* ------------------------------------------------------------------ *
* System:
* Program: screpara.prg
* Type: fox.prg
* Date: August 6, 1995
* Author:
* Use: chequea las base de datos por posibles errores
* Note:
* ------------------------------------------------------------------ *
PARAMETERS m.dir
*SET PROCEDURE TO SCLIB001
SET TALK OFF
*--

*- cierro archivo de empresas -
PRIVATE ;
m.dbflist, m.dbfname, m.dbfsize, m.dir, m.dirl, ;
m.nudbf, m.onerror, m.cont, m.total_r

DIMENSION dbflist[1]

* - - - - - - - - - - - - - - - - -
_mpspath1 = directorio &&--- NOTA aqui va el directorio donde estan las tablas...
m.dir = _mpspath1
DO MainLoop
*--
* ------------------------------------------------------------------ *
PROCEDURE MainLoop
* ------------------------------------------------------------------ *
m.dir = UPPER(m.dir)
m.nudbf = ADIR(dbfList,m.dir+"*.DBF")
m.total_r = 0
m.dirl = LEN(m.dir)+14
CTR = 1
G_THERMWIDTH=0
DO ACTTHERM IN SCLIB001 WITH "Reparando DBFs..."
FOR cont = 1 to nudbf
DO UPDTHERM IN SCLIB001 WITH CONT/NUDBF * 100
m.dbfname = m.dir+dbflist(m.cont,1)
m.dbfsize = dbflist(m.cont,2)
@1,3 say "BASE DE DATOS ="+PADR(m.dbfname,m.dirl)
@5,50 SAY TRANSFORM(CONT/NUDBF *100,'999')+"%"
IF fixdbf()
if !used(m.dbfname)
SELECT 0
USE (m.dbfname) EXCLUSIVE
@5,1 SAY SPACE(49)
@5,1 SAY
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