Pregunta: | 2187 - PROBLEMAS CON EXTENSION DBT |
Autor: | Alvaro Rodriguez Camacho |
Hola a todos. tengo una aplicacion en clipper 5.0 y en la cual una base de datos tiene un campo memo, lo cual me genera una base de datos con extension DBT. El problemas es que cuando borro un registro con delete / pack, el registro se borra de la DBF pero no de la DBT por lo que el tamaƱo de la DBT crece incesantemente, sin que pueda disminuirla. Si alguien sabe como le agracedeceria. |
Respuesta: | Vicente Serrano |
//te mando el codigo que yo uso. //////AJUSTE DE BASES Y MEMOS AJU_MEMO () RETURN ** -------------- function AJU_MEMO local cNomFi @21,42 say "COMPACTANDO" SELECT 1 USE APARATOS COPY TO TEMP FOR .NOT. DELETE() USE cNomFi:="APARATOS.DBF" erase (cNomFi) cNomFi:="APARATOS.DBT" erase (cNomFi) rename TEMP.DBF TO APARATOS.DBF rename TEMP.DBT TO APARATOS.DBT ///luego reindexo///////////// @21,42 say "REINDEXANDO" //////////////// IF FILE ("CODAPARA.NTX") ERASE ("CODAPARA.NTX") ENDIF IF FILE ("MODAPARA.NTX") ERASE ("MODAPARA.NTX") ENDIF IF FILE ("SERAPARA.NTX") ERASE ("SERAPARA.NTX") ENDIF SELECT 1 USE APARATOS INDEX ON COD TO CODAPARA index ON SERIE TO SERAPARA INDEX ON SUBSTR(MAR,1,15)+SUBSTR(MODE,1,10) TO MODAPARA SET INDEX TO CODAPARA,MODAPARA,SERAPARA REINDEX USE return /////////////////// |