| Scroll Only | 
|---|
Autor do artigo: atualizado por Joao.Fonseca (Não remova esse quadro) | 
Qual a dúvida?
Como realizar o procedimento DBNAMES
:
1- Acesse o PCC > Configure Local Egine, e registre os prints das configurações aplicadas no cliente:
- Data integrity
 - Memory Usage
 - Performance Tuning
 - Todas
 
- DSNs utilizadas
 
| Aviso | 
|---|
É importante documentar todas as informações,  | 
pois o Pervasive será reinstalado e, com isso, as configurações  | 
precisarão ser  | 
reparametrizadas.  | 
2- Em "Directories", copie o diretório
especificado no campo "DBNames Configuration Location".
C:\ProgramData\Pervasive Software\PSQL
3-Acesse o diretório copiado C:\ProgramData\Pervasive Software\PSQL.
4- Renomeie o arquivo "DBNames.CFG" para "DBNames.CFG-old".
5- No mesmo diretório execute o arquivo "RecreateSystemDBs.bat"
Reinstalação do Pervasive
6- Acesse "Painel de Controle\Todos os Itens do Painel de Controle\Programas e Recursos" e desinstale o Pervasive
7-Instale novamente o Pervasive e seu respectivo Patch
Pervasive Workgroup 11:
Conforme guia: I28-Instalação do Pervasive 11.30 Workgroup
Pervasive Server 11:
Conforme guia: I362-Instalação Pervasive 11.30 Server
Pervasive Workgroup 13:
Conforme guia: I794-Instalação do Pervasive 13.30 Workgroup
Pervasive Server 13:
Conforme guia: I803-Instalação do Pervasive 13.30 Server
Pervasive Server 15:
Conforme guia: I1025 - Instalação do pervasive 15.20 Server
Pervasive WorkGroup 15:
Conforme guia: I1024 - Instalação do pervasive 15.20 Workgroup
Criação de DSNs e Aplicação das configurações no Pervasive
8- No "REGEDIT" acesse
Para sistemas operacionais 32bits
Computador\HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\ODBC\ODBC.INI
Para sistemas operacionais 64bits
Computador\HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\ODBC\ODBC.INI
9- Realize o backup da chave odbc.ini, salvando a mesma no Desktop e em seguida exclua a chave
10- Efetue o procedimento do guia:
I406 - Como recriar a base da DSN Prosoft no Servidor
11- Crie manualmente a DSN da Base Geral PROEMPXX: I407-Como recriar a base de dados geral da PROEMP
12- Efetue o processo do guia: I408-Como realizar a manutenção das DSNs
| Aviso | 
|---|
Após o processo de manunteção de DSNs. Será necessário criar manualmente algumas DSNs no Pervasive, verifique conforme os Prints realizados e crie as DSNS. Aplique novamente as configurações documentadas por Print no Pervasive.  | 
| Scroll Only | 
|---|
(Não remova esse quadro) | 
| HTML | 
|---|
<div id="text-end"></div>
<!-- Global site tag (gtag.js) - Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-193974933-1"></script>
<script>
  window.dataLayer = window.dataLayer || [];
  function gtag2(){dataLayer.push(arguments);}
  gtag2('js', new Date());
  gtag2('config', 'UA-193974933-1');
  function gtagevents (action,category) {
     console.log(category + ':' + action);
     gtag2('event',action,{event_category:category,event_label: document.title});
  };
</script>
<script src="https://player.vimeo.com/api/player.js"></script>
<script>
    (function(){
        // RASTREIO DE USO DO VÍDEO
        function gtagvideo(action){
           gtagevents(action,'Video')
        }
        var iframe = document.querySelector('iframe');
        var player = new Vimeo.Player(iframe);
        var seeking = false;
        var priorTime = 0;
        var currentTime = 0;
        var reportouFinalDoConteudo = false;
        // se pausar o play é acionado também.
        player.on('play', function(data) {
            if(data.seconds == 0){ 
              gtagvideo('video-iniciado');
            }
            priorTime = data.seconds;             
        });
        player.on('ended', function() {
            gtagvideo('video-finalizado');
        });
        //seeking e timeupdate são disparados juntos, logo o tempo dos 2 é atualizado também. Preciso garantir que a variavel starttime seja atualizada ordenadamente (sempre antes ou após o seeking).
        // pra isso preciso setar uma variavel no timeupdate e ler no seeking para garantir a ordem. Se ela estiver false será alterada na próxima iteração.
        player.on('seeking', function(data) {               
            seeking = true;
        });
        player.on('pause',function(data){
            gtagvideo('video-pausado');    
        });
        player.on('timeupdate', function(data) {
            if(seeking){
                if(currentTime < priorTime){
                    gtagvideo('video-voltando');    
                }
                if(currentTime > priorTime){
                    gtagvideo('video-avancando')
                }
                seeking = false;
            }
            priorTime = currentTime;
            currentTime = data.seconds;
           var finalDoConteudo = (data.duration - data.seconds) < 5;
           if(finalDoConteudo && !reportouFinalDoConteudo){
            gtagvideo('conteudo-finalizado')
            reportouFinalDoConteudo = true;
           }
        });
        player.on('fullscreenchange', function() {
            gtagvideo('video-fullscreen');
        });
    })();
</script>
<script>
 // RASTREIO DO USO DE AUDIO
 (function(){
    function gtagaudio(action){
           gtagevents(action,'Audio')
    }            
    var audio = document.querySelector("audio");
    var seeking = false;
    var priorTime = 0;
    var currentTime = 0;
    audio.addEventListener('play',function(){
        if(audio.currentTime == 0){
          gtagaudio('audio-iniciado');
        }
        priorTime = audio.currentTime;        
    });
    audio.addEventListener('ended',function(){
        gtagaudio('audio-finalizado');
    });
    audio.addEventListener('pause',function(){
        gtagaudio('audio-pausado');
    });
    audio.addEventListener('seeking', function(data) {               
        seeking = true;
    });
    audio.addEventListener('timeupdate', function(data) {               
        if(seeking){
                if(currentTime < priorTime){
                    gtagaudio('audio-voltando');    
                }
                if(currentTime > priorTime){
                    gtagaudio('audio-avancando')
                }
                seeking = false;
            }
            priorTime = currentTime;
            currentTime = audio.currentTime;
    });    
 })();
 </script>
<script>
    (function(){
        var terminou = false;
        //RASTREIO DE LEITURA ATÉ O FINAL DA PÁGINA
        document.addEventListener('scroll',() => {
            if(document.getElementById('text-end').getBoundingClientRect().top < window.innerHeight){
                if(!terminou){
                    terminou = true;
                    gtagevents('artigo-lido','Pagina')
                }
            }else{
                terminou = false;
            }
                
        });
    })();
 </script>
 | 






