def Search(self):
matric_num = self.report_matric.text()
search_date = self.report_date.date().toString("yyyy-MM-dd")
if matric_num == "" and search_date == "":
QMessageBox.about(self, "Invalid Parameters", "Please Provide a search Query to continue")
else:
self.tableWidget.setRowCount(0)
if matric_num != "":
sql = "Select * from attendance where matric_num = %s"
cursor = connection.cursor()
cursor.execute(sql, matric_num)
result = cursor.fetchall()
else:
sql = "Select * from attendance where dte = %s"
cursor = connection.cursor()
cursor.execute(sql, search_date)
result = cursor.fetchall()
if len(result) > 0:
self.tableWidget.setRowCount(len(result))
self.tableWidget.setColumnCount(3)
header_labels = ['Matric Number', 'Date', 'Status']
self.tableWidget.setHorizontalHeaderLabels(header_labels)
for count in range(0, len(result)):
self.tableWidget.setItem(count, 0, QTableWidgetItem(
str(result[count]["matric_num"].encode('ascii', 'ignore'))))
self.tableWidget.setItem(count, 1,
QTableWidgetItem(result[count]["dte"].encode('ascii', 'ignore')))
self.tableWidget.setItem(count, 2,
QTableWidgetItem(result[count]["status"].encode('ascii', 'ignore')))
else:
QMessageBox.about(self, "No Data", "No Data has been recorded")
评论列表
文章目录