Dúvida
Como criar serviço REST no Protheus?
Ambiente
TOTVS RH - TOTVS RH (Linha Protheus) - eSocial -Todas as versões
Solução
1 - Pare todos os serviços do Protheus (Servidor de Aplicação, Servidor de Licenças, DBAccess, Ctree, etc);
2 - Faça uma cópia da pasta appserver (Ex.: appserver_TAF_Full);
3 - Nesta nova pasta, abra o arquivo appserver.ini e altere a porta da seção [TCP] para uma nova porta de sua preferência;
4 - Se for iniciar o appserver como um serviço, altere o nome do serviço na seção [Service] o Name e o DisplayName para diferenciar os serviços existentes;
5 - Para que funcione do serviço de forma adequada, as seções e os parâmetros deverão ter as seguintes configurações:
[TAF_FULL]
SourcePath=CAMINHO DO RPO
RootPath=CAMINHO PROTHEUS DATA
StartPath=\SYSTEM\
RpoDb=top
RpoLanguage=portuguese
RpoVersion=120
LocalFiles=ctree
localdbextension=.dtc
Logprofiler=0
TOPMEMOMEGA=1
TAFMultInt=1
x2_path=\data\
[Drivers]
Active=TCP
[TCP]
TYPE=TCPIP
Port=PORTA DE SUA ESCOLHA
[General]
consolelog=1
MaxStringSize=10
[SERVICE]
NAME=TOTVS-TAF-FULL
DISPLAYNAME=TOTVS-TAF-FULL
[TopConnect]
Database=BANCO DE DADOS
Server=IP DO BANCO DE DADOS
Alias=NOME DO ALIAS
Port=PORTA DBACCESS
[HTTPV11]
SOCKETS=HTTPREST
ENABLE=1
[HTTPREST]
Port=PORTA DE SUA ESCOLHA PARA O REST
URIs=HTTPURI
Security=0
[HTTPURI]
URL=/rest
Instances=2,2
CORSEnable=1
AllowOrigin=*
[HTTPJOB]
MAIN=HTTP_START
ENVIRONMENT=TAF_FULL
[TAF_CFGJOB]
MAIN=TAF_CFGJOB
Instances=5,30,5,1
PrepareIn=ALL
Environment=TAF_FULL
RefreshRate=120
[LICENSECLIENT]
SERVER=IP License Server
PORT=Porta License Server
[OnStart]
JOBS=HTTPJOB,TAF_CFGJOB
RefreshRate=120
[HTTP]
Enable=1
Port=PORTA DE SUA ESCOLHA PARA O ROOT
Path=CAMINHO DA PASTA HTTP-ROOT NA PROTHEUS DATA
Environment=TAF_FULL
Observação:
Clientes Cloud (T-Cloud) do TOTVS, precisam solicitar a configuração do TAF do Futuro á área do CLoud:
Automação Fiscal - Como solicitar suporte TOTVS para o produto, TSS ou Cloud
6 - Após a criação do serviço deverá ser configurado os parâmetros: MV_BACKEND e MV_GCTPURL;
7 - Analise se o parâmetro MV_BACKEND se está preenchido com a URL do serviço REST:
Obs.: O IP, tem que ser o endereço do servidor da Aplicação do TAF. Para confirmar qual a porta da conexão REST, abre o arquivo appserver.ini e verifique a seção [HTTPREST] a porta configurada.
Exemplo:
8 - Verifique outro parâmetro MV_GCTPURL se está apontando para a URL do serviço HTTP:
Obs.: O IP, tem que ser o endereço do servidor da Aplicação do TAF. Para confirmar qual a porta da conexão HTTP, abre o arquivo appserver.ini e verifique a seção [HTTP] a porta configurada.
Exemplo:
9 - Verifique o parâmetro MV_TAFPO*:
- Obs.: Preencher o parâmetro MV_TAFPO com .T. se possui mais módulos de Protheus além do TAF ou possui mais de uma placa de rede no servidor onde está sendo executado o serviço HTTP e com .F. se possui apenas o TAF e apenas uma placa de rede;
- Se usar o TAF Segregado, usar o valor .F.;
10 - Verifique se as portas configuradas nos parâmetros MV_BACKEND e MV_GCTPURL estão liberadas caso possua Firewall ou Proxy;
11 - Realizado a configuração do serviço acesse a rotina Miscelânea > Esocial > Esocial do Futuro:
Se houver erro ou outra inconsistência ao acessar a rotina, encaminhe as seguintes evidências para o time do suporte avaliar:
- Arquivo console.log REST e console.log do appserver Master;
- Arquivo appserver.ini do REST e appserver.ini do appserver Master;
- Print da inconsistência apresentada;
- Pasta http-root;
- Caso possua bloqueio encaminhe evidência das portas desbloqueadas no Firewall ou Proxy;
0 Comentários