/**
   * Operación que se encarga de realizar modificación del <strong>Puesto</strong>.
   *
   * @param puesto El registro a modificar.
   * @return Un string con la respuesta directamente del servidor de base de datos.
   * @throws SQLException Si ocurre una excepcion sql.
   * @since 1.0
   */
  public String modificarPuesto(Puesto puesto) throws SQLException {
    String resp = "";
    try {
      Connection con = Conexionmysql.obtenerConexion();
      CallableStatement cs = con.prepareCall("{ call simuni_sp_actualizacion_puesto(?,?,?)  }");
      cs.setString(1, puesto.getNombrePuesto());
      cs.setInt(2, puesto.getCodigoPuesto());
      cs.registerOutParameter(3, java.sql.Types.VARCHAR);
      cs.execute();
      resp = cs.getString(3);
      Conexionmysql.cerrarConexion(con);
    } catch (SQLException ex) {
      resp = ex.getMessage();
      throw ex;
    }

    return resp;
  }
 /**
  * Funcion que se encarga de traer un registro específico de la base de datos, recibe como
  * parámetro el identificador del registro y con eso hace la operacion.
  *
  * @param codigo El código / identificador del registro a buscar.
  * @return Un objeto Puesto con los valores correspondientes
  * @throws SQLException si ocurre una excepción de SQL
  * @since 1.0
  */
 public Puesto getPuesto(int codigo) throws SQLException {
   Puesto resp = null;
   Connection con = Conexionmysql.obtenerConexion();
   PreparedStatement st =
       con.prepareCall(
           "{ call simuni_sp_obtener_puesto(?)}",
           ResultSet.TYPE_SCROLL_INSENSITIVE,
           ResultSet.CONCUR_READ_ONLY);
   st.setInt(1, codigo);
   ResultSet rs = st.executeQuery();
   if (rs.next()) {
     resp = new Puesto();
     resp.setCodigoPuesto(rs.getInt(1));
     resp.setNombrePuesto(rs.getString(2));
     rs.close();
   }
   return resp;
 }