Tenemos 700 documentos ODT, separados, que son formularios del inventario de Bautismos. Queremos pasarlos a una tabla Calc o Excel para luego pasarlos a una tabla SQL. ¿Cómo puedo hacelo?
Sistema operativo Linux Mint 21.2 LibreOffice 7.3.7.2
Por favor, edita tu pregunta y agega sistema operativo y versión de LibreOffice. Gracias.
Tenemos 700 documentos ODT, separados, que son formularios del inventario de Bautismos. Queremos pasarlos a una tabla Calc o Excel para luego pasarlos a una tabla SQL. ¿Cómo puedo hacelo?
Sistema operativo Linux Mint 21.2 LibreOffice 7.3.7.2
En Linux, estando todas las aplicaciones de LibreOffice cerradas, si ejecutas en una terminal:
soffice -h
Entre toda la información que muestra, existe la siguiente:
--convert-to OutputFileExtension[:OutputFilterName] \
[--outdir output_dir] [--convert-images-to]
Batch convert files (implies --headless). If --outdir
isn't specified, then current working directory is used
as output_dir. If --convert-images-to is given, its
parameter is taken as the target filter format for *all*
images written to the output format. If --convert-to is
used more than once, the last value of
OutputFileExtension[:OutputFilterName] is effective. If
--outdir is used more than once, only its last value is
effective.
Por lo tanto, todos los documentos .ods de un directorio, podrían convertirse a .odt con el comando en terminal:
soffice --convert-to ods *.odt
También puedes utilizar en terminal el comando
unoconv
Que utiliza los archivos de LibreOffice.
Muchas gracias por tu contestación.
He probado y me sale:
faraig@faraig-H81M-D2V:~/Descargas/Batejos$ soffice --convert-to ods *.odt
Error: no export filter for /home/faraig/Descargas/Batejos/001r_sn1_0002B 1906-1916.ods found, aborting.
Error: no export filter
Y con la otra solución me sale:
faraig@faraig-H81M-D2V:~/Descargas/Batejos$ unoconv ods 297r_044.odt
/usr/bin/unoconv:19: DeprecationWarning: The distutils package is deprecated and slated for removal in Python 3.12. Use setuptools or check PEP 632 for potential alternatives
from distutils.version import LooseVersion
unoconv: RuntimeException during import phase:
Office probably died. Unsupported URL : “type detection failed” ./framework/source/loadenv/loadenv.cxx:189
Es posible que los documentos a convertir, tengan datos, que no le permitan a LibreOffice inferir la estructura que deben tener las hojas de cálculo.
Queda hacerlo manualmente uno a uno, abriendo el archivo odt, copiando y pegando el contenido en un archivo ods que respete la estructura de los datos.
Otra opción es hacerlo el línea, el alguno de los sitios web disponibles.
Lo veo difícil, la persona que lo hizo nos pasó 700 documentos en lugar de pasarnos el documento dbase. el formulario de salida tiene forma irregular. Yo he “desagrupado” cada item para ver el nombre de los campos. He creado una tabla y pensaba que se podrían pasar de Ods o xls o similar … Si quieres te mando uno de los archivos para que lo veas.
Si el archivo NO tiene datos privados, subelo aquí. Si no, mandalo en privado y lo vemos.
¿Como lo puedo subir? No veo el icono de adjuntar fichero.
Picas en el clip.