Hello
I have a QTableview created in Designer with the additional Python code:
	
	- self.tvObserverEffort.setModel(self.observerEffortModel) 
- self. tvObserverEffort- . setSelectionMode(QTableView- . SingleSelection)
- self. tvObserverEffort- . setSelectionBehavior(QTableView- . SelectRows)
- self.tvObserverEffort.hideColumn(0) # ObserverEffortId 
- self.tvObserverEffort.hideColumn(1) # Survey 
- self.tvObserverEffort.hideColumn(5) # Observer 
- self.tvObserverEffort.hideColumn(10) # Date 
- self. tvObserverEffort- . horizontalHeader()- . setProperty("mandatory"- ,  QVariant(True))
- self. tvObserverEffort- . setProperty("mandatory"- ,  QVariant(True))
- self.tvObserverEffort.horizontalHeader().moveSection(11,0) 
- self.tvObserverEffort.horizontalHeader().moveSection(12,1) 
- self.tvObserverEffort.resizeColumnsToContents() 
- self.tvObserverEffort.setWordWrap(True) 
- self.tvObserverEffort.resizeRowsToContents() 
        self.tvObserverEffort.setModel(self.observerEffortModel)
self.tvObserverEffort.setSelectionMode(QTableView.SingleSelection)
self.tvObserverEffort.setSelectionBehavior(QTableView.SelectRows)
self.tvObserverEffort.hideColumn(0) # ObserverEffortId
self.tvObserverEffort.hideColumn(1) # Survey
self.tvObserverEffort.hideColumn(5) # Observer
self.tvObserverEffort.hideColumn(10) # Date
self.tvObserverEffort.setItemDelegate(QSqlRelationalDelegate(self.tvObserverEffort))
self.tvObserverEffort.horizontalHeader().setProperty("mandatory", QVariant(True))
self.tvObserverEffort.setProperty("mandatory", QVariant(True))
self.tvObserverEffort.horizontalHeader().moveSection(11,0)
self.tvObserverEffort.horizontalHeader().moveSection(12,1)
self.tvObserverEffort.resizeColumnsToContents()
self.tvObserverEffort.setWordWrap(True)
self.tvObserverEffort.resizeRowsToContents()
To copy to clipboard, switch view to plain text mode 
  I filter the model as follows:
	
	- surveyId = self.effortDayModel.record(index.row()).value("SurveyId").toInt()[0] 
- observerId = self.effortDayModel.record(index.row()).value("ContactId").toInt()[0] 
- effortDate = self.effortDayModel.record(index.row()).value("WatchDate").toDate() 
- filter = "ObserverEffort.SurveyId = %s AND ObserverEffort.ContactId = %s AND ObserverEffort.WatchDate = '%s'" % (surveyId, observerId, effortDate.toString("yyyy-MM-dd")) 
- self.observerEffortModel.setFilter(filter) 
- self.observerEffortModel.select() 
- self.tvObserverEffort.show() 
        surveyId = self.effortDayModel.record(index.row()).value("SurveyId").toInt()[0]
observerId = self.effortDayModel.record(index.row()).value("ContactId").toInt()[0]
effortDate = self.effortDayModel.record(index.row()).value("WatchDate").toDate()
filter = "ObserverEffort.SurveyId = %s AND ObserverEffort.ContactId = %s AND ObserverEffort.WatchDate = '%s'" % (surveyId, observerId, effortDate.toString("yyyy-MM-dd"))
self.observerEffortModel.setFilter(filter)
self.observerEffortModel.select()
self.tvObserverEffort.show()
To copy to clipboard, switch view to plain text mode 
  The problem that I am having is that although the TableView is showing the correct number of rows when the filter is applied, the table rows only display data when a cell in the row is selected. What am I missing ??
Thanks for any help you may have
				
			
Bookmarks