function Gerar()
 {
     @session_start();
     $this->__pessoa_logada = $_SESSION['id_pessoa'];
     session_write_close();
     $this->__titulo = "Software Alteracao - Listagem";
     foreach ($_GET as $var => $val) {
         // passa todos os valores obtidos no GET para atributos do objeto
         $this->{$var} = $val === "" ? null : $val;
     }
     $this->addBanner("/intranet/imagens/nvp_top_intranet.jpg", "/intranet/imagens/nvp_vert_intranet.jpg", "Intranet");
     $this->addCabecalhos(array("Software", "Motivo", "Tipo", "Descricão"));
     // Filtros de Foreign Keys
     $opcoes = array("" => "Selecione");
     if (class_exists("clsPmicontrolesisSoftware")) {
         $objTemp = new clsPmicontrolesisSoftware();
         $lista = $objTemp->lista();
         if (is_array($lista) && count($lista)) {
             foreach ($lista as $registro) {
                 $opcoes["{$registro['cod_software']}"] = "{$registro['nm_software']}";
             }
         }
     } else {
         echo "<!--\nErro\nClasse clsPmicontrolesisSoftware nao encontrada\n-->";
         $opcoes = array("" => "Erro na geracao");
     }
     $this->campoLista("ref_cod_software", "Software", $opcoes, $this->ref_cod_software);
     // outros Filtros
     $this->campoLista("motivo", "Motivo", array('' => 'Selecione', 'i' => 'Inserção', 'a' => 'Alteração', 'e' => 'Exclusão'), $this->motivo);
     $this->campoLista("tipo", "Tipo", array('' => 'Selecione', 's' => 'Script', 'b' => 'Banco'), $this->tipo);
     // Paginador
     $this->__limite = 20;
     $this->__offset = $_GET["pagina_{$this->nome}"] ? $_GET["pagina_{$this->nome}"] * $this->__limite - $this->__limite : 0;
     $obj_software_alteracao = new clsPmicontrolesisSoftwareAlteracao();
     $obj_software_alteracao->setOrderby("motivo ASC");
     $obj_software_alteracao->setLimite($this->__limite, $this->__offset);
     $lista = $obj_software_alteracao->lista(null, null, $this->ref_cod_software, $this->motivo, $this->tipo, $this->descricao, null, null, 1);
     $total = $obj_software_alteracao->_total;
     // monta a lista
     if (is_array($lista) && count($lista)) {
         foreach ($lista as $registro) {
             // muda os campos data
             $registro["data_cadastro_time"] = strtotime(substr($registro["data_cadastro"], 0, 16));
             $registro["data_cadastro_br"] = date("d/m/Y H:i", $registro["data_cadastro_time"]);
             $registro["data_exclusao_time"] = strtotime(substr($registro["data_exclusao"], 0, 16));
             $registro["data_exclusao_br"] = date("d/m/Y H:i", $registro["data_exclusao_time"]);
             // pega detalhes de foreign_keys
             if (class_exists("clsFuncionario")) {
                 $obj_ref_funcionario_exc = new clsFuncionario($registro["ref_funcionario_exc"]);
                 $det_ref_funcionario_exc = $obj_ref_funcionario_exc->detalhe();
                 if (is_object($det_ref_funcionario_exc["idpes"])) {
                     $det_ref_funcionario_exc = $det_ref_funcionario_exc["idpes"]->detalhe();
                     $registro["ref_funcionario_exc"] = $det_ref_funcionario_exc["nome"];
                 } else {
                     $pessoa = new clsPessoa_($det_ref_funcionario_exc["idpes"]);
                     $det_ref_funcionario_exc = $pessoa->detalhe();
                     $registro["ref_funcionario_exc"] = $det_ref_funcionario_exc["nome"];
                 }
             } else {
                 $registro["ref_funcionario_exc"] = "Erro na geracao";
                 echo "<!--\nErro\nClasse nao existente: clsFuncionario\n-->";
             }
             if (class_exists("clsFuncionario")) {
                 $obj_ref_funcionario_cad = new clsFuncionario($registro["ref_funcionario_cad"]);
                 $det_ref_funcionario_cad = $obj_ref_funcionario_cad->detalhe();
                 if (is_object($det_ref_funcionario_cad["idpes"])) {
                     $det_ref_funcionario_cad = $det_ref_funcionario_cad["idpes"]->detalhe();
                     $registro["ref_funcionario_cad"] = $det_ref_funcionario_cad["nome"];
                 } else {
                     $pessoa = new clsPessoa_($det_ref_funcionario_cad["idpes"]);
                     $det_ref_funcionario_cad = $pessoa->detalhe();
                     $registro["ref_funcionario_cad"] = $det_ref_funcionario_cad["nome"];
                 }
             } else {
                 $registro["ref_funcionario_cad"] = "Erro na geracao";
                 echo "<!--\nErro\nClasse nao existente: clsFuncionario\n-->";
             }
             if (class_exists("clsPmicontrolesisSoftware")) {
                 $obj_ref_cod_software = new clsPmicontrolesisSoftware($registro["ref_cod_software"]);
                 $det_ref_cod_software = $obj_ref_cod_software->detalhe();
                 $registro["ref_cod_software"] = $det_ref_cod_software["nm_software"];
             } else {
                 $registro["ref_cod_software"] = "Erro na geracao";
                 echo "<!--\nErro\nClasse nao existente: clsPmicontrolesisSoftware\n-->";
             }
             $opcoes = array('i' => 'Inserção', 'a' => 'Alteração', 'e' => 'Exclusão');
             $registro["motivo"] = $opcoes[$registro["motivo"]];
             $opcoes = array('s' => 'Script', 'b' => 'Banco');
             $registro["tipo"] = $opcoes[$registro["tipo"]];
             $this->addLinhas(array("<a href=\"controlesis_software_alteracao_det.php?cod_software_alteracao={$registro["cod_software_alteracao"]}\">{$registro["ref_cod_software"]}</a>", "<a href=\"controlesis_software_alteracao_det.php?cod_software_alteracao={$registro["cod_software_alteracao"]}\">{$registro["motivo"]}</a>", "<a href=\"controlesis_software_alteracao_det.php?cod_software_alteracao={$registro["cod_software_alteracao"]}\">{$registro["tipo"]}</a>", "<a href=\"controlesis_software_alteracao_det.php?cod_software_alteracao={$registro["cod_software_alteracao"]}\">" . truncate($registro["descricao"], 30) . "</a>"));
         }
     }
     $this->addPaginador2("controlesis_software_alteracao_lst.php", $total, $_GET, $this->nome, $this->__limite);
     $this->acao = "go(\"controlesis_software_alteracao_cad.php\")";
     $this->nome_acao = "Novo";
     $this->largura = "100%";
 }
 function Excluir()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     @session_write_close();
     $obj = new clsPmicontrolesisSoftwareAlteracao($this->cod_software_alteracao, $this->pessoa_logada, $this->pessoa_logada, $this->ref_cod_software, $this->motivo, $this->tipo, $this->descricao, $this->data_cadastro, $this->data_exclusao, 0, $this->script_banco);
     $excluiu = $obj->excluir();
     if ($excluiu) {
         $this->mensagem .= "Exclus&atilde;o efetuada com sucesso.<br>";
         header("Location: controlesis_software_alteracao_lst.php");
         die;
         return true;
     }
     $this->mensagem = "Exclus&atilde;o n&atilde;o realizada.<br>";
     echo "<!--\nErro ao excluir clsPmicontrolesisSoftwareAlteracao\nvalores obrigatorios\nif( is_numeric( {$this->cod_software_alteracao} ) && is_numeric( {$this->ref_funcionario_exc} ) )\n-->";
     return false;
 }
 function Gerar()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     session_write_close();
     $this->titulo = "Software Alteracao - Detalhe";
     $this->addBanner("http://ieducar.dccobra.com.br/intranet/imagens/nvp_top_intranet.jpg", "http://ieducar.dccobra.com.br/intranet/imagens/nvp_vert_intranet.jpg", "Intranet");
     $this->cod_software_alteracao = $_GET["cod_software_alteracao"];
     $tmp_obj = new clsPmicontrolesisSoftwareAlteracao($this->cod_software_alteracao);
     $registro = $tmp_obj->detalhe();
     if (!$registro) {
         header("location: controlesis_software_alteracao_lst.php");
         die;
     }
     if (class_exists("clsFuncionario")) {
         $obj_ref_funcionario_exc = new clsFuncionario($registro["ref_funcionario_exc"]);
         $det_ref_funcionario_exc = $obj_ref_funcionario_exc->detalhe();
         if (is_object($det_ref_funcionario_exc["idpes"])) {
             $det_ref_funcionario_exc = $det_ref_funcionario_exc["idpes"]->detalhe();
             $registro["ref_funcionario_exc"] = $det_ref_funcionario_exc["nome"];
         } else {
             $pessoa = new clsPessoa_($det_ref_funcionario_exc["idpes"]);
             $det_ref_funcionario_exc = $pessoa->detalhe();
             $registro["ref_funcionario_exc"] = $det_ref_funcionario_exc["nome"];
         }
     } else {
         $registro["ref_funcionario_exc"] = "Erro na geracao";
         echo "<!--\nErro\nClasse nao existente: clsFuncionario\n-->";
     }
     if (class_exists("clsFuncionario")) {
         $obj_ref_funcionario_cad = new clsFuncionario($registro["ref_funcionario_cad"]);
         $det_ref_funcionario_cad = $obj_ref_funcionario_cad->detalhe();
         if (is_object($det_ref_funcionario_cad["idpes"])) {
             $det_ref_funcionario_cad = $det_ref_funcionario_cad["idpes"]->detalhe();
             $registro["ref_funcionario_cad"] = $det_ref_funcionario_cad["nome"];
         } else {
             $pessoa = new clsPessoa_($det_ref_funcionario_cad["idpes"]);
             $det_ref_funcionario_cad = $pessoa->detalhe();
             $registro["ref_funcionario_cad"] = $det_ref_funcionario_cad["nome"];
         }
     } else {
         $registro["ref_funcionario_cad"] = "Erro na geracao";
         echo "<!--\nErro\nClasse nao existente: clsFuncionario\n-->";
     }
     if (class_exists("clsPmicontrolesisSoftware")) {
         $obj_ref_cod_software = new clsPmicontrolesisSoftware($registro["ref_cod_software"]);
         $det_ref_cod_software = $obj_ref_cod_software->detalhe();
         $registro["ref_cod_software"] = $det_ref_cod_software["nm_software"];
     } else {
         $registro["ref_cod_software"] = "Erro na geracao";
         echo "<!--\nErro\nClasse nao existente: clsPmicontrolesisSoftware\n-->";
     }
     if ($registro["cod_software_alteracao"]) {
         $this->addDetalhe(array("Software Alterac&atilde;o", "{$registro["cod_software_alteracao"]}"));
     }
     if ($registro["ref_cod_software"]) {
         $this->addDetalhe(array("Software", "{$registro["ref_cod_software"]}"));
     }
     if ($registro["motivo"]) {
         $opcoes = array('' => 'Selecione', 'i' => 'Inserção', 'a' => 'Alteração', 'e' => 'Exclusão');
         $this->addDetalhe(array("Motivo", $opcoes["{$registro["motivo"]}"]));
     }
     if ($registro["tipo"]) {
         $opcoes = array('' => 'Selecione', 's' => 'Script', 'b' => 'Banco');
         $this->addDetalhe(array("Tipo", $opcoes["{$registro["tipo"]}"]));
     }
     if ($registro["script_banco"]) {
         $this->addDetalhe(array("Script/Banco", "{$registro["script_banco"]}"));
     }
     if ($registro["descricao"]) {
         $this->addDetalhe(array("Descric&atilde;o", "{$registro["descricao"]}"));
     }
     $this->url_novo = "controlesis_software_alteracao_cad.php";
     $this->url_editar = "controlesis_software_alteracao_cad.php?cod_software_alteracao={$registro["cod_software_alteracao"]}";
     $this->url_cancelar = "controlesis_software_alteracao_lst.php";
     $this->largura = "100%";
 }