Shift+F6? Sim!

Daniel Mendes
TOTVS Developers
Published in
4 min readSep 7, 2019

Bom galera, o Protheus é um ERP super customizável, que hoje tem alguns releases expedidos, que podem conter ainda versão distintas de LIB em versões X, Y ou Z de binários… Ou seja, analisar um ambiente muitas vezes é complexo.

Algum dia alguém já pediu pra você a data de um fonte? Perguntou a versão dos binários? Pois é… Isso é bem comum e faz parte da rotina de análise. Por conta disso, existe um recurso já antigo, porém muito útil, no Protheus. Trata-se de um wizard com diversas opções e informações que facilitam a compreensão do ambiente.

Para acessar esse cara, basta logar no Protheus e no próprio menu usar as teclas Shift+F6. Pronto!

O Wizard

Bem, o Wizard tem visualizações distintas. Quando chamado de dentro de uma rotina, ele exibe logo de cara os dados na rotina (fonte, data e hora), sendo a única diferença de quando chamado diretamente pelo menu.

Guia de atendimento

Essa aba tem um resumo de seu ambiente, contendo os seguintes dados:

  • Versão e build do AppServer
  • Versão completa do DBAccess
  • Build da DBAPI
  • Tipo de arquivos locais
  • Release do dicionário
  • Release do RPO
  • Versão, data e commit da LIB
  • Versão do License Server
  • Versão e build do remote (SmartClient)
  • Tipo do remote (HTML, Executável etc)
  • Banco de dados (Database)
  • Módulo do Protheus
  • Nome do ambiente
  • Informação sobre dicionário no banco de dados
  • Informações sobre a estação
  • Informações da rotina (Somente quando dentro de uma)
Diferença de quanto chamada dentro de uma rotina

Ainda nessa tela, temos um botão Exportar dados, que só fica visível para usuários administradores. Com ele, é possível exportar um arquivo CSV contendo todos os dados acima e mais todos os fontes presentes no RPO… Sim, todos os fontes, com data e hora, ou seja, só com esse arquivo CSV você já tem praticamente todos os dados que por vezes são solicitados!

Veja um exemplo e a quantidade de informações presentes nele:

Ele é bem extenso… Tanto que removi diversos fontes para ficar mais leve e com uma quantidade menor de informação. Caso a visualização dele fique ruim, veja diretamente no Gist: https://gist.github.com/Dadinel/c7a864bb832e2335714ea79a809c92ef

Profile de Execução

Essa aba permite executar o famoso LogProfiler sem ter que ativá-lo no AppServer.ini. Com isso, é possível verificar a performance de uma determinada rotina de forma mais pontual. Na mesma tela você inicializa e finaliza sua execução, sendo que no final é solicitado um diretório para salvar o log.

Stack

A aba de stack (pilha), permite verificar qual é a stack atual do Protheus. Isso ajuda? MUITO! Quantas vezes não foi exibido um help durante aquele processamento imenso e você não soube dizer quem chamou aquele help? Pois é, com a stack é possível dizer quem foi a função e fonte que efetuou aquela chamada. Isso vale também para aqueles helps do MVC que por vezes temos dificuldade de encontrar!

Veja o exemplo de quando é exibida uma mensagem e queremos compreender sua origem:

Olha o tamanho da stack… Nesse exemplo eu recebi um help sobre tentar cadastrar um usuário já existente

Existem outras abas presentes nesse wizard, mas foquei naquelas mais utilizadas no dia a dia.

Então, vamos lá. Preciso entrar em contato com alguém pra reportar um erro qualquer… Poxa, já envio o CSV com o resumo de meu ambiente!

Estou com uma baita lentidão quando vou processar arquivos na rotina X, gero o LogProfiler, sem precisar alterar nada em meu INI de configurações, e na dúvida ainda envio o CSV com o resumo do ambiente! =)

--

--