function Gerar()
 {
     @session_start();
     $this->__pessoa_logada = $_SESSION['id_pessoa'];
     session_write_close();
     $this->__titulo = "Município - Listagem";
     foreach ($_GET as $var => $val) {
         // passa todos os valores obtidos no GET para atributos do objeto
         $this->{$var} = $val === "" ? null : $val;
     }
     $this->addBanner("imagens/nvp_top_intranet.jpg", "imagens/nvp_vert_intranet.jpg", "Intranet");
     $this->addCabecalhos(array("Nome", "Estado"));
     // Filtros de Foreign Keys
     $opcoes = array("" => "Selecione");
     if (class_exists("clsPais")) {
         $objTemp = new clsPais();
         $lista = $objTemp->lista(false, false, false, false, false, "nome ASC");
         if (is_array($lista) && count($lista)) {
             foreach ($lista as $registro) {
                 $opcoes["{$registro['idpais']}"] = "{$registro['nome']}";
             }
         }
     } else {
         echo "<!--\nErro\nClasse clsPais nao encontrada\n-->";
         $opcoes = array("" => "Erro na geracao");
     }
     $this->campoLista("idpais", "Pais", $opcoes, $this->idpais, "", false, "", "", false, false);
     $opcoes = array("" => "Selecione");
     if (class_exists("clsUf")) {
         if ($this->idpais) {
             $objTemp = new clsUf();
             $lista = $objTemp->lista(false, false, $this->idpais, false, false, "nome ASC");
             if (is_array($lista) && count($lista)) {
                 foreach ($lista as $registro) {
                     $opcoes["{$registro['sigla_uf']}"] = "{$registro['nome']}";
                 }
             }
         }
     } else {
         echo "<!--\nErro\nClasse clsUf nao encontrada\n-->";
         $opcoes = array("" => "Erro na geracao");
     }
     $this->campoLista("sigla_uf", "Estado", $opcoes, $this->sigla_uf, "", false, "", "", false, false);
     // outros Filtros
     $this->campoTexto("nome", "Nome", $this->nome, 30, 60, false);
     // Paginador
     $this->__limite = 20;
     $this->__offset = $_GET["pagina_{$this->nome}"] ? $_GET["pagina_{$this->nome}"] * $this->__limite - $this->__limite : 0;
     $obj_municipio = new clsPublicMunicipio();
     $obj_municipio->setOrderby("nome ASC");
     $obj_municipio->setLimite($this->__limite, $this->__offset);
     $lista = $obj_municipio->lista($this->nome, $this->sigla_uf);
     $total = $obj_municipio->_total;
     // monta a lista
     if (is_array($lista) && count($lista)) {
         foreach ($lista as $registro) {
             // pega detalhes de foreign_keys
             if (class_exists("clsUf")) {
                 $obj_sigla_uf = new clsUf($registro["sigla_uf"]);
                 $det_sigla_uf = $obj_sigla_uf->detalhe();
                 $registro["sigla_uf"] = $det_sigla_uf["nome"];
             } else {
                 $registro["sigla_uf"] = "Erro na geracao";
                 echo "<!--\nErro\nClasse nao existente: clsUf\n-->";
             }
             $this->addLinhas(array("<a href=\"public_municipio_det.php?idmun={$registro["idmun"]}\">{$registro["nome"]}</a>", "<a href=\"public_municipio_det.php?idmun={$registro["idmun"]}\">{$registro["sigla_uf"]}</a>"));
         }
     }
     $this->addPaginador2("public_municipio_lst.php", $total, $_GET, $this->nome, $this->__limite);
     $this->acao = "go(\"public_municipio_cad.php\")";
     $this->nome_acao = "Novo";
     $this->largura = "100%";
 }