Autor Tópico: Atualização da TB onde contém os Nomes das Aplic. p/ Módulo de Seg. [Resolvido]  (Lida 5862 vezes)

Adesoft

  • Avançado
  • ****
  • Mensagens: 355
    • Email
Caros Amigos,

Todos os formulários gerados tem uma descrição ao lado do nome da aplicação, este campo usado por mim é para identificar melhor (resumo) o nome da aplicação criada exemplo:

   APLICAÇÃO                              DESCRIÇÃO
form_adm_cliente                  Formulário de Administração de Clientes

Seria possível atualizar a tabela de aplicação do módulo de segurança com as descrições que tenho já informado no campo DESCRIÇÃO?

Pois no módulo de Segurança, vem no conteúdo do campo aplicação o nome da aplicação (form_adm_cliente) e no conteúdo da descrição vem o mesmo nome (form_adm_cliente), para altera uma a uma é muito trabalhoso, teria como atualizar com o conteúdo da DESCRIÇÃO (Formulário de Administração de Clientes) dentro do conteúdo do campo Descrição (Módulo de Segurança - Descrição das Aplicações)

Adeilson de Oliveira
« Última modificação: Março 20, 2012, 06:28:36 pm por Adesoft »
Adeilson de Oliveira
THS do Brasil

Adesoft

  • Avançado
  • ****
  • Mensagens: 355
    • Email
Alguém da NetMake saberia responder esta dúvida?

Adeilson
Adeilson de Oliveira
THS do Brasil

John L. Santos

  • Bug Tracker Team
  • Administrator
  • Expert
  • *****
  • Mensagens: 595
    • Email
Tente acessar o módulo de segurança como Administrador e sincronize as tabelas.
John L. Santos
NetMake - Soluções em Informática

Adesoft

  • Avançado
  • ****
  • Mensagens: 355
    • Email
Jhon acho que vc não compreendeu a minha dúvida, a sincronização esta fazendo o problema é que eu quero que o sc pegue o conteúdo da descrição e não do nome do arquivo, leia novamente o exemplo que dei:


Projeto
aplicação                        Descrição         
from_cad_cliente        Formulário de Cadastro de Cliente

No módulo de segurança ele pegue o campo aplicação e coloca o conteúdo dele dentro dos dois campos:
aplicação                        Descrição
from_cad_cliente        from_cad_cliente

Assim eu tenho que ficar editando cada um para alterar para que o usuário possa saber a descrição da aplicação.

Se vc fizer um exemplo crie um formulário e na descrição do formulário coloque Um descrição mais amigavél e inclua o módulo de segurança vai percebrer o que estou dizendo

Adeilson de Oliveira
Adeilson de Oliveira
THS do Brasil

jovitomelo

  • Global Moderator
  • Expert
  • *****
  • Mensagens: 916
    • Simples Assim
    • Email
Adeilson,,

Essa é uma necessidade, também sinto falta disso... mas acho um pouco complicada essa funcionalidade uma vez que essa sincronização deveria ser feita no ambiente de produção, no qual o SC não tem acesso...

Abraço
Jovito Melo
Maceió - Alagoas

Haroldo

  • Expert
  • *****
  • Mensagens: 6276
  • Conhecimento diminui limitações.△TFA△
    • Infinitus Web Gestão Empresarial/Gestão ITIL/Consultoria Scriptcase

jovitomelo

  • Global Moderator
  • Expert
  • *****
  • Mensagens: 916
    • Simples Assim
    • Email
Grande Haroldo,

Eu já faço isso tb... mas o Adeilson está se referindo à Descrição das Aplicações... quando vc pega as novas aplicações (assim como eu) não consegue pegar as descrições das mesmas... o que poderia ser feito automaticamante.

Abraço.
Jovito Melo
Maceió - Alagoas

Adesoft

  • Avançado
  • ****
  • Mensagens: 355
    • Email
Jovitomelo,

Que bom alguém me compreendeu, a NM tem que nos posicionar sobre este processo. Jovitomelo,

Haroldo o link que vc passou que também redireciona para o seu site esta desativado
------------------------------------------------------------------------------------------------------------------------------------------------------------------------
http://www.scriptcaseajax.com.br/news.php?item.48.3

