QGIS Capas de hojas de cálculo¶
Herramienta de QGIS para cargar capas desde hojas de cálculo (*.ods, *.xls, *.xlsx)
Descripción¶
Esta herramienta añade la entrada «Añadir capa de hoja de cálculo» en el menú Capa / Añadir nueva capa y un botón correspondiente en la barra de menú Capas. Estos dos enlaces abren el mismo dialogo para cargar una capa desde el archivo de la hoja de cálculo con algunas opciones:
Seleccionar archivo
Nombre de la capa
Selección de la hoja
Cabecera como primera línea
Ignorar algunas filas
Cargar geometría desde los campos X e Y.
Cuando el diálogo es aceptado, se crea un nuevo archivo virtual GDAL en la misma carpeta que el archivo de datos origen y el nombre de la capa, con el sufijo «.vrt», que se carga en QGIS.
Cuando se reutiliza el mismo archivo dos veces, el cuadro de diálogo carga sus valores desde el archivo «´.vrt» existente.
Limitaciones¶
Debido a que GDAL/OGR carece de funcionalidades:
Utilización de la línea de encabezamiento por fichero;
Ignorar líneas al inicio del archivo ;
Detección correcta final de los archivos .XLS
La herramienta utiliza la sentencia Select de SQLite con los parámetros offset y limit para extraer datos correspondientes desde el archivo base. Cuando una de estas funcionalidades se encuentra en uso, podría tener algunos efectos secundarios.
Con GDAL <= 1.11.1, la herramienta no puede cargar geometría. Con el cajetín de herramientas Geometría está bloqueado. Para obtener la versión actual de GDAL que se está utilizando, corre estos comandos en la consola de Python en QGIS.
import osgeo.gdal
print(osgeo.gdal.__version__)
Cuando abres un archivo de hoja de cálculo, GDAL/OGR intentará detectar los tipos de datos de las columnas (Fecha, Entero, Real, Texto…). Esta detección ocurre fuera de la cabecera de la herramienta e ignora las funcionalidades de línea, entonces cuando lo usas, GDAL/OGR puede estar apto para estar disponible para detectar correctamente los tipos de datos.
Configuración¶
GDAL no permite definir la presencia de cabeceras de línea por capa, esta selección se realiza a través de un entorno para cada driver OGR_ODS_HEADERS, OGR_XLS_HEADERS y OGR_XLSX_HEADERS, con tres posibles valores: FORCE, DISABLE y AUTO. Para más detalles consulte los drivers de la documentación: http://www.gdal.org/drv_ods.html, http://www.gdal.org/drv_xls.html and http://www.gdal.org/drv_xlsx.html.
Puedes cambiar estos valores en la configuración de QGIS
Abre el cuadro de diálogo «Configuraciones» / «Opciones»:
Seleccionar «Sistema», espacio e ir a la sección Entorno
Marcar «Usar variables personalizadas»
Añade una nueva línea. Ejemplo:
Sobreescribir | OGR_ODS_HEADERS | FORCE
Reiniciar QGIS para tomar esto en consideración
Instalación de Desarrollo (Linux)¶
git clone git@github.com:camptocamp/QGIS-SpreadSheetLayers.git SpreadsheetLayers
cd SpreadsheetLayers
ln -s ${PWD}/SpreadsheetLayers ~/.local/share/QGIS/QGIS3/profiles/default/python/plugins
make
Corre QGIS y activa la herramienta SpreadsheetLayers
Publicar una nueva versión¶
Primero actualiza l10n archivos:
make tx-pull
A continuación crea una confirmación. si fuera relevante
git add -p .
git commit -m 'Update l10n'
Ahora actualiza: código: “El archivo SpreadsheetLayers/metadata.txt” con el número de la versión
Para un lanzamiento experimental
version=X.Y.Z-alpha+build
experimental=False
O para un lanzamiento final
version=X.Y.Z
experimental=True
Y crea un nuevo registro, etiquétalo y publícalo en Github
git add -p .
git commit -m 'Release version ...'
git push origin master
A continuación crea un paquete, pruébalo con tu QGIS local
make package deploy
qgis
Luego si se ve bien, puedes crear una etiqueta:
git tag X.Y.Z
git push origin X.Y.Z
Luego, accede al repositorio de herramientas de QGIS: https://plugins.qgis.org/accounts/login/
Y carga el archivo: dist/SpreadsheetLayers.zip
aquí: