Função ToText Crystal Reports

Loading

ToText Crystal Report
ToText Crystal Report
  • There is an error in this formula. Do you want to save it anyway?
  • Existe um erro na fórmula. Você quer salvá-lo de qualquer maneira?
  • A string is required here.
  • Uma string é necessária aqui.

A função ToText pode ser usado para converter número, data, boolean, ou valores de tempo para uma string (texto). Ele fornece controles que permitem controlar a forma como a cadeia resultante parece.

É usado principalmente para de concatenação (por exemplo, você pode criar um título para o relatório que mostra os registros coberto, ou um nome de grupo que mostra o intervalo de datas incluídas).

  • Adicionar parâmetros para um título de relatório
  • Controlar a forma como os nomes de grupos aparecer (você pode forçar as suas datas para aparecer no formato de 3/7/10 ou 20100901.

No meu caso por exemplo, estava tentando criar um título concatenando algumas informações:

'Grupo: '+{CONSULTA_PRINCIPAL.GRUPO}+'  -  '+ {CONSULTA_PRINCIPAL.DESCRIÇÃO DO GRUPO} + {CONSULTA_PRINCIPAL.ANO}

E o erro “A string is required here.” ou “Uma string é necessária aqui.” me retornava.

Esse erro estava atrelado a informação de ANO, como esta concatenando, precisava traduzir tudo com string, e para isso é necessário acrescentar ToText antes de {CONSULTA_PRINCIPAL.ANO}, e o resultado fica assim:

'Grupo: '+{CONSULTA_PRINCIPAL.GRUPO}+'  -  '+ {CONSULTA_PRINCIPAL.DESCRIÇÃO DO GRUPO} + ToText({CONSULTA_PRINCIPAL.ANO},0,"")

Vamos ver mais sobre a função ToText

ToText para valores booleanos

Sintaxe
ToText (x)
VEJA TAMBÉM:   Tradução do MediaWiki para Português Brasil

Exemplos

Exemplo Resultar
ToText ({Concluído}) Verdadeiro quando o campo Concluída é verdade.False quando o campo Concluída é falsa.

ToText para números (e moedas)

Sintaxe Variável Opcional
ToText (x, y, z, w) x O número de converter em texto
y O número de casas decimais a incluir no resultado (opcional). O valor será arredondado para que a casa decimal.
z O personagem a ser usado como separador de milhares. Se você não especificar um, ele vai usar o seu padrão de aplicação. (Opcional)
w O personagem a ser usado como separador decimal. Se você não especificar um, ele vai usar o seu padrão de aplicação.(Opcional)

Exemplos

Exemplo Resultar
ToText (12345.678) “12345.678”
ToText (12345.678,2) “12.345,67”
ToText (12345.678,0) “12345”
ToText (12345.678, 0, ‘,’, ‘.’) “12,345.67”
ToText (12345.678,0, “”) “12345”
“O tempo registrado para a Mudança #” & ToText (12345.567,0, “”) “O tempo registrado para a Mudança # 12345”

ToText para datas

Sintaxe Variável Opcional
ToText (x, y) x O valor de data a ser convertido.
y Uma cadeia de texto que define como o valor a ser formatado.(Opcional)

Exemplos (onde datefield = 15 janeiro de 2011)

Exemplo Resultar
ToText (datefield {} “, yyyymm”) “201101”
ToText (datefield {}, “dd-MMM-yyyy”) “15-Jan-2011”
ToText (datefield {}, “DD MMM yyyy”) “15 de janeiro de 2011”
ToText (datefield {}, “MM / dd / aa”) “01/15/11”
ToText (datefield {}, “dddd, MMM d, yyyy”) “Sábado, 1 de janeiro, 2011”
VEJA TAMBÉM:   Banco de Dados Não Relacionais NoSQL

Isto parece um pouco confuso no início. Às vezes pode retornar o dia da semana e às vezes eles retornam um número. Isto é porque o formato é determinado pelo padrão específico:

Padrão Resultar
d Dia numérico do mês sem zero à esquerda (1, 7, 31)
dd Dia numérico do mês, com zero à esquerda (01, 07, 31)
ddd Três abreviatura dia do dia da semana (Mon, Sat)
dddd O nome completo do dia da semana (segunda-feira, Sábado)
M Mês numérico sem o zero à esquerda (1, 7, 12)
MM Mês numérico com zero à esquerda (01, 07, 12)
MMM Três abreviatura carta do mês (janeiro, fevereiro, março)
MMMM Nome completo do mês (janeiro, fevereiro, março)
yy Dois últimos dígitos do ano (11, 14, 22)
aaaa Total de quatro dígitos do ano (2011, 2014, 2022)

 

ToText para tempos

Sintaxe Variável Opcional
ToText (x, y, z, w) x O valor de tempo a ser convertido.
y Uma cadeia de texto que define como o valor a ser formatado.(Opcional)
z Uma cadeia de texto que define a string AM. (Opcional)
w Uma cadeia de texto que define a string PM. (Opcional)
VEJA TAMBÉM:   Script Java Script para cálculo de IMC

Exemplos (onde TimeField = 14:43:23)

Exemplo Resultar
ToText (TimeField {}, “HH: mm: ss”) “14:43:23”
ToText (TimeField {}, “hh: mm: ss tt”) “02:43:23”
ToText (TimeField {}, “h * mm * ss tt”, ‘sou’, ‘pm’) “2 * 43 * 23 horas”

Aqui estão os padrões usados ​​por ToText ao converter tempo:

Padrão Resultar
h Horas sem zeros à esquerda em formato de 12 horas (1, 7, 12)
hh Horas, com zeros à esquerda em formato de 12 horas (01, 07, 12)
H Horas sem zeros à esquerda em formato de 24 horas (1, 12, 17, 24)
HH Horas, com zeros à esquerda em formato de 24 horas (01, 12, 17, 24)
m Minutos sem zeros à esquerda (5, 15, 55)
mm Minutos, com zeros à esquerda (05, 15, 55)
s Segundos sem zeros à esquerda (5, 15, 55)
ss Segundos, com zeros à esquerda (05, 15, 55)
t, tt Inclui um único ou multi-caráter AM / PM string.

Se você quiser incluir qualquer um dos caracteres padrão em sua cadeia resultante, você pode. Você só precisa colocá-los entre aspas.

Com informações de http://crystaltricks.com/wordpress/?p=149

8 comentários em “Função ToText Crystal Reports”

  1. Elton Adriano Pering

    Olá !

    Você sabe como incrementar um campo de data com mês em uma fórmula no Crystal Report ?

    por exemplo. tenho um campo do tipo data no Banco de dados.

    ’01/01/2014′

    gostaria de incrementar mais 18 meses nessa data.

    atenciosamente.

  2. Olá tenho uma consulta no meu relatório que retorna as datas assim:
    01/01/2014
    01/02/2014
    01/03/2014
    Preciso que sejam mostradas em linha assim:
    01/01/2014 – 01/02/2014 – 01/03/2014

    Você poderia me ajudar, estou sem nenhuma informação de como resolver.

    Obrigado

    1. Olá Daniel,

      Se você deseja os resultado em uma mesma linha, você pode concatenar os resultados no Cristal. Se o concatenar não está resolvendo, passa para mim para dar uma olhada e ver no que posso ajudar.

  3. Bom dia!
    Ótimo artigo o seu. Estou trabalhando bastante com Crystal Reports e essa função vai me quebrar um galhão!

    Apenas me tire uma dúvida. Usei o ToText({param},”MMM”) para plotar um gráfico e no eixo aparecer a abreviação dos meses, mas agora ele organizar os dados na ordem alfabética dos meses e não sequencial, como resolver? Até alterei a ordem para “Na ordem original”, mas como estou plotando 3 anos em barras empilhadas, nessa opção ele “desempilha” os dados e coloca tudo em sequencia.

    Obrigado!

Deixe um comentário

Índice
Rolar para cima