-
-
Notifications
You must be signed in to change notification settings - Fork 3.3k
Description
What is the bug or the crash?
Dragging & dropping a .XLSX spreadsheet onto a QGIS window correctly recognizes the first record as field names. However, dropping a .ODS file of the same data treats the first record as data and the field names are the default "Field1, Field2,..."
Apparently the code to import a dropped .XLSX assumes the 1st row is field names while the code to import a dropped .ODS does not.
It would be good to have consistent handling, and even better to be able to select whether the first record is field names or not (as is done in Layer > Data Source Manager > Delimited Text
Steps to reproduce the issue
Create a spreadsheet, save it in
- .XLSX format
- .ODT
the spreadsheet should contain field names in the first row, followed by one or more data rows
Open a project in QGIS,
Drag and drop each test spreadsheet into the window
Compare the new layers' Attribute tables
The table from the .XLSX will use the field names from Row 1 of the spreadsheet, the first feature in the table will come from Row 2 of the spreadsheet
The table from the .ODT will use "Field1, Field2,..." as field names and the first feature in the table will come from Row 1 of the spreadsheet
Versions
TESTED BOTH ON
QGIS 3.34.15 under OSX 10.13.6 (High Sierra) on Mac mini (late 2012)
QGIS 3.44.5 under OSX 15.7.2 (Sequoia) on Mac mini (2018)
3.34.15 QGIS environment:
<style type="text/css"> p, li { white-space: pre-wrap; } </style>| QGIS version | 3.34.15-Prizren | QGIS code revision | 386f258 |
|---|---|---|---|
| Qt version | 5.15.2 | ||
| Python version | 3.9.5 | ||
| GDAL/OGR version | 3.3.2 | ||
| PROJ version | 8.1.1 | ||
| EPSG Registry database version | v10.028 (2021-07-07) | ||
| GEOS version | 3.9.1-CAPI-1.14.2 | ||
| SQLite version | 3.35.2 | ||
| PDAL version | 2.3.0 | ||
| PostgreSQL client version | unknown | ||
| SpatiaLite version | 5.0.1 | ||
| QWT version | 6.1.6 | ||
| QScintilla2 version | 2.11.5 | ||
| OS version | macOS High Sierra (10.13) | ||
| Active Python plugins | |||
| qarcconnect3 | 0.9 | ||
| FreehandRasterGeoreferencer | 0.8.3 | ||
| DigitizingTools | 1.5.3 | ||
| ee_plugin | 0.1.4 | ||
| BezierEditing | version 1.3.10 | ||
| processing_saga_nextgen | 1.0.0 | ||
| mask | 1.11.0 | ||
| MemoryLayerSaver | 5.0.2 | ||
| qgis_resource_sharing | 1.2.0 | ||
| valuetool | 3.1.0 | ||
| shapetools | 3.5.1 | ||
| processing | 2.12.99 | ||
| otbprovider | 2.12.99 | ||
| grassprovider | 2.12.99 | ||
| db_manager | 0.1.20 | ||
| MetaSearch | 0.3.6 |
Active Python plugins
qarcconnect3
0.9
FreehandRasterGeoreferencer
0.8.3
DigitizingTools
1.5.3
ee_plugin
0.1.4
BezierEditing
version 1.3.10
processing_saga_nextgen
1.0.0
mask
1.11.0
MemoryLayerSaver
5.0.2
qgis_resource_sharing
1.2.0
valuetool
3.1.0
shapetools
3.5.1
processing
2.12.99
otbprovider
2.12.99
grassprovider
2.12.99
db_manager
0.1.20
MetaSearch
0.3.6
=============================================
3.44.7 QGIS environment:
| QGIS version | 3.44.6-Solothurn |
|---|---|
| QGIS code revision | 386cd76 |
| Libraries | |
| Qt version | 5.15.18 |
| Python version | 3.12.11 |
| GDAL version | 3.12.0 — Chicoutimi |
| PROJ version | 9.7.0 |
| EPSG Registry database version | v12.022 (2025-08-30) |
| GEOS version | 3.14.1-CAPI-1.20.5 |
| SQLite version | 3.50.4 |
| PDAL version | 2.9.2 |
| PostgreSQL client version | 16.9 |
| SpatiaLite version | 5.1.0 |
| QWT version | 6.2.1 |
| QScintilla2 version | 2.13.4 |
| OS version | macOS 15.7 |
| Active Python plugins | |
| FreehandRasterGeoreferencer | 0.8.3 |
| DigitizingTools | 1.5.3 |
| wbt_for_qgis | 1.0.9 |
| stationlines | 0.2.1 |
| BezierEditing | version 1.3.10 |
| processing_saga_nextgen | 1.1.0 |
| mask | 1.11.0 |
| valuetool | 3.1.0 |
| shapetools | 3.5.1 |
| coordinate_capture | 0.2 |
| processing | 2.12.99 |
| grassprovider | 2.12.99 |
| db_manager | 0.1.20 |
| MetaSearch | 0.3.6 |
Libraries
Qt version
5.15.18
Python version
3.12.11
GDAL version
3.12.0 ? Chicoutimi
PROJ version
9.7.0
EPSG Registry database version
v12.022 (2025-08-30)
GEOS version
3.14.1-CAPI-1.20.5
SQLite version
3.50.4
PDAL version
2.9.2
PostgreSQL client version
16.9
SpatiaLite version
5.1.0
QWT version
6.2.1
QScintilla2 version
2.13.4
OS version
macOS 15.7
Active Python plugins
FreehandRasterGeoreferencer
0.8.3
DigitizingTools
1.5.3
wbt_for_qgis
1.0.9
stationlines
0.2.1
BezierEditing
version 1.3.10
processing_saga_nextgen
1.1.0
mask
1.11.0
valuetool
3.1.0
shapetools
3.5.1
coordinate_capture
0.2
processing
2.12.99
grassprovider
2.12.99
db_manager
0.1.20
MetaSearch
0.3.6
Supported QGIS version
- I'm running a supported QGIS version according to the roadmap.
New profile
- I tried with a new QGIS profile
Additional context
The QGIS 3.44.6 inherently had a new profile, so I've checked the above box..
It would be good to have consistent handling, and even better to be able to select whether the first record is field names or not (as is done in Layer > Data Source Manager > Delimited Text