Desativação de algumas funcionalidades desse portal.
Haroldo, Monday 27 February 2012 - 21:18:50 // Comentário(s):0, TrackBacks:0
Colegas,
Tenho notado que este portal não tem mais sido relevante a comunidade, quase não há postagens, participação. A intenção inicial do mesmo foi criar um veículo desvinculado do fabricante do Scriptcase.
Vou manter apenas o Fórum, demais áreas serão desativadas, não sei por quanto tempo ainda o fórum vai ficar disponível, isso vai depender de vocês.
Façam vossos comentários no rodapé deste.
Grato.
Haroldo.

-----------------------------------------------------------------------------------------------------------------------------------------------------------------
Adeilson de Oliveira
« Última modificação: Março 17, 2012, 10:00:13 pm por Adesoft »
Adeilson de Oliveira
THS do Brasil

Haroldo

  • Expert
  • *****
  • Mensagens: 6276
  • Conhecimento diminui limitações.△TFA△
    • Infinitus Web Gestão Empresarial/Gestão ITIL/Consultoria Scriptcase
Posto na seguna a solução.eu pego a descrição tb.
« Última modificação: Março 17, 2012, 10:25:14 pm por Haroldo »

Haroldo

  • Expert
  • *****
  • Mensagens: 6276
  • Conhecimento diminui limitações.△TFA△
    • Infinitus Web Gestão Empresarial/Gestão ITIL/Consultoria Scriptcase
O código a seguir está em minha app de consulta a aplicações do modulo de segurança, em um botão do tipo php. O mesmo resgata apps novas no ambiente de produção e as adiciona a tabela de aplicações juntamente com sua descrição.

