Bom dia,
sexta estava trabalhando em um webservices rest e notei um problema no tratamento de igualidade de strings, debugando fora do ambiente rest tudo funcionava de acordo então vi que o problema era realmente somente no REST onde o tratamento padrão de igualidade de strings estava diferente do protheus, o equivalente a SET EXACT OFF.
Sendo assim fui no meu fonte rest e coloquei o comando SET EXACT ON e o mesmo começou a trabalhar normalmente como esperado.
Sabendo disso pergunto se teve alguma mudança recente no rest relacionado a este tratamento e se existe como deixar o mesmo tratamento fora do rest e no rest.
Att.
Vinicius, qual REST você está utilizando?
— Daniel Mendes 28 de Sep de 2020Rest do protheus normal, se precisar de alguma informação extra me fale mas não sei bem o que te responder.
— VINICIUS GATI 28 de Sep de 2020Usando TLPP REST em 11/2023 e o problema me ocorreu. No meu caso estava fazendo uma comparação para verificar se uma variável era diferente de uma string, usei tanto o operador "<>" quanto o "!=" e ambos estavam utilizando comparação aproximada. Ou seja, apesar de "teste" ser diferente de "teste123", ele nunca entrava na minha condição, pois pra ele era igual. Somente resolveu quando defini "SET EXACT ON". Para garantir resolvi usar esse comando na inicialização do meu ambiente na função definida no OnStart do ThreadPool do TLPP REST.
— Thieres Tembra 08 de Nov de 2023