ADVPL – Depuração, quedas e erros de sincronismo no WebApp / AppServer
Durante o processo de depuração em ambientes ADVPL via VS Code e AppServer TOTVS, é comum ocorrerem erros de sincronismo e quedas de conexão, especialmente quando o servidor está configurado para uso com HTTPS.
🚫 Problema identificado
O AppServer não deve utilizar HTTPS diretamente para depuração, pois isso causa quedas frequentes e desconexões durante a validação da sessão.
Já no VS Code, o uso de HTTPS pode ser forçado, se realmente necessário, ajustando a configuração do ambiente de depuração.
✅ Exemplo de configuração recomendada (launch.json)
{
"type": "totvs_language_web_debug",
"request": "launch",
"name": "PRD DEBUG",
"program": "${command:AskForProgramName}",
"isMultiSession": true,
"enableTableSync": true,
"smartclientUrl": "https://XXXX:2222/webapp/"
}
Neste caso, o HTTPS é utilizado apenas no SmartClient, mantendo a estabilidade da sessão, mas **não deve ser ativado diretamente no AppServer**.
⚠️ Limitação sem solução oficial – múltiplos WebAgents
Profissionais de suporte, analistas e desenvolvedores costumam atender diversos clientes diariamente. Quando cada cliente utiliza um WebAgent diferente, surgem diversos erros de conexão, como:
- “Cannot connect”
- Erro de sincronismo
- Quedas aleatórias
- Falha ao iniciar depuração
Atualmente, a TOTVS ainda não oferece uma solução definitiva para esse cenário.
💡 Situação comum:
- Analistas e consultores possuem dezenas de workspaces (no meu caso, cerca de 100);
- Clientes utilizam infraestruturas diferentes (TCloud, locais, com ou sem TI dedicada);
- Nem sempre é possível padronizar AppServer e WebAgent para todos os ambientes;
- Alterações manuais e trocas de configuração constantes são inviáveis.
📎 Referência oficial do problema
Mais detalhes e discussões podem ser acompanhados no repositório oficial do TDS-VSCode no GitHub:
https://github.com/totvs/tds-vscode/issues/1335#event-18072717903
Conclusão
Enquanto a TOTVS não disponibiliza uma forma de alternar entre múltiplos WebAgents de forma independente, a melhor prática é:
- Evitar o uso de
HTTPS no AppServer durante a depuração;
- Manter o SmartClient com HTTPS apenas quando necessário;
- Centralizar e documentar os ambientes em um repositório pessoal para evitar conflitos de configuração.
💬 Gostou do conteúdo? Compartilhe com outros desenvolvedores e deixe seu comentário! 😎