Árvore de páginas

Vamos lá!

Olá, através dessa documentação vamos te ajudar a fazer algumas configurações no seu Appserver que são pré-requisitos para a integração entre TOTVS Protheus e TOTVS OMNI, sendo elas:

MaxStringSize e MemoMega

Importante!

  • Por que devo realizar configuração das chaves  MaxStringSize e MemoMega  no Appserver.ini ?

Essa configuração é necessária para evitar a ocorrência "String size overflow".

Esta ocorrência é reproduzida quando atingimos o limite do tamanho de uma string em advpl. A linguagem advpl suporta, por padrão, armazenar e operar uma string com tamanho de até 1 MB (1024 KB). Abaixo exemplo de como realizar esta configuração.

Exemplo:

Na seção General do arquivo Appserver.ini informe a chave maxStringSize e o seu valor como mostra o exemplo.

[general]
maxStringSize=100
Será apresentado no console do TOTVS | Application Server

a notificação *** STARTING SERVER WITH MAXIMUM STRING SIZE LIMIT SET TO 100 MB. ***.

***  TOTVS S.A.  ***
***   www.totvs.com.br    ***
TOTVS - Build 7.00.131227A - Aug 29 2014 - 09:32:37

'TOTVS' console mode.
Press Ctrl+Break to terminate.
*** SERVER BUILD WITH DUAL-STACK SOCKETS FOR IPV6 IMPLEMENTATION
*** STARTING SERVER WITH PRECISION FLOATING POINT ARITHMETIC
*** STARTING SERVER WITH MAXIMUM STRING SIZE LIMIT SET TO 100 MB. ***

Para maiores informações consulte: Seção [general], chave MaxStringSize.

Aviso!

Após realizar a configuração da chave maxStringSize, é necessário realizar a configuração da chave MemoMega no TOTVS | Application ServerAbaixo o exemplo para configuração do arquivo Appserver.ini.

Exemplo:

Na seção DBAccess do arquivo Appserver.ini  informe a chave MemoMega e o seu valor como mostra o exemplo.

[DBAccess]
MemoMega=100

Para maiores informações consulte: DBAccess - MemoMega.


Aviso!

A chave MemoMega é substituida caso na seção de ambiente a chave TOPMemoMega esteja configurada para o ambiente.

Para maiores informações consulte: TOPMemoMega


REST EAI - Protheus

Dica

  • Por que devo realizar a configuração do serviço REST no Appserver.ini ? 

Para que o EAI Protheus seja capaz de receber mensagens do TOTVS OMMNI(para o envio o Protheus não faz o consumo do seu serviço Web, e sim do serviço do outro sistema) é necessário que seja habilitado o protocolo HTTP/REST no servidor e que as configurações de WebServices estejam ativas. Para isso é necessário configurar o arquivo appserver.ini do servidor Protheus. 

  • Agora que você já sabe porque devemos configurar o REST no Appserver.ini, vamos realizar a configuração através desta pagina: Configuração REST SERVER - Protheus. Abaixo um exemplo da configuração do REST.

Exemplo:

;===========================REST=================================

[HTTPJOB]
MAIN=HTTP_START
ENVIRONMENT=SEU_AMBIENTE

[HTTPV11]
Enable=1
Sockets=HTTPREST


[HTTPREST] 
Port=SUA_PORTA
IPsBind=
URIs=HTTPURI
Security=1

[HTTPURI]
URL=/rest
PrepareIn=SUA_EMPRESA
Instances=1,1  

;===========================REST=================================

[ONSTART]
Jobs=HTTPJOB

Importante!

A porta informada na chave Port, deve ser uma porta liberada para IP externos, para que seja possível o a comunicação e envio/recebimentos de dados entre o TOTVS Protheus e TOTVS OMNI.

Após finalizar a configuração do REST no Appserver.ini o que devo fazer?


  1.  Inicie o seu Appserver.ini e aguarde a inicialização do serviço REST, é possível visualizar no console do Appserver se o serviço foi inicializado com sucesso, como mostra a imagem abaixo:

