-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Description
This is the class entrega, supposedly if the product was withdrawn it should make the Qdialog accept
class Entrega(QDialog):
def __init__(self, source_table_widget):
QDialog.__init__(self)
self.ui = Ui_Dialog()
self.ui.setupUi(self)
def commit(self):
con = psycopg2.connect(host="aaaa",database="aaaa",user="aaaa",password="aaaa",port="aaaa")
cursor = con.cursor()
for self.description in self.descriptions:
root = ET.Element('Produtos')
Guia = ET.SubElement(root, 'Guia')
Descricao = ET.SubElement(Guia, 'Descricao')
Quantidade_Pedida = ET.SubElement(Guia, 'QuantidadePedida')
Quantidade_Disponivel = ET.SubElement(Guia, 'QuantidadeDisponivel')
Quantidade_para_envio = ET.SubElement(Guia, 'QuantidadeparaEnvio')
Descricao.text= self.description
Quantidade_Pedida.text= self.quantidade.text()
Quantidade_Disponivel.text= self.quantidade2.text()
Quantidade_para_envio.text = self.quantidade3.text()
xml_content = ET.tostring(root, encoding='utf-8', method='xml').decode('utf-8')
xml_with_declaration = f'<?xml version="1.0" encoding="utf-8"?>\n{xml_content}'
sql ="""INSERT INTO "Guia"("Data","IdProjeto","Conteudo","NomeCli","enderecoCli","ContactoCli") VALUES (%s,%s,%s,%s,%s,%s)"""
dados=(self.data, self.idproj,xml_with_declaration, self.nomeCli, self.endereco,self.contacto)
cursor.execute(sql,dados)
con.commit()
numofrows = cursor.rowcount
if numofrows <= 0:
QMessageBox.critical(self,"Erro","Ocorreu um erro")
self.reject()
else:
QMessageBox.information(self,"Sucesso",f"Produtos retirados com sucesso")
self.ui.lineEdit_2.clear()
self.ui.lineEdit_3.clear()
self.ui.lineEdit_4.clear()
self.ui.comboBoxProjeto.setCurrentIndex(self.default_item_index)
self.tableLinhaNova.setRowCount(0)
self.accept()
cursor.close()
And this is the other class
class Menu(QMainWindow):
logginuser= None
def __init__(self):
QMainWindow.__init__(self)
self.ui = Ui_MainWindow()
self.ui.setupUi(self)
def switch_windows(self):
self.entrega2 = Entrega(self.tableLinhaNova)
self.entrega2.closeEvent = self.CloseEvent
self.entrega2.show()
def CloseEvent(self, event):
if self.entrega2.accept():
print("accepted")
if self.entrega2.reject():
print("rejected")
But it doesn´t work, because the class Menu should see if the QDialog was accpet or reject, i probably did something wrong, but i don´t know how to correct it can anyone help please!!!
Metadata
Metadata
Assignees
Labels
No labels