Partilhar via


Tipos de dados primitivos suportados para fórmulas de Relatórios eletrónicos

Este tópico fornece informações sobre os tipos de dados primitivos suportados nas expressões de Relatórios eletrónicos (ER). Aqui está uma lista dos tipos de dados primitivos:

Booleano

O tipo de dados primitivos booleano contém um valor avaliado como verdadeiro ou falso. Pode utilizar as palavras-chave literais reservadas Verdadeiro e Falso onde quer que seja esperada uma expressão booleana. O valor predefinido é falso.

A representação interna de um booleano é um número inteiro. O valor número inteiro 0 (zero) é avaliado como falso e todos os outros valores número inteiro são avaliados como verdadeiro. Quando valida uma expressão configurada que devolve um booleano no estruturador de fórmulas de ER, o painel de resultados do teste apresenta 0 (zero) quando uma expressão devolve falso. Caso contrário, o painel de resultados do teste apresenta 1.

Um booleano não tem conversões implícitas. Contudo, pode utilizar a função TEXT para converter explicitamente um booleano numa cadeia:

  • O valor falso é convertido para a cadeia de texto Falso.
  • O valor verdadeiro é convertido para a cadeia de texto Verdadeiro.

Nota

Esta conversão não depende do contexto do idioma e da cultura fornecido.

Os operadores de comparação são o único tipo de operador que pode ser utilizado com o tipo de dados booleano. Os seguintes operadores podem ser utilizados para comparar dois valores booleano: <> e =.

Data

O tipo de dados primitivos data contém o dia, o mês e o ano. As datas podem ser iniciadas utilizando as seguintes funções:

O tipo de dados data pode conter datas entre 1 de janeiro de 1900 e 31 de dezembro de 2154. O valor predefinido é nulo e a representação interna é a data de 1 de janeiro de 1900.

Uma data não tem conversões implícitas. Contudo, pode utilizar as seguintes funções de conversão explícitas:

A função ADDDAYS permite adicionar e subtrair dias de datas. Desta forma, pode mover a data um número específico de dias para o futuro e o passado. A função DAYS permite subtrair datas entre si e calcular a diferença em dias. Para obter mais informações sobre a transformação dos valores data, consulte Lista de funções de ER na categoria de Data e hora.

Os operadores de comparação são o único tipo de operador que pode ser utilizado com o tipo de dados data. Os seguintes operadores podem ser utilizados para comparar dois valores data: <>, <, <=, =, > e >=.

Datetime

O tipo de dados primitivos datetime combina o tipo data e um valor que representa a hora que passou desde a meia-noite. A hora é expressa em horas, minutos, segundos e frações de segundo. Um valor datetime também contém informações sobre o fuso horário.

O tipo de dados datetime pode conter datas entre 1 de janeiro de 1900 (1900-01-01T00:00:00.0000000+00:00 no formato circular) e 31 de dezembro de 2154 (2154/12/31T11:59:59.9999999+00:00 no formato circular). A unidade de tempo mais pequena em datetime é dez milionésimos de segundo.

Nota

Quando o especificador hh é utilizado para as horas, os valores superiores a 12:59:59:9999999 não podem ser interpretados como horas válidas.

Quando o especificador HH é utilizado para as horas, os valores superiores a 23:59:59:9999999 não podem ser interpretados como horas válidas.

O valor predefinido é nulo e a representação interna é a data 1 de janeiro de 1900 (1900-01-01T00:00:00.0000000+00:00 no formato circular).

Os datetimes podem ser iniciados utilizando as seguintes funções:

Um datetime não tem conversões implícitas. Contudo, pode utilizar as seguintes funções de conversão explícitas:

Para obter mais informações sobre a transformação dos valores datetime, consulte Lista de funções de ER na categoria de Data e hora.

Os operadores de comparação são o único tipo de operador que pode ser utilizado com o tipo de dados datetime. Os seguintes operadores podem ser utilizados para comparar dois valores datetime: <>, <, <=, =, > e >=.

Enumeração

