示例#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_()
示例#2
0
class EditarDocumentoModal(QtGui.QDialog):
    
    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_()
    def accept(self):
        self.datos["Numero Documento"] = unicode(self.ui.nDocumentoLineEdit.text())
        self.datos["RS Emisor"] = unicode(self.ui.emisorLineEdit.text())
        self.datos["RS Receptor"] = unicode(self.ui.receptorLineEdit.text())
        self.datos["Fecha"] = unicode(self.ui.fechaDateEdit.text())
        self.datos["Sucursal"] =unicode( self.ui.sucursalLineEdit.text())
        self.datos["Glosa"] = unicode(self.ui.glosaLineEdit.text())
        self.datos["Monto Exento"] = unicode(self.ui.montoExcentoSpinBox.value())
        self.datos["Cuenta"] = unicode(self.ui.cuentaProveedoresClienteLineEdit.text())
        self.datos["Contracuenta"] = unicode(self.ui.contracuentaLineEdit.text())
        self.datos["Correlativo"] = unicode(self.ui.correlativoLineEdit.text())
        if(self.ui.activoFijoCheckBox.checkState () == QtCore.Qt.Checked):
            self.datos["Activo Fijo"] = 1
        else:
            self.datos["Activo Fijo"] = 0
        # Si uno de los datos esta vacio
        # TODO: Cambiar color al encontrar error
        fallas = []
        for key, value in self.datos.items():
            if(not ("%s"%value)):
                fallas.append(key)
        error = ""
        for i in fallas:
            error = error+"%s\n"%i
        if(len(fallas)!=0):
            QtGui.QMessageBox.about(self, "Datos incompletos", "Faltan datos a ingresar en los siguientes campos:\n%s"%error)
        else:
            # Guardando
            DBController.modificarFactura(self.f, self.datos, self.tipo)
            self.resultado = True
            self.close()
    def llenarDatos(self):
        self.ui.montoExcentoSpinBox.setMaximum(2**53)
        self.ui.correlativoLineEdit.setText(self.datos["Correlativo"])
        self.ui.cuentaProveedoresClienteLineEdit.setText(self.datos["Cuenta"])
        self.ui.nDocumentoLineEdit.setText(self.datos["Numero Documento"])
        self.ui.emisorLineEdit.setText(self.datos["RS Emisor"])
        self.ui.receptorLineEdit.setText(self.datos["RS Receptor"])
        self.ui.fechaDateEdit.setDisabled(False)
        if(self.datos["Fecha"] == None):
            self.ui.fechaDateEdit.setDateTime(QtCore.QDateTime.currentDateTime())
            self.ui.fechaDateEdit.setDisabled(False)
        else:
            self.ui.fechaDateEdit.setDate(QtCore.QDate.fromString(self.datos["Fecha"], "yyyy-MM-dd"))
        self.ui.sucursalLineEdit.setText(self.datos["Sucursal"])
        self.ui.glosaLineEdit.setText(self.datos["Glosa"])
        self.ui.montoExcentoSpinBox.setValue(float(self.datos["Monto Exento"]))
        self.ui.contracuentaLineEdit.setText(self.datos["Contracuenta"])
        
        self.ui.activoFijoCheckBox.setCheckState(QtCore.Qt.Unchecked)
        if(self.datos["Activo Fijo"] == "Si"):
            self.ui.activoFijoCheckBox.setCheckState(QtCore.Qt.Checked)
        
        self.ui.montoTotalLabel.setText("$ %s"%self.datos["Monto Total"])
        self.ui.montoExcentoSpinBox.setMaximum(int(self.datos["Monto Total"]))