Abrindo o Protheus por linha de comando via WebAgent

No artigo de hoje, vamos abordar em como acionar customizações via linha de comando no Protheus através do WebAgent.

Até a versão 2410, era possível acionar o smartclient.exe e executar um programa direto via linha de comando, por exemplo:

C:\TOTVS\ERP\Protheus\bin\smartclient\smartclient.exe -c=sua_conexao -e=seu_ambiente -p=u_zTstLinha -q -m -l

 

Mas a partir da versão 2410, como não tem mais o smartclient.exe, como podemos fazer? Abaixo o passo a passo (para Windows).

  1. Clique com o botão direito no atalho do WebAgent e em seguida, clique em Abrir local do Arquivo
Encontrando o local de instalação

Encontrando o local de instalação

 

  1. Nessa pasta, pegue o nome do arquivo executável, web-agent.exe conforme exemplo abaixo
Copiando o caminho

Copiando o caminho

 

  1. Agora vamos pegar o caminho de um navegador instalado, nesse caso, vamos usar o Google Chrome como exemplo, para isso, no iniciar procure pelo Chrome, depois clique com o botão direito e em Abrir local do arquivo
Repetindo o processo com o navegador

Repetindo o processo com o navegador

 

  1. Nisso, já pegamos o caminho do webagent e pegamos o caminho do navegador, agora vamos pegar o caminho do nosso Protheus, que nesse caso aqui é a URL http://127.0.0.1:8093/
  2. A estrutura do comando então vai ser:
[caminho do WebAgent] launch "[url do protheus com ambiente e programa inicial]" --browser="[caminho do navegador]" --headless

 

  1. Logo, se substituir então as partes da estrutura acima, vai ficar assim:
C:\Users\danat\AppData\Local\Programs\web-agent\web-agent.exe launch "http://127.0.0.1:8093?E=AMBTST2&P=u_zTstLinha" --browser="C:\Program Files\Google\Chrome\Application\chrome.exe" --headless

 

  1. Vamos pegar então esse comando e colar no PowerShell ou em algum Prompt de Comando do Windows
Executando o comando

Executando o comando

 

  1. Se abrirmos o console.log do appserver, e tudo deu certo, ai vai exibir uma mensagem
Exemplo do log no Console do AppServer

Exemplo do log no Console do AppServer

 

 

Obs.: Para o cenário acima, foi utilizado esse código fonte de exemplo:

//Bibliotecas
#Include "TOTVS.ch"

/*/{Protheus.doc} zTstLinha
Exemplo de programa executado em linha
@type user function
@author Atilio
@since 02/04/2025
/*/

User Function zTstLinha()
    Local cMensagem := "Testando 123, na data " + dToC(Date()) + " na hora " + Time()
    QOut(cMensagem)
Return

Referências:

 

Bom pessoal, por hoje é só.

Abraços e até a próxima.

Dan (Daniel Atilio)
Cristão de ramificação protestante. Especialista em Engenharia de Software pela FIB, graduado em Banco de Dados pela FATEC Bauru e técnico em informática pelo CTI da Unesp. Entusiasta de soluções Open Source e blogueiro nas horas vagas. Autor e mantenedor do portal Terminal de Informação.

Deixe uma resposta

Terminal de Informação