O tipo de dados primitivos enumeração é uma lista de literais. Pode utilizar enumerações definidas no código fonte da aplicação. Também pode introduzir as suas próprias enumerações no modelo de dados de ER e componentes de formato de ER.

Uma enumeração da aplicação pode ser utilizada em expressões de qualquer mapeamento de modelos de ER e formato de ER.

A ilustração seguinte mostra como pode adicionar a enumeração do modelo CustVendCorrectiveReasonCode ao modelo de dados de ER editável.

A configurar uma enumeração do modelo no estruturador de modelos de dados de ER.

Uma enumeração do modelo pode ser utilizada em expressões de qualquer mapeamento de modelos de ER e formato de ER que foram criados sob um modelo de dados onde a enumeração foi introduzida.

A ilustração seguinte mostra como pode adicionar a enumeração de formato Lista de subcategorias de autoliquidação Natura ao formato editável de ER.

A configurar uma enumeração de formato no estruturador de formatos de ER.

Uma enumeração de formato apenas pode ser utilizada em expressões do formato de ER onde a enumeração foi introduzida.

Tem de utilizar o tipo apropriado de origens de dados de ER para obter uma enumeração específica para um componente de ER configurado como uma constante ou como um valor que o utilizador que está a executar uma solução de ER definiu na caixa de diálogo durante a execução.

  • As enumerações da aplicação podem ser acedidas utilizando as origens de dados do Dynamics 365 for Operations \ Enumeração e Geral \ Parâmetros de entrada de utilizador. A ilustração seguinte mostra como pode adicionar ao formato editável de ER as origens de dados appenumNoYes e uipNoYes que se referem à enumeração da aplicação NoYes.

    A adicionar origens de dados de enumeração da aplicação no estruturador de formatos de ER.

  • As enumerações de modelo de dados podem ser acedidas utilizando as origens de dados Modelo de dados \ Enumeração e Modelo de dados \ Parâmetros de entrada de utilizador da enumeração. A ilustração seguinte mostra como pode adicionar ao formato editável de ER a origem de dados CustVendCorrectiveReasonCode que se refere à enumeração do modelo de dados CustVendCorrectiveReasonCode.

    A adicionar origens de dados de enumeração do modelo no estruturador de formatos de ER.

  • As enumerações de formato podem ser acedidas utilizando as origens de dados Formato \ Enumeração e Formato \ Parâmetros de entrada de utilizador da enumeração. A ilustração seguinte mostra como pode adicionar ao formato editável de ER a origem de dados NaturaReverseCharge que se refere à enumeração de formato Subcategorias de autoliquidação Natura.

    A adicionar origens de dados de enumeração de formato no estruturador de formatos de ER.

Uma enumeração não tem conversões implícitas. Contudo, pode utilizar a função de conversão TEXT para converter uma enumeração numa cadeia de texto. Esta conversão não é dependente de idiomas. Para saber como pode associar um valor enumeração com as etiquetas específicas de idiomas apropriadas, consulte os exemplos de utilização para as funções LISTOFFIELDS e GETENUMVALUEBYNAME.

Os operadores de comparação são o único tipo de operador que pode ser utilizado com o tipo de dados enumeração. Os seguintes operadores podem ser utilizados para comparar dois valores enumeração: <> e =.

Guid

O tipo de dados primitivos guid inclui um valor de identificador exclusivo global (GUID). Um GUID é um valor que pode ser utilizado em todos os computadores e redes, onde quer que seja necessário um identificador único. É improvável que o número seja duplicado. Um GUID válido cumpre todas as seguintes especificações:

  • Tem de ter 32 dígitos hexadecimais.
  • Além disso, tem de ter quatro carateres de travessão que estão incorporados nas seguintes localizações: 8-4-4-4-12.
  • Além disso, as chavetas opcionais {} podem ser adicionadas no início e no fim da cadeia. Por exemplo, {2CDB0FE7-D7B3-4938-A0F0-FE28F8FE212} e 2CDB0FE7-D7B3-4938-A0F0-FE28F8FE212 são cadeias GUID válidas.
  • Portanto, tem de ter um total de 36 ou 38 carateres, consoante as chavetas sejam adicionadas.
  • As letras utilizadas como dígitos hexadecimais podem ser maiúsculas (A-F), minúsculas (a-f) ou mistas.

