Patrocinado por
Patrocinado por Inetum

Usar & em textos de SAPScript

images/thumbnail.png - Thumbnail

Imagina que queres mostrar um url num formulário. Colocas o url no texto do formulário e partes do princípio que tudo correrá bem. Porque, de facto, geralmente tudo corre bem. Só que às vezes…

Doença

Se experimentares usar este url:

https://era.uma.vez?ums=mulher&com=cara&de=bolacha

No formulário vai aparecer isto:

https://era.uma.vez?ums=mulherde=bolacha

Estranho, não é? Pois.

Diagnóstico

Não é nada óbvio mas o problema é que as variáveis em SAPScript estão balizadas por &:

O meu nome é &SY-UNAME&.

O SAPScript olha para aquele url e vê lá a variável &com=cara& no meio e substitui-a pelo seu conteúdo. Mas como esta variável não é variável nenhuma, o seu conteúdo não é coisa nenhuma também. E o resultado é que a falsa variável e os dois & desaparecem sem deixar rasto.

Tratamento

A solução é garantir que o SAPScript sabe que aqueles & são mesmo &. E para isso é preciso usar esta sequência de escape:

<(>&<)>

É estranho? É. Funciona? Funciona. Não pentes mais nisso. Toma nota e segue viagem.

Portanto, o url lá de cima deverá ficar assim:

https://era.uma.vez?ums=mulher<(>&<)>com=cara<(>&<)>de=bolacha

Problema resolvido.

Obrigado David Ralo!

O Abapinho saúda-vos.