Chamadas empresas diferentes servidor REST

Pessoal uma dúvida de como proceder, estou com um serviço REST que faz o processamento de requisições de múltiplas empresas todas no mesmo banco de dados e ambiente. Como devo fazer para que o sistema entenda qual empresa deve ser carregada ?
Eu estava usando a carga manualmente dentro da customização, porém só funciona com uma empresa (01), quando ele processa algo na outra empresa no final do processo apresenta uma mensagem de erro no console e devolve como erro para a aplicação chamadora:

“Ocorreu o seguinte erro fatal: Houve uma troca indevida da variável cEmpAnt pela rotina. A troca da varíavel não pode ser realizada. A thread será finalizada.”

Detalhe que o REST é autenticado com usuário e senha já, mas preciso que ele entenda qual empresa deve processar a requisição.

3 curtidas

@cirilorocha boa tarde.

Primeiramente no ini do server do rest precisa ter a seguinte informação:

PrepareIn=All

E você pode passar no header da requisição a seguinte informação:

tenantid: empresa, filial

Exemplo:

image

Link da documentação: https://centraldeatendimento.totvs.com/hc/pt-br/articles/4410465974167-Cross-Segmento-TOTVS-Backoffice-Linha-Protheus-ADVPL-Abertura-de-ambiente-em-Web-Service

4 curtidas

Se seu quiser carregar apenas duas empresas no PREPAREIN será que consigo ? como seria a sintaxe @felipe.caiado ?

2 curtidas

@cirilorocha

A chave PrepareIn recebe somente:

  • Grupo
    • Grupo + Filial
    • ALL

Obs.: ALL equivale a basicamente todos os grupos de empresa que você possui na SM0.

Não é possível passar inúmeros valores de grupo e filial nessa chave, para situações como essa, a solução e trabalhar com mais de uma URI.

2 curtidas

@felipe.caiado valeu pela força, ajudou demais a resolver esse problema.

2 curtidas