As seguintes funções de conversão explícitas podem ser utilizadas:

Os operadores de comparação são o único tipo de operador que pode ser utilizado com o tipo de dados guid. Os seguintes operadores podem ser utilizados para comparar dois valores guid: <> e =.

Número Inteiro

O tipo de dados primitivos número inteiro representa um número sem casas decimais. Os números inteiros são utilizados como variáveis de controlo em instruções repetitivas ou como índices em listas de registos.

Um literal número inteiro é o número inteiro, porque é introduzido diretamente numa expressão de ER (fórmula), tal como 12345. Um número inteiro tem 32 bits de largura. O valor predefinido é 0 e a representação interna é um número longo. Um número inteiro é automaticamente convertido para real.

Além disso, as seguintes funções de conversão explícitas podem ser utilizadas:

O intervalo de um número inteiro é [-2.147.483.647: 2.147.483.647]. Todos os números inteiros deste intervalo podem ser utilizados como literais.

Todos os operadores de comparação e matemática podem ser utilizados com o tipo de dados número inteiro.

Int64

O tipo de dados primitivos int64 representa um número sem casas decimais. Os valores Int64 são utilizados como variáveis de controlo em instruções repetitivas ou como identificadores de registos.

Um int64 tem 64 bits de largura. O valor predefinido é 0 e a representação interna é um número longo. Um int64 é automaticamente convertido para real.

Além disso, as seguintes funções de conversão explícitas podem ser utilizadas:

O intervalo de um int64 é [-9,223,372,036,854,775,807: 9,223,372,036,854,775,807].

Todos os operadores de comparação e matemática podem ser utilizados com o tipo de dados int64.

Real

O tipo de dados primitivos real pode conter valores decimais além dos números inteiros. Pode utilizar literais decimais onde seja esperado um real. Um literal decimal é o decimal, porque é introduzido diretamente em código, tal como 2,19.

Nota

Nas expressões de ER, uma vírgula (,) é sempre utilizada como separador decimal.

Os reais podem ser utilizados em todas as expressões e podem ser utilizados com operadores de comparação e aritmética. Um real tem uma precisão de 16 dígitos significativos. O valor predefinido para um real é 0,0 e a representação interna é um número binary-coded digital (BCD). A codificação BCD permite representações exatas de valores múltiplos de 0,1. O intervalo de uma variável real é -(10)127 até (10)127. Todos os reais deste intervalo podem ser utilizados como literais em expressões de ER.

Um real não tem conversões implícitas. Contudo, pode utilizar as seguintes funções para converter explicitamente um real para outros tipos de dados e outros tipos de dados para um real:

Todos os operadores de comparação e matemática podem ser utilizados com o tipo de dados real.

Cadeia

O tipo de dados primitivos cadeia representa uma sequência de carateres utilizados como textos, números de conta, endereços e números de telefone.

Os literais cadeia são carateres incluídos em aspas (""). Os literais cadeia podem ser utilizados sempre que os valores cadeia são esperados nas expressões de ER. Pode utilizar cadeias em expressões lógicas, tais como comparações. Também pode concatenar os valores cadeia utilizando o operador & ou a função CONCATENATE.

Nota

Se concatenar dois valores cadeia e pretender que a cadeia resultante abranja mais do que uma linha, utilize o separador de quebra de linha entre os valores. Para o resultado TEXTO, este separador pode ser um caráter gerado utilizando a expressão CHAR(10) ou CHAR(13). Para HTML, pode ser a etiqueta <br>.

O valor predefinido para uma cadeia é uma cadeia de texto em branco sem carateres e a representação interna é uma lista de carateres.

Não existem conversões automáticas para cadeias. Contudo, as seguintes funções de conversão explícitas podem ser utilizadas:

Para obter mais informações sobre a transformação dos valores cadeia, consulte Lista de funções de ER na categoria de texto.

Uma cadeia pode conter um número indefinido de carateres.

Todos os operadores de comparação podem ser utilizados com o tipo de dados cadeia.

Recursos adicionais