Esempio n. 1
0
 def insert_row(self):
     record = QtSql.QSqlRecord()
     record.append(QtSql.QSqlField('id', QtCore.QVariant.Int))
     record.append(QtSql.QSqlField('rfid_id', QtCore.QVariant.String))
     record.append(QtSql.QSqlField('description', QtCore.QVariant.String))
     record.setValue('id', 0)
     if self.onEvents:
         record.append(QtSql.QSqlField('date', QtCore.QVariant.DateTime))
         record.setValue('date', QDateTime.currentDateTime())
         record.setValue('rfid_id', self.label_2.text())
     else:
         if self.rfidIDField.text().strip(" ") == "":
             QMessageBox.warning(
                 self, 'Error!',
                 "Need to fill ID of marker field to insert new marker.")
             return
         query = QSqlQuery(self.db)
         query.prepare("SELECT * FROM markers WHERE rfid_id = :rfid_id")
         query.bindValue(":rfid_id", self.rfidIDField.text().strip(" "))
         query.exec()
         found = query.next()
         if found:
             QMessageBox.warning(self, 'Error!',
                                 "Marker with such id already exists.")
             return
         record.setValue('rfid_id', self.rfidIDField.text().strip(" "))
     self.tableModel.insertRecord(-1, record)
     self.tableModel.select()
Esempio n. 2
0
    def record(self, rowIndex):
        rec = super().record(rowIndex)

        self.calculateExtraColumns(rowIndex)
        for col in self.headerList:
            newField = QtSql.QSqlField(col)
            newField.setValue(self.cache[col])
            rec.append(newField)

        return rec