¡Caminando hacia el éxito!

Aprende en Comunidad

Avalados por :

Converter número de série alfanumérico em texto no Crystal Reports: Como conseguir?

  • Creado 01/03/2024
  • Modificado 01/03/2024
  • 8 Vistas
0
Cargando...

Olá a todos,

Estou de volta com uma dúvida,

Tenho o campo número de série do artigo, que é alfanumérico. Preciso colocá-lo no meu formato de Crystal Reports, mas preciso que os números contidos no meu número de série sejam convertidos em texto.

Por exemplo:

Se meu número de série for AD654HG87D9

Preciso exibi-lo como: A D SEIS CINCO QUATRO H G OITO SETE D NOVE

Sei que preciso de uma função que percorra meu campo para localizar se é número ou letra, mas as funções que encontrei só funcionam com campos inteiros.

Alguém já fez isso ou sabe que função poderia me ajudar?

Saudações e desde já, obrigado.

Pedro Pascal
Se unió el 07/03/2018
Pinterest
Telegram
Linkedin
Whatsapp

2 Respuestas

0
Cargando...

Olá Luna

Você já tentou usar a função "InStr"

Ação

A função InStr retorna a posição da primeira ocorrência de uma cadeia de caracteres dentro de outra. Esta posição é um índice baseado em 1 dos caracteres na cadeia1. Se a cadeia2 não for encontrada na cadeia1, a função InStr retorna 0. O argumento de início define a posição de início para a busca. Se o argumento de comparação não for usado, a comparação de cadeias distinguirá maiúsculas de minúsculas.

Uso(s) típico(s)

Use esta função para determinar se uma cadeia contém outra.

Exemplos

Os seguintes exemplos são aplicáveis tanto à sintaxe Basic quanto Crystal:

InStr("abcdefg", "bcd")

Retorna 2.

InStr(3, "abcdefg", "cde")

Retorna 3.

InStr("KarenJudith","karen",1)

Retorna 1. Observe que, como o argumento de comparação é igual a 1, a comparação não diferencia maiúsculas de minúsculas.

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Olá, Luna!

Existe a função TOWORDS que converte em letras o número que for indicado. Se seus números de série têm um comprimento fixo, você poderia criar uma fórmula que percorre cada letra com um loop while ou for e, quando encontrar um caractere numérico, aplique a função TOWORDS.

Outra opção é utilizar a função MID (similar ao substring em SQL) para cada posição da sua cadeia de números de série e, com um IF, avaliar se a função TOWORDS deve ser aplicada (por exemplo, se seus números de série têm 10 posições, você usaria a função MID 10 vezes com o IF correspondente).

Exemplo:

(Se Mid(campo,1, 1) >= 0 então TOWORDS(Mid(campo1,1) else Mid(campo,1,1))

+

(Se Mid(campo,2, 1) >= 0 então TOWORDS(Mid(campo2,1) else Mid(campo, 2,1))

+

........


Esta seria a forma longa se você não estiver usando um loop while.

Recomendo consultar a ajuda do Crystal para obter mais informações sobre as funções TOWORDS e MID.

Como mencionei, tudo depende se você tem uma nomenclatura específica para seus números de série.

Saudações e boa sorte!

JC.

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019

contacto@primeinstitute.com

(+51) 1641 9379
(+57) 1489 6964

© 2024 Copyright. Todos los derechos reservados.

Desarrollado por Prime Institute

¡Hola! Soy Diana, asesora académica de Prime Institute, indícame en que curso estas interesado, saludos!
Hola ¿Puedo ayudarte?