Função de ER GETENUMVALUEBYNAME
A função GETENUMVALUEBYNAME
pesquisa um valor Enum específico na origem de dados da enumeração especificada utilizando o nome da enumeração especificado como um valor Cadeia. Se o valor Enum for localizado, a função devolve-o. Caso contrário, a função devolve o valor de enumeração nulo.
Sintaxe
GETENUMVALUEBYNAME (enumeration data source path, enumeration value text)
Argumentos
enumeration data source path
: Enumeração
O caminho válido de uma origem de dados de um dos seguintes tipos de enumeração:
- Enumeração do modelo de Relatórios eletrónicos (ER)
- Enumeração do formato de ER
- Enumeração do Microsoft Dynamics 365 Finance
enumeration value text
: Cadeia
Um valor de cadeia que representa o nome de um único valor de enumeração.
Valores de retorno
Enum pode ser nulo
O valor de enumeração resultante.
Notas de utilização
Nenhuma exceção é iniciada se um valor de Enum não for localizado utilizando o nome do valor de enumeração especificado como um valor Cadeia.
Exemplo 1
Na ilustração seguinte, uma enumeração ReportDirection é introduzida num modelo de dados. Tenha em atenção que as etiquetas estão definidas para os valores de enumeração.
A ilustração seguinte mostra estes detalhes:
- A origem de dados $Direction é configurada num relatório de ER. Esta origem de dados é configurada com base na enumeração do modelo ReportDirection.
- A expressão
$IsArrivals
foi estruturada para utilizar a origem de dados $Direction baseada na enumeração do modelo como parâmetro desta função. - O valor desta expressão de comparação é VERDADEIRO.
Exemplo 2
As funções GETENUMVALUEBYNAME
e LISTOFFIELDS
permitem obter valores e etiquetas de enumerações suportadas como valores de texto. (As enumerações suportadas são enumerações de aplicações, enumerações de modelos de dados e enumerações de formato.)
Na ilustração seguinte, uma origem de dados TransType é introduzida num mapeamento de modelos. Esta origem de dados refere-se à enumeração da aplicação LedgerTransType.
A ilustração seguinte mostra uma origem de dados TransTypeList configurada num mapeamento de modelos. Esta origem de dados é configurada com base na enumeração da aplicação TransType. A função LISTOFFIELDS
é utilizada para devolver todos os valores de enumeração como uma lista de registos que contêm campos. Desta forma, os detalhes de cada valor de enumeração são expostos.
Nota
O campo EnumValue é configurado para a origem de dados TransTypeList utilizando a expressão GETENUMVALUEBYNAME(TransType, TransTypeList.Name)
. Este campo devolve um valor de enumeração para cada registo desta lista.
A ilustração seguinte mostra uma origem de dados VendTrans configurada num mapeamento de modelos. Esta origem de dados devolve os registos de transações do fornecedor da tabela de aplicações VendTrans. O tipo de livro-razão de cada transação é definido pelo valor do campo TransType.
Nota
O campo TransTypeTitle é configurado para a origem de dados VendTrans utilizando a expressão FIRSTORNULL(WHERE(TransTypeList, TransTypeList.EnumValue = @.TransType)).Label
. Este campo devolve a etiqueta de um valor de enumeração da transação atual como texto, se este valor de enumeração estiver disponível. Caso contrário, devolve um valor de cadeia em branco.
O campo TransTypeTitle está vinculado ao campo LedgerType de um modelo de dados que permite que esta informação seja utilizada em todos os formatos de ER que utiliza o modelo de dados como origem de dados.
A ilustração seguinte mostra como pode utilizar o depurador de origem de dados para testar o mapeamento de modelos configurado.
O campo LedgerType de um modelo de dados expõe etiquetas de tipos de transações conforme esperado.
Se pretender utilizar esta abordagem para uma grande quantidade de dados transacionais, tem de considerar o desempenho da execução. Para obter mais informações, consulte Rastrear a execução de formatos de ER para resolver problemas de desempenho.
Recursos adicionais
Rastrear a execução de formatos ER para resolver problemas de desempenho