[24/10/2022 17:25:56] Totvs Application Server is running

Starting Job [HTTPJOB]

Starting Job [186F49545DDE1F4FAB54C91BB1151F76APP_MONITOR_THREADPOOL]

  _____   ______   _____  _______
 |  __ \ |  ____| / ____||__   __|
 | |__) || |__   | (___     | |
 |  _  / |  __|   \___ \    | |
 | | \ \ | |____  ____) |   | |
 |_|  \_\|______||_____/    |_|   Ver. 2.0

*** Loading dbapi.dll

[INFO ][SERVER] [DBAPI] Using DBAPI Memory Control Functions.
*** dbapi.dll Build 20220303-20220720 RELEASE (API Version: 22.1.1.0_ts08)

[INFO ][SERVER] [Thread 21036] JOB Thread finished [-FWHTTPPREPARE]
URI HTTPURI sem configuracao de PrepareIn.

HTTPV11 is ready.
  Listening port 8036
  URL Paths /rest/


      2. Em seguida acesse seu navegador de Internet e informe o endereço do servidor e da porta do serviço REST exemplo: http://127.0.0.1:8036/rest

 Após o passo mencionado acima deverá ser apresentado a Lista serviços REST disponíveis:

 Realize o teste de uma rede externa(4G/Outra rede fora da empresa)  para saber se o acesso externo está liberado.


       3. Feito isso o Endpoint do TOTVS Protheus para recebimento dos dados é composto da seguinte forma:

O endereço é formado pelo IP Servidor(IP Externo) e PORTA definido no serviço REST + totvseai/standardmessage/v1/transactions/

Exemplo: http://127.0.0.1:8036/rest/totvseai/standardmessage/v1/transactions/


Dica

Caso tenha definido um caminho para o serviço REST em URL o mesmo deve ser considerado no caminho do serviço.

Isso evita erros como: {"code":404,"detailedmessage":"","message":"The server can't find the requested resource."}

Ex :

[HTTPURI]
URL=/exemplo

então o caminho ficaria: http://127.0.0.1:8036/exemplo/totvseai/standardmessage/v1/transactions/


Importante!

O EndPoint do serviço REST configurado deve ser disponibilizado para o time do TOTVS OMNI, para o TOTVS OMNI conseguir conexão com seu ambiente.

Atenção

No Protheus, cada grupo de empresas é um aplicativo diferente para o EAI. Desta maneira, cada grupo de empresas deve possuir um endereço REST diferente. Caso seja recebida uma requisição para um endereço cujo grupo de empresas é diferente do enviado, a seguinte mensagem será apresentada: O grupo de empresas do aplicativo  não corresponde ao grupo de empresas deste serviço. Grupo recebido - (A). Grupo do serviço - (B) , onde A e B são respectivamente o grupo recebido na requisição e o grupo de empresas do endereço REST


GRAVABATCH

Dica!

O que é o GravaBtach e por que preciso configura-lo?

O GravaBatch é um serviço de extrema importância pois é responsável pelo processamento da venda(gera financeiro/Baixa de estoque, geração de Pedido/Livros fiscais etc.).

Este serviço deve ser configurado para as filiais utilizadas na integração.

Este serviço deve ser configurado no seu appserver.ini, abaixo o exemplo de configuração

[Integracao_ERP]
Main=LJGRVBATCH
Environment=SEU_AMBIENTE
nParms=2
Parm1=_CODIGO_EMPRESA
Parm2=CODIGO_FILIAL

[ONSTART]
Jobs=Integracao_ERP

GravaBatch

Para maiores detalhes da configuração do serviço acesse: Detalhes GravaBatch


Próximo passo

Próximo passo!

Agora que já realizamos as configurações no Appserver, vamos realizar alguns cadastros e parametrizações no modulo Configurador (SIGACFG) do TOTVS Protheus. Vamos lá...

  • Sem rótulos