Pessoal, bom dia!
Antes com o REST 1.0 abríamos o ambiente diretamente na API com RpcSetEnv(). Com ele podíamos definir um módulo e as tabelas deste módulo já eram abertas e ficavam disponíveis para uso.
Agora com o REST 2.0, usando os recursos de annotations do tlpp, configuramos a abertura do ambiente no INI do ambiente via chave PREPAREIN.
Meu problema: A partir da mudança, algumas rotinas (principalmente execautos) passaram a retornar erro por tentar tratar tabelas não abertas (Alias does not exists XXX). Tive um problema específico com a função "Condicao()" que retorna o vencimento de uma condição de pagamento no financeiro(função padrão).
Contornei abrindo as tabelas manualmente na abertura da thread da API, mas tenho que fazer isso sob demanda a cada vez que da um erro com uma tabela específica. Exemplo: Primeiro ocorreu erro com a tabela SM2, depois CC7, depois SEC, e por ai vai. A cada nova execução uma tabela da erro e eu trato manualmente.
Conhecem alguma forma de deixar todas as tabelas do módulo disponíveis no REST 2.0 como havia antes com o RpcSetEnv?
Att,
Wanderley, poderia por favor anexar o seu INI? O REST tem o ambiente aberto e o Protheus tem um mecanismo de abrir as tabelas sobre demanda há muitos anos, décadas pra ser mais exato, logo você com certeza tem algum problema em seu ambiente ou em sua API.
— Daniel Mendes 05 de Jan de 2024Você tem apenas um grupo de empresas?
— Daniel Mendes 08 de Jan de 2024Isso, hoje trabalhamos com uma empresa (01) e várias filiais. As filiais são informadas na requisição através do header tenantId.
— Wanderley R. Neto 08 de Jan de 2024Bom dia pessoal, identificaram alguma configuração incorreta?
— Wanderley R. Neto 10 de Jan de 2024