Código: [Selecionar]
$_rota=$this->Ini->root.$this->Ini->path_link;
$_arr=directory_list($_rota,False,False,".|..|_lib",False);
$_i=0;
foreach ($_arr as &$value) {
  //ECHO "***".$value."***<BR>";
  sc_lookup(rs,"Select count(*) from seg_aplicacoes where apl_fonte='".$value."' and (apl_nome<>'' or apl_nome is not null)");
  If ($rs[0][0]==0) {
    $_file=$_rota.$value."/".$value.".php";
    if (file_exists($_file)) {
      $_title="";
      $handle = @fopen($_file,"r");
      if ($handle) {
        while (!feof($handle)) {
          $buffer = fgets($handle, 4096);
          $pos_1a=strpos($buffer,"nm_nome_apl");
          $pos_1b=strpos($buffer,"var ");
          If ( $pos_1a!==False && $pos_1b===False) {
             $pos_2=strpos($buffer,"=");
             $pos_3=strpos($buffer,";");
             $_title=str_replace('"','',substr($buffer,$pos_2+1,$pos_3-$pos_2-1));
             if (!empty($_title)) {
                sc_exec_sql("REPLACE INTO seg_aplicacoes (apl_fonte,apl_nome,modulo) values ('".$value."','".$_title."','0')");
                $_i++;
                echo "Encontado Nova App:<b>$value</b>  Nome:<b>$_title</b><br>";
             } 
             Break;
          }Else{
             $pos_1a=strpos($buffer,"<TITLE>");
             If ( $pos_1a!==False){
               $pos_2=strpos($buffer,"</TITLE>");
               $_title=str_replace('
','',substr($buffer,$pos_1a+7,$pos_2-$pos_1a-7));
               if (!empty($_title)) {
                 sc_exec_sql("REPLACE INTO seg_aplicacoes (apl_fonte,apl_nome,modulo) values ('".$value." ','".$_title."','0')");
                 $_i++;
                 echo "Encontado Nova App:<b>$value</b>  Nome:<b>$_title</b><br>";
               }
               Break;
             }
          }
        }
        fclose($handle);
      }
    }
  }
}
unset($value,$_arr,$_rota,$rs,$_title,$buffer,$_file);
If (!$_i) Echo "Novas Aplicações não Encontradas<BR>";
sc_exec_sql("delete from seg_grupos_aplicacoes where apl_codigo in (Select apl_Codigo from seg_aplicacoes where apl_nome='' or apl_nome is null)");
sc_exec_sql("delete from seg_aplicacoes where apl_nome='' or apl_nome is null");
Echo "Removendo iconsistências, verifique Grupo de Acesso e ajuste se necessário.";

O código acima se utiliza de um biblioteca, que disponibilizo a seguir. Esse exemplo ficou disponível por 3 anos no scriptcaseajax.com.br.

Código: [Selecionar]
function directory_list($directory_base_path, $filter_dir = false, $filter_files = false, $exclude = ".|..|.DS_Store|.svn", $recursive = true){
    $directory_base_path = rtrim($directory_base_path, "/") . "/";

    if (!is_dir($directory_base_path)){
        error_log(__FUNCTION__ . "File at: $directory_base_path is not a directory.");
        return false;
    }

    $result_list = array();
    $exclude_array = explode("|", $exclude);

    if (!$folder_handle = opendir($directory_base_path)) {
        error_log(__FUNCTION__ . "Could not open directory at: $directory_base_path");
        return false;
    }else{
        while(false !== ($filename = readdir($folder_handle))) {
            if(!in_array($filename, $exclude_array)) {
                if(is_dir($directory_base_path . $filename . "/")) {
                    if($recursive && strcmp($filename, ".")!=0 && strcmp($filename, "..")!=0 ){ // prevent infinite recursion
                        error_log($directory_base_path . $filename . "/");
                        $result_list[$filename] = directory_list("$directory_base_path$filename/", $filter_dir, $filter_files, $exclude, $recursive);
                    }elseif(!$filter_dir){
                        $result_list[] = $filename;
                    }
                }elseif(!$filter_files){
                    $result_list[] = $filename;
                }
            }
        }
        closedir($folder_handle);
        return $result_list;
    }
}
« Última modificação: Março 19, 2012, 04:25:02 pm por Haroldo »

Adesoft

  • Avançado
  • ****
  • Mensagens: 355
    • Email
Re:Atualização da tabela onde contém os nomes das Aplicações para o módulo de Seg.
« Responder #10 Online: Março 20, 2012, 06:18:24 pm »
Haroldo,
Então é um Bug da versão 5.42, graças a sua modificação você conseguiu fazer funcionar, porém até hoje a NM, não resolveu este problema, e ela nem usou a sua idéia para resolver este BUG. Será que a versão 6.0 este problema esta resolvido?

Obrigado,

Adeilson de Oliveira
« Última modificação: Março 20, 2012, 06:30:36 pm por Adesoft »
Adeilson de Oliveira
THS do Brasil

Haroldo

  • Expert
  • *****
  • Mensagens: 6276
  • Conhecimento diminui limitações.△TFA△
    • Infinitus Web Gestão Empresarial/Gestão ITIL/Consultoria Scriptcase
Re:Atualização da TB onde contém os Nomes das Aplic. p/ Módulo de Seg. [Resolvido]
« Responder #11 Online: Março 20, 2012, 06:41:53 pm »
não instalei a v6 ainda, não sei dizer.

HenriqueB

  • Global Moderator
  • Expert
  • *****
  • Mensagens: 639
Re:Atualização da TB onde contém os Nomes das Aplic. p/ Módulo de Seg. [Resolvido]
« Responder #12 Online: Março 21, 2012, 05:15:52 pm »
Senhor,

Infelizmente ainda não há um método nativo para isso, mas essa sugestão é interessante e poderá ser implementada numa nova versão do ScriptCase.

Estou pessoalmente encaminhando a sugestão para sugestao@netmake.com.br. Peço que os colegas aqui que também fariam bom proveito dessa funcionalidade enviem mais e-mails com a mesma sugestão, pois esse é um dos objetivos do forum: promover a interação e o agrupamento dos usuários para questões específicas.
Atenciosamente,
Henrique C. Barros
Netmake Soluções em Informática

Kleyber

  • Expert
  • *****
  • Mensagens: 2237
    • Email
Re:Atualização da TB onde contém os Nomes das Aplic. p/ Módulo de Seg. [Resolvido]
« Responder #13 Online: Março 12, 2015, 08:59:22 pm »
Clarck,

Muito legal a idéia. Obrigado por compartilhar.
Kleyber Derick

ITIL® V3 Foundation Certified
Analista de Sistemas
São Luís - Maranhão
www.tkinformidia.net

Kleyber

  • Expert
  • *****
  • Mensagens: 2237
    • Email
Re:Atualização da TB onde contém os Nomes das Aplic. p/ Módulo de Seg. [Resolvido]
« Responder #14 Online: Março 13, 2015, 10:17:18 am »
Muito bom Clarck
Kleyber Derick

ITIL® V3 Foundation Certified
Analista de Sistemas
São Luís - Maranhão
www.tkinformidia.net