* ------------------------------------------------------------------ *
* 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