Exemple #1
0
 def __init__(self, tipo, datos):
     super(EditarDocumentoModal, self).__init__()
     self.setWindowFlags(QtCore.Qt.WindowSystemMenuHint | QtCore.Qt.WindowTitleHint)
     self.ui=Ui_Dialog_editarDocumento()
     self.ui.setupUi(self)
     # Tipo de documento
     self.tipo = tipo
     titulo = ""
     if(tipo==0):
         titulo = "Editar Documento Compra"
         self.ui.cuentaProveedoresClienteLabel.setText("Cuenta Proveedor")
     elif(tipo==1):
         titulo =  "Editar Documento Venta"
         self.ui.cuentaProveedoresClienteLabel.setText("Cuenta Cliente")
     self.setWindowTitle(titulo)
     #Fecha actual
     self.f = fac = DBController.getFactura(datos, tipo)
     rx = QtCore.QRegExp("[0-9]*")
     qr = QtGui.QRegExpValidator(rx)
     
     self.ui.nDocumentoLineEdit.setValidator( qr )
     self.ui.sucursalLineEdit.setValidator( qr)
     self.ui.correlativoLineEdit.setValidator( qr )
     self.ui.cuentaProveedoresClienteLineEdit.setValidator( qr )
     self.ui.contracuentaLineEdit.setValidator( qr )
     
     self.datos = datos
     self.llenarDatos()
     self.resultado = False
     self.exec_()
Exemple #2
0
 def clicked(self, position):
     if(self.sender().rowCount()==0): # Ninguna fila en la tabla
         return
     tabla = self.sender()
     menu = QtGui.QMenu()
     editarAction = menu.addAction("Editar")
     eliminarAction = menu.addAction("Eliminar")
     contabilizar = 0
     for idx in reversed(tabla.selectionModel().selectedRows()):
         if(tabla.item(idx.row(),0).text()=="No"):
             contabilizar = 1
             break
     contabilizarAction = None
     if(contabilizar):
         contabilizarAction = menu.addAction("Contabilizar")
     else:
         contabilizarAction = menu.addAction("Descontabilizar")
     action = menu.exec_(tabla.viewport().mapToGlobal(position))
     row = tabla.rowAt(position.y())
     allRows = tabla.columnCount()
     
     if action == contabilizarAction:
         lista = []
         for idx in reversed(tabla.selectionModel().selectedRows()):
             datos = {}
             for i in range(tabla.horizontalHeader().count()):
                 datos[ unicode(tabla.horizontalHeaderItem(i).text())] =  unicode(tabla.item(idx.row(),i).text())
             lista.append(datos)
         if(self.sender().objectName()=="tableWidget_Ventas"):
             DBController.contabilizar(self, 1,contabilizar, lista)
         else:
             DBController.contabilizar(self, 0,contabilizar, lista)
     elif action == editarAction:
         datos = {}
         
         for i in range(tabla.horizontalHeader().count()):
             datos[ unicode(tabla.horizontalHeaderItem(i).text())] =  unicode(tabla.item(row,i).text())
         tipo = 0
         if(self.sender().objectName()=="tableWidget_Ventas"):
             tipo = 1
         fac = DBController.getFactura(datos, tipo)
         datos["Cuenta"] = fac.cuentaProveedores
         datos["Correlativo"] = unicode(fac.correlativo)
         my_dialog = EditarDocumentoModal(tipo, datos ) 
         if(my_dialog.resultado):
             self.updateTablas()
     elif action == eliminarAction:
         # TODO: lanzar evento al oprimir suprimir,
         qm = QtGui.QMessageBox(self)
         qm.setWindowTitle('Eliminar documento')
         if( len(tabla.selectionModel().selectedRows()) == 1):
             qm.setText("Esta seguro de que desea eliminar el documento ?")
         else:
             qm.setText("Esta seguro de que desea eliminar los %d documentos ?"%len(tabla.selectionModel().selectedRows()))
         qm.addButton(QtGui.QMessageBox.Yes).setText("Si")
         qm.addButton(QtGui.QMessageBox.No).setText("No")
         qm.setIcon(QtGui.QMessageBox.Question)
         reply = qm.exec_()
         
         if reply == QtGui.QMessageBox.Yes:
             for idx in reversed(tabla.selectionModel().selectedRows()):
                 DBController.eliminarFactura(tabla.item(idx.row(),16).text())
                 tabla.removeRow(idx.row())