File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -1298,6 +1298,12 @@ void QgsPostgresConn::retrieveLayerTypes( QgsPostgresLayerProperty &layerPropert
12981298 query += QString::number ( srid );
12991299 }
13001300
1301+ query += " ," ;
1302+ query += QString ( " %1(%2%3)" )
1303+ .arg ( majorVersion () < 2 ? " ndims" : " st_ndims" )
1304+ .arg ( quotedIdentifier ( layerProperty.geometryColName ) )
1305+ .arg ( layerProperty.geometryColType == sctGeography ? " ::geometry" : " " );
1306+
13011307 query += " FROM " + table;
13021308
13031309 // QgsDebugMsg( "Retrieving geometry types: " + query );
@@ -1310,6 +1316,10 @@ void QgsPostgresConn::retrieveLayerTypes( QgsPostgresLayerProperty &layerPropert
13101316 {
13111317 QString type = gresult.PQgetvalue ( i, 0 );
13121318 QString srid = gresult.PQgetvalue ( i, 1 );
1319+ QString ndims = gresult.PQgetvalue ( i, 2 );
1320+
1321+ if ( ndims.toInt () > 2 ) layerProperty.force2d = true ;
1322+
13131323 if ( type.isEmpty () )
13141324 continue ;
13151325
You can’t perform that action at this time.
0 commit comments