def __guardar(self): guardar = True p = Persistence() if self.__campo is None: campo = CampoPersonalizado(self.txtNombre.text()) campo.setLongitudMax(self.sbLongMax.value()) campo.setLongitudMin(self.sbLongMin.value()) campo.setObligatorio(self.cbObligatorio.isChecked()) self.__campo = campo else: self.__campo.setNombre(self.txtNombre.text()) self.__campo.setLongitudMax(self.sbLongMax.value()) self.__campo.setLongitudMin(self.sbLongMin.value()) self.__campo.setObligatorio(self.cbObligatorio.isChecked()) guardar = False try: if guardar: if self.__tipo is self.__class__.PERSONA: p.guardarAtributoPersona(campo) elif self.__tipo is self.__class__.JUZGADO: p.guardarAtributoJuzgado(campo) elif self.__tipo is self.__class__.ACTUACION: p.guardarAtributoActuacion(campo) elif self.__tipo is self.__class__.PROCESO: p.guardarAtributo(campo) else: if self.__tipo is self.__class__.PERSONA: p.actualizarAtributoPersona(self.__campo) elif self.__tipo is self.__class__.JUZGADO: p.actualizarAtributoJuzgado(self.__campo) elif self.__tipo is self.__class__.ACTUACION: p.actualizarAtributoActuacion(self.__campo) elif self.__tipo is self.__class__.PROCESO: p.actualizarAtributo(self.__campo) except sqlite3.IntegrityError: if guardar: self.__campo = None QtGui.QMessageBox.information(self, 'Error', 'El elemento ya existe') else: return QtGui.QDialog.accept(self)