4D v13.4Compact data file |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v13.4
Compact data file
|
Compact data file ( rutaEstructura ; rutaDatos {; carpetaArchivo {; opcion {; metodo}}} ) -> Resultado | ||||||||
Parámetro | Tipo | Descripción | ||||||
rutaEstructura | Texto |
![]() |
Ruta de acceso al archivo de estructura | |||||
rutaDatos | Texto |
![]() |
Ruta de acceso al archivo de datos | |||||
carpetaArchivo | Texto |
![]() |
Ruta de acceso a la carpeta donde se colocará el archivo de datos original | |||||
opcion | Entero largo |
![]() |
Opciones de compactación | |||||
metodo | Texto |
![]() |
Nombre del método 4D de retrollamada | |||||
Resultado | Texto |
![]() |
Ruta de acceso completa de la carpeta que contiene el archivo de datos original | |||||
El comando Compact data file compacta el archivo de datos designado por el parámetro rutaDatos asociado al archivo de estructura rutaEstructura. Para mayor información sobre la compactación, consulte el Manual de Diseño.
Para asegurar la continuidad del funcionamiento de la base, el nuevo archivo de datos compactado reemplaza automáticamente al archivo original. Por seguridad, el archivo original no se modifica y se mueve a una carpeta especial llamada “Replaced files (compacting) YYYYMM-DD HH-MM-SS” donde YYYY-MM-DD HH-MM-SS representa la fecha y hora del backup. Por ejemplo: “Replaced files (compacting) 2007-09-27 15-20-35”.
El comando devuelve la ruta de acceso completa de la carpeta efectivamente creada para almacenar el archivo de datos original. Este comando sólo puede ser ejecutado desde 4D (modo local) o 4D Server (procedimiento almacenado). El archivo de datos a compactar debe corresponder al archivo de estructura designado por rutaEstructura. Además, el archivo de datos no debe abrirse durante la ejecución del comando; de lo contrario se genera un error.
Si se produce un error durante el proceso de compactación, los archivos originales se conservan en su ubicación inicial. Si un archivo de índice (.4DIndx file) está asociado con el archivo de datos, también se compacta. Como para el archivo de datos, el archivo original se guarda y la nueva versión reemplaza la anterior.
Constante | Tipo | Valor | Comentario |
Compact address table | Entero largo | 131072 | Fuerza la reescritura de la tabla de direcciones de los registros (ralentiza la compactación). Note que en este caso, los números de registro se reescriben. Si sólo pasa esta opción, 4D activa automáticamente la opción "Actualizar registros". |
Create process | Entero largo | 32768 | Cuando se pasa esta opción, la compactación será asincrónica y deberá administrar los resultados utilizando el método de retrollamada (ver a continuación). 4D no mostrará la barra de progreso (es posible hacerlo vía el método de retrollamada). La variable sistema OK toma el valor 1 si el proceso se ha lanzado correctamente y 0 en todos los otros casos. Cuando no se pasa esta opción, la variable OK toma el valor 1 si la compactación se realiza correctamente, de lo contrario 0. |
Do not create log file | Entero largo | 16384 | Por lo general, este comando crea un archivo de historial en formato XML (consulte el final de la descripción del comando). Con esta opción, no se creará un archivo de historial. |
Update records | Entero largo | 65536 | Fuerza la rescritura de todos los registros en función de la definición actual de los campos en la estructura |
Por defecto, el comando Compact data file crea un archivo de historial en formato XML (si no ha pasado la opción Do not create log file, ver el parámetro opciones). Su nombre está basado en el archivo de datos y está ubicado junto a este archivo. Por ejemplo, para un archivo de datos llamado “data.4dd,” el archivo de registro será llamado “data_compact_log.xml.”
El siguiente ejemplo (Windows) efectúa la compactación de un archivo de datos:
$archivoEstructura:=Structure file
$archivoDatos:="C:\Bases\Facturas\Enero\Facturas.4dd"
$archivoOrig:="C:\Bases\Facturas\Archivos\Enero\"
$carpetaArch:=Compact data file($archivoEstructura;$archivoDatos;$archivoOrig)
Si la operación de compactación se lleva a cabo correctamente, la variable sistema OK toma el valor 1; de lo contrario, toma el valor 0.
Producto: 4D
Tema: Entorno 4D
Número
937
Lista alfabética de los comandos
Creado por: 4D v11 SQL
Modificado: 4D v13
Get table fragmentation
VERIFY DATA FILE