+ $idPermiso = $this->_db->nextId('permiso');
+ $datos = array (
+ 'id_permiso' => $idPermiso,
+ 'desc_permiso' => $this->getDescripcion(),
+ 'responsable' => $this->getResponsable(),
+ );
+ return $this->_db->autoExecute('permiso', $datos, DB_AUTOQUERY_INSERT);
+ }
+ // -X2C
+
+ // +X2C Operation 318
+ /**
+ * Borra de la base el permiso
+ *
+ * @return mixed
+ * @access protected
+ */
+ function _borrarDb()// ~X2C
+ {
+ $sql = include 'Permiso/consultas.php';
+ $datos[] = $this->getId();
+ //Verifico que el permiso no tenga asociaciones
+ $tmp = $sql['verificar_asociaciones1'].$sql['obtener_datos_permiso2'];
+ $dbh = $this->_db->prepare($tmp);
+ $res = $this->_db->execute($dbh, $datos);
+ if (($re = $res->fetchRow(DB_FETCHMODE_ASSOC)) && !$re['cuenta']) {
+ return new PEAR_Error("Hay sistemas asociados al permiso seleccionado");
+ }
+ $tmp = $sql['verificar_asociaciones2'].$sql['obtener_datos_permiso2'];
+ $dbh = $this->_db->prepare($tmp);
+ $res = $this->_db->execute($dbh, $datos);
+ if (($re = $res->fetchRow(DB_FETCHMODE_ASSOC)) && !$re['cuenta'] == 0) {
+ return new PEAR_Error("Hay pefiles asociados al permiso seleccionado");
+ }
+ //
+ //Borro el permiso de la base
+ $tmp = $sql['borrar_permiso'].$sql['obtener_datos_permiso2'];
+ $dbh = $this->_db->prepare($tmp);
+ return $this->_db->execute($dbh, $datos);
+ //
+ }
+ // -X2C
+
+ // +X2C Operation 319
+ /**
+ * Actualiza los datos del permiso
+ *
+ * @return mixed
+ * @access protected
+ */
+ function _modificarDb()// ~X2C
+ {
+ $datos = array (
+ 'id_permiso' => $this->getId(),
+ 'desc_permiso' => $this->getDescripcion(),
+ 'responsable' => $this->getResponsable(),
+ );
+ return $this->_db->autoExecute('permiso', $datos, DB_AUTOQUERY_UPDATE, 'id_permiso ='.$this->getId());