Str em ADVPL — Como Converter Número em String

Tempo de leitura: 3 minutos

No dia a dia do desenvolvedor Protheus, a conversão de tipos de dados é uma das tarefas mais recorrentes. Seja para exibir um valor numérico em uma mensagem de alerta ou para concatenar um código com uma descrição, você precisará transformar números em texto. A função Str em ADVPL é a ferramenta nativa para essa finalidade, sendo um pilar essencial em Fundamentos do ADVPL.

 

Neste guia objetivo, vamos entender como a Str funciona, seus parâmetros de tamanho e decimais, e como utilizá-la corretamente em suas customizações no Protheus.

 

O que é a função Str e para que serve?

A função Str em ADVPL converte um valor numérico para uma variável do tipo caractere (String). Diferente da StrZero, que preenche com zeros à esquerda, a Str mantém os espaços em branco caso o tamanho definido seja maior que o número convertido.


Sintaxe:

Str(nNum,nTam,nDec)

 

Parâmetros(s):

 

Objetivo:

Realizar a conversão de um tipo Numérico em String formatada de acordo com os parâmetros passados.

 

Retorno:

 

Exemplo:

Str(19,5,2) -> “19.00”

No exemplo acima utilizamos a função Str e informamos como parâmetro a função o valor para o primeiro parâmetro(19), o tamanho da variável(5) e no terceiro parâmetro(2) o número de casas decimais.

 

Exemplo da função Str em ADVPL:

#include 'protheus.ch'
/*{Protheus.doc} User Function fStr
    (Essa função tem por finalidade mostrar a função de conversão de tipos de dados Str em ADVPL/TL++.)
    @type  Function
    @author Adilio Costa
    @since 15/07/2023
    @version 1.0
@?Inscreva-se no Blog ProtheusAdvpl:
https://www.protheusadvpl.com.br
@?Inscreva-se no Canal ProtheusAdvpl:
https://www.youtube.com/protheusadvpl
@?Siga-nos no Instagram:
https://www.instagram.com/protheusadvpl
@?Conheça os Cursos e Formações do ProtheusAdvpl:
https://cursos-e-formacoes-protheusadvpl.gr-site.com/

|Se esse conteúdo foi útil pra você nos ajude divulgando
ele e nossas redes sociais!!|
*/
User Function fStr()

	Local nNum := 19
	Local nTam := 8
	Local nDec := 2

	Local cVar := Str(nNum,nTam,nDec)


	MsgAlert("Variável numérica usando Str:"+cVar)

Return


Exemplo da função Str em ADVPL.

 

Para dominar este conceito em cenários complexos, com aulas em vídeo e suporte especializado, conheça o Portal ProtheusAdvpl. Lá, exploramos a fundo a arquitetura por trás desta função e suas aplicações em grandes projetos.

 

Diferença entre Str e AllTrim

Um erro comum entre iniciantes é esquecer que a Str adiciona espaços à esquerda para completar o tamanho definido. Para remover esses espaços e deixar apenas o conteúdo, é comum utilizar a função Str em conjunto com a AllTrim:

 

cResultado := AllTrim( Str( nValor ) )

 

Essa combinação garante que o texto fique limpo para ser usado em relatórios ou títulos de janelas.

 

Conclusão

A função Str em ADVPL é uma ferramenta básica, mas indispensável para qualquer desenvolvedor Protheus. Ela garante que a comunicação entre dados numéricos e interfaces de texto ocorra sem erros de tipo. Ao entender o uso correto dos parâmetros de tamanho e decimais, você evita falhas visuais e garante a precisão das informações exibidas ao usuário final.

 

Links de referência(s):

 

Conteúdos relacionados

 
🚀 Quer evoluir no ADVPL de verdade?

Receba conteúdos práticos, códigos prontos e dicas que você 

 não aprende na documentação oficial

✔ Funções essenciais do ADVPL
✔ Exemplos reais usados no Protheus
✔ Dicas de debug e performance

🔐 Seu email está seguro. Sem spam.

 

É isso aí, finalizamos aqui o post sobre a função ADVPL Str, caso tenha ficado alguma dúvida deixe seu comentário ou me envie um email para adiliocosta@protheusadvpl.com.br, até um próximo post, grande abraço e fica com Deus.

 

 

 

🚀 Quer dominar o Protheus de verdade?
Entre para o ProtheusAdvpl e receba conteúdos exclusivos sobre desenvolvimento, infraestrutura, módulos e carreira no Protheus

✔ Conteúdos organizados por categorias (Programação, Framework, Backoffice e RH)
✔ Dicas práticas usadas no dia a dia do Protheus
✔ Acesso a materiais, post e atualizações do Blog
🔐 Seu email está seguro. Sem spam. Só conteúdo profissional.