NR_PORTA - Porta do Serviço de Roteirização
Tela de configuração: ADM010 — Parâmetros do Sistema Localização: Aba Roteirização Tabela:
PARMSISTEMA.NR_PORTA(DOM_INTEGER) Valor padrão: nenhum (campo livre)
Descrição
Define o número da porta TCP do serviço JunsoftRotaAS, utilizado na integração de roteirização e mapa de rotas. Trabalha em conjunto com DS_IP (configurado na mesma aba) para compor a URL base do serviço:
http://DS_IP:NR_PORTA/JunsoftRotaAS/api/...
Campos envolvidos
| Campo | Controle | Tipo | Descrição |
|---|---|---|---|
DS_IP | edtDS_IP | TDBEdit | Endereço IP do servidor de roteirização |
NR_PORTA | edtNR_PORTA | TDBEdit | Porta TCP do servidor de roteirização |
Ambos ficam dentro do mesmo grupo na aba Roteirização e são salvos juntos na tabela PARMSISTEMA.
Opções disponíveis
| O que faz | Detalhe |
|---|---|
| Campo numérico livre | Aceita qualquer número inteiro representando uma porta TCP (ex.: 8080, 3000). Não há validação de intervalo na tela. |
| Obrigatório para roteirização | Se NR_PORTA ou DS_IP estiverem vazios, as funcionalidades de rota em TFA079 exibem erro W-0971 e não prosseguem. |
Simulação passo a passo
- Acesse ADM010 — Parâmetros do Sistema.
- Clique na aba Roteirização.
- No campo IP, digite o endereço do servidor (ex.:
192.168.1.100). - No campo Porta, digite o número da porta do serviço (ex.:
8080). - Clique em Salvar (
<F9>).
Resultado esperado: A URL base http://192.168.1.100:8080/JunsoftRotaAS/api/... será utilizada pelas funcionalidades de roteirização da tela TFA079 (Rota Visita).
Exceção / Importante: Se
NR_PORTAouDS_IP(configurado na mesma aba) estiverem em branco, qualquer tentativa de simular rota, visualizar posição ou consultar realizados na tela TFA079 — Rota Visita será bloqueada com o erro W-0971.
Telas impactadas
| Tela | Arquivo | Uso |
|---|---|---|
| ADM010 — Parâmetros do Sistema | UADM010.dfm | Cadastro/edição de NR_PORTA e DS_IP |
| TFA079 — Rota Visita | UTFA079.pas | Monta URL do serviço de roteirização usando NR_PORTA + DS_IP |
Uso na tela TFA079
O parâmetro é lido via dmTFA079.parmSistema.Values['NR_PORTA'] em três botões:
| Botão | Endpoint da API |
|---|---|
| Visualizar Início (Simulação) | /JunsoftRotaAS/api/rota |
| Realizado | /JunsoftRotaAS/api/evento |
| Visualizar Posição | /JunsoftRotaAS/api/posicao |
Em todos os três casos, se NR_PORTA ou DS_IP estiverem vazios, a execução é interrompida com JException (W-0971).
Procedures impactadas
Rotinas Delphi com referência direta ao campo
| Rotina | Arquivo | Linha | Evidência |
|---|---|---|---|
TfrmTFA079.btnVISUALIZARINIClick | source/TFA079/UTFA079.pas | 1706 | Valida NR_PORTA vazio e monta URL /api/rota |
TfrmTFA079.btnREALIZADOClick | source/TFA079/UTFA079.pas | 1786 | Valida NR_PORTA vazio e monta URL /api/evento |
TfrmTFA079.btnVISUALIZARPOSICAOClick | source/TFA079/UTFA079.pas | 1812 | Valida NR_PORTA vazio e monta URL /api/posicao |
Referências SQL diretas ao campo
Não foram encontradas referências diretas ao campo NR_PORTA em Scripts/. O parâmetro é consumido exclusivamente via Delphi (lado cliente).
Candidatas por uso da tabela
As procedures/views listadas na seção de evidências acessam PARMSISTEMA, mas utilizam outros campos (como TP_PLANOCONTABIL, TP_SISTEMA, etc.). Sem impacto direto identificado no código em relação a NR_PORTA.
Regra geral
NR_PORTAeDS_IPsão pré-requisitos obrigatórios para qualquer funcionalidade de roteirização.- O serviço externo
JunsoftRotaASdeve estar ativo e ouvindo na porta informada. - Não há validação de formato ou intervalo de porta na tela ADM010; a validação ocorre no momento do uso em TFA079 (apenas checa se não está vazio).