Share via


Função GUID

Aplica-se a: Aplicativos de tela Fluxos da área de trabalho Aplicativos baseados em modelo Power Platform CLI

Converte uma cadeia de caracteres de GUID (identificador global exclusivo) em um valor de GUID ou cria um valor de GUID.

Descrição

Use a função GUID para converter uma cadeia de caracteres que contém a representação hexadecimal de um GUID em um valor de GUID que pode ser passado para um banco de dados. Os valores GUID são usados como chaves por sistemas de banco de dados, como Microsoft Dataverse e SQL Server.

A cadeia de caracteres passada pode conter letras maiúsculas ou minúsculas, mas precisa ter 32 dígitos hexadecimais em um dos seguintes formatos:

  • "123e4567-e89b-12d3-a456-426655440000" (hifens em locais padrão)
  • "123e4567e89b12d3a456426655440000" (sem hifens)

Se você não especificar um argumento, essa função criará um GUID.

Para converter um valor de GUID em uma cadeia de caracteres, basta usá-lo em um contexto de cadeia de caracteres. O valor de GUID será convertido em uma cadeia de caracteres de representação hexadecimal com letras minúsculas e hifens.

Ao gerar um novo GUID, essa função usa números pseudo aleatórios para criar um GUID RFC 4122 da versão 4 da IETF. Ao converter uma cadeia de caracteres em um GUID, essa função oferece suporte a qualquer versão de GUID aceitando qualquer cadeia de caracteres de dígitos hexadecimais de 32.

Funções voláteis

O GUID é uma função volátil quando usado sem um argumento. Cada vez que a função é avaliada, ela retorna um valor diferente.

Quando usada em uma fórmula de fluxo de dados, uma função volátil retornará um valor diferente apenas se a fórmula em que ela aparece for reavaliada. Se nada mais for alterado na fórmula, ela terá o mesmo valor durante toda a execução do aplicativo.

Por exemplo, um controle de rótulo cuja propriedade Text esteja definida como GUID() não será alterado enquanto o aplicativo estiver ativo. Apenas fechar e reabrir o aplicativo resultará em um valor diferente.

A função será reavaliada se fizer parte de uma fórmula em que algo tenha sido alterado. Se, por exemplo, definirmos a propriedade Text de um controle Label para essa fórmula, um GUID será gerado sempre que o usuário alterar o valor do controle Text input:

TextInput1.Text & " " & GUID()

Quando usado em uma fórmula de comportamento, o GUID será avaliado toda vez que a fórmula for avaliada. Para obter mais informações, confira os exemplos neste tópico.

Sintaxe

GUID( [ GUIDString ] )

  • GUIDString - opcional. Uma cadeia de texto que contém a representação hexadecimal de um GUID. Se não for fornecida nenhuma cadeia de caracteres, um novo GUID será criado.

GUID( Untyped )

  • Untyped - obrigatório. Objeto sem tipo que representa um GUID. Os valores aceitáveis dependem do provedor sem tipo. Para JSON, espera-se que o objeto sem tipo seja representado pelo GUID como uma cadeia de caracteres JSON.

Exemplos

Uso básico

Para retornar um valor de GUID com base na representação de cadeia de caracteres hexadecimal:

GUID( "0f8fad5b-d9cb-469f-a165-70867728950e" )

Você também pode fornecer a cadeia de caracteres de GUID sem hifens. Esta fórmula retorna o mesmo valor de GUID:

GUID( "0f8fad5bd9cb469fa16570867728950e" )

Usado no contexto, para definir o campo Status de um novo registro de banco de dados para um valor bem estabelecido:

Patch( Products, Default( Products ), { Status: GUID( "F9168C5E-CEB2-4faa-B6BF-329BF39FA1E4" ) } )

Não convém mostrar os GUIDs aos usuários, mas eles podem ajudá-lo a depurar seu aplicativo. Para mostrar o valor do campo Status no registro que você criou no exemplo anterior, defina a propriedade Text de um controle Label como esta fórmula:

First( Products ).Status

O controle Label exibirá f9168c5e-ceb2-4faa-b6bf-329bf39fa1e4.

Criar uma tabela de GUIDs

  1. Defina a propriedade OnSelect de um controle Button como esta fórmula:

    ClearCollect( NewGUIDs, ForAll( Sequence(5), GUID() ) )
    

    Essa fórmula cria uma tabela de coluna única que é usada para iterar cinco vezes, resultando em cinco GUIDs.

  2. Adicione um controle Data table, defina sua propriedade Items como NewGUIDs e exiba o campo Valor.

  3. Mantendo a tecla Alt pressionada, selecione o botão clicando ou tocando nele.

    A tabela de dados mostra uma lista de GUIDs:

    Uma tela que mostra uma tabela de dados com cinco valores de GUID diferentes.

  4. Selecione o botão novamente para mostrar uma lista de GUIDs diferente:

    A mesma tela exibindo uma tabela de dados com um novo conjunto de cinco GUIDs diferentes.

Para gerar um único GUID em vez de uma tabela, use esta fórmula:

Set( NewGUID, GUID() )