fix data retrieval in attribute table from geometryless spatialite tables

This commit is contained in:
Juergen E. Fischer 2013-09-30 13:33:31 +02:00
parent 52ac0845d4
commit 814ae4c781
2 changed files with 5 additions and 0 deletions

View File

@ -646,4 +646,6 @@ void QgsAttributeTableModel::prefetchColumnData( int column )
void QgsAttributeTableModel::setRequest( const QgsFeatureRequest& request )
{
mFeatureRequest = request;
if( layer() && !layer()->hasGeometryType() )
mFeatureRequest.setFlags( mFeatureRequest.flags() | QgsFeatureRequest::NoGeometry );
}

View File

@ -145,7 +145,10 @@ bool QgsSpatiaLiteFeatureIterator::close()
bool QgsSpatiaLiteFeatureIterator::prepareStatement( QString whereClause )
{
if ( !( mRequest.flags() & QgsFeatureRequest::NoGeometry ) && P->mGeometryColumn.isNull() )
{
QgsMessageLog::logMessage( QObject::tr( "Trying to fetch geometry on a layer without geometry." ), QObject::tr( "SpatiaLite" ) );
return false;
}
try
{