TECNOLOGIA - MIddleware - Como identificar em regras LSP que a execução está sendo realizada no Middleware (através de um WebService ou Web 5.0)
Dúvida
Como identificar em regras LSP que a execução está sendo realizada no Middleware (através de um WebService ou Web 5.0)
Solução
Para identificar na execução de regras LSP que a execução do processo está sendo realizada através de uma instância do Middleware (através de um WebService ou Web 5.0), verifique as informações abaixo.
Importante
Web 5.0 são todas as funcionalidades atreladas ao recurso Web 5.0. No sistema Gestão Empresarial | ERP, por exemplo, o SapiensWeb e o SeniorSID são funcionalidades atreladas a Web 5.0.
Verifique primeiramente abaixo as variáveis disponíveis para as tratativas nas regras
Função de Tecnologia G5/G6 (disponíveis em todos os sistemas dessas plataformas)
A função WSInstanciaServico() é utilizada para identificar se a execução da regra está sendo efetuada através de uma instância do Middleware (dentro da chamada de um WebService, por exemplo).
Clique aqui para acessar a documentação dessa função.
Importante
Esta função só possuirá um retorno positivo (indicando que a execução é no Middleware) se a execução da regra estiver sendo de fato efetuada no Middleware. Isso quer dizer que se a regra LSP for acionada pelo WebService na execução em Modo Local, a função WSInstanciaServico() não indicará uma execução no Middleware. Essa indicação ocorrerá somente se o WebService estiver sendo executado em Modo Síncrono, Modo Assíncrono ou Modo Agendado (modos que passam pelo Middleware).
Variáveis para produto Gestão Empresarial | ERP Gestão Empresarial PME | GOUP
Para este produtos, existem duas variáveis para identificar se o sistema está sendo executado em plataforma Web 5.0:
- AmbWeb: esta é uma variável disponível em todo o sistema. Clique aqui para acessar a documentação desta variável;
- VsExeWeb: esta variável está disponível em alguns identificadores de regras apenas, e tem a mesma funcionalidade da variável AmbWeb. Verifique na documentação do identificador de regras que você está utilizando se essa variável está disponível.
Variáveis para produtos Gestão de Pessoas | HCM e Ronda Senior
Para este produtos, apenas uma variável para identificar se o sistema está sendo executado em plataforma Web 5.0:
- VerWeb: esta função está disponível em todos os módulos documentados. Clique aqui para acessar a documentação desta variável.
Agora que você já tem as informações sobre os conceitos das funções e variáveis disponibilizadas pelos sistemas, abaixo você encontrará um exemplo de uma regra compatível com o produto Gestão Empresarial | ERP que já tem uma tratativa para validar se a execução da regra está sendo efetuada tanto no WebService como no Web 5.0.
Esse exemplo pode ser utilizado para tratar situações como, por exemplo, evitar mensagens de retorno em regras na execução da mesma nessas instâncias do Middleware, evitando travamento do processo.
@ Testa se a chamada é um WebService ou de ambiente Web - utilizadas a variável xServicoWeb @
@ Valor 1 (um) é uma instância de WebService ou Web.@
@ Valor 0 (Zero) é uma aplicação normal. @
Definir numero xServicoWeb;
se(WSInstanciaServico())
xServicoWeb =1;
senao
se (AmbWeb = 1)
xServicoWeb = 1;
senao
xServicoWeb =0;
No exemplo acima, você pode identificar que a variável xServicoWeb terá o retorno de valor 1 quando a execução estiver ocorrendo ou via WebServices (função WSInstanciaServico) ou via Web 5.0 (variável AmbWeb).
Por final, verifique
1. Acesse a regra em que você precisa fazer as tratativas;
2. Realize as alterações na regra, gerando condições para que partes das regras que não podem ser executadas em instâncias de WebServices/Web 5.0.
Para mais informações sobre os WebServices do Gestão Empresarial | ERP, consulte o artigo ERP - WebServices - Onde é possível encontrar informações diversas sobre processo de integração via WebServices (índice).