Para utilizar o REST com o ERP Microsiga Protheus é necessário configurar a chave PrepareIn da(s) seção(ões) URI.

PrepareIn para apenas um Grupo de Empresas

Deve-se informar, na linha PrepareIn, o código do Grupo de Empresas

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


PrepareIn para apenas um Grupo de Empresas e Filial

Neste caso deve-se informar, na linha PrepareIn, o código do Grupos de Empresas e da Filial, separados por vírgula.


[HTTPURI]
URL=/rest
PrepareIn=T1,D MG 01
Instances=1,1 


PrepareIn para todos os Grupos de Empresas

Neste caso deve-se informar, na linha PrepareIn, a expressão "All"


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



Observação: a definição de Filial fica a cargo da requisição.




Além da configuração já existente no web service SOAP que necessita de ambiente especialista por empresa e filial também é possível preparar as working threads para todas as empresas.

Nesse modelo o requisitor deve indicar qual empresa deseja utilizar através do campo tenantId que deve ser enviado no HEADER da requisição HTTP, como no exemplo abaixo:

GET /res/sample
Host: localhost:8080
Accept: application/json
tenantId: 99


Ou, caso seja necessário informar também a filial, poderá indicar no campo tenantId a empresa e filial que devem ser enviados no HEADER da requisição HTTP, como no exemplo abaixo:

GET /res/sample
Host: localhost:8080
Accept: application/json
tenantId: T1,D MG 01



Caso o campo tenantId não seja enviado a requisição será processada pela primeira working thread disponível de qualquer empresa.



  • Sem rótulos

5 Comentários

  1. Estou precisando subir apenas 2 grupos de um total de 5 grupos, como faço? 

    1. Olá Charles, boa noite. Você vai ter que construir duas 'httpuri' diferentes para cada grupo. 

      Exemplo:

      [HTTPREST]
      Port=92
      URIs=HTTPURI,HTTPURI2
      SECURITY=1

      [HTTPURI]
      URL=/rest
      PrepareIn=18,D MG 01
      OnStart=REST_START
      OnConnect=REST_CONNECT
      OnExit=REST_EXIT
      Instances=1,5,2,1
      CORSEnable=1
      AllowOrigin=*

      [HTTPURI2]
      URL=/uri2
      PrepareIn=19,D RJ 01
      OnStart=REST_START
      OnConnect=REST_CONNECT
      OnExit=REST_EXIT
      Instances=1,5,2,1
      CORSEnable=1
      AllowOrigin=*

  2. Bom dia, consigo passar o tenantId somente com a empresa? para pegar a working thread aleatória mas da empresa enviada?


    1. Olá, boa tarde.

      Sim. Você pode passar somente o Grupo de empresas (e neste caso ele vai cair em uma filial configurada no preparein) ou passar o grupo,filial caso queira processar em um par específico de Grupo  e filial.

      Abs!

  3. Como fazer para enviar mais de uma filial no PrepareIn?