Como quebrar string no ABAP
Como quebrar string no ABAP sem usar SPLIT e com uma quantidade limite de caracteres? Descubra nesse post.
Caso tenha a necessidade de colocar, por exemplo, um texto limitado a 10 caracteres no máximo em uma coluna de tabela ou em um smartforms e possui uma texto maior, quebre-o de maneira simples com as funções abaixo.
- SOTR_SERV_STRING_TO_TABLE – Quebra a string;
- SOTR_SERV_TABLE_TO_STRING – Concatena a string;
Essas funções são simples de serem utilizadas, veja só.
Exemplo:
CALL FUNCTION ‘SOTR_SERV_STRING_TO_TABLE’
EXPORTING
text = vl_texto “String que será ‘quebrada’
flag_no_line_breaks = abap_true “Retira o caracter de final de linha
line_length = 10 “Quantidade de caracteres
langu = syst–langu “Idioma
TABLES
text_tab = tl_texto_quebrado. “Idioma

No exemplo passado, fixamos a quantidade de caracteres em 10 para fins demonstrativos, mas, você pode por exemplo buscar nas definições do elemento de dados da estrutura que se estiver trabalhando e passar a quantidade de caracteres para a função.
Existe também a função que faz o contrário, concatenando uma tabela em uma unica string. Baixe o programa com um exemplo completo aqui.
Concluindo… espero que seja útil pra você como esse post também foi.
Se você conhece outra maneira de quebrar string, deixe nos comentários.
Abraços,
LNunes