Type.ReplaceTableKeys

Sintaxe

Type.ReplaceTableKeys(tableType as type, keys as list) as type

Sobre

Retorna um novo tipo de tabela com todas as chaves substituídas pela lista de chaves especificada.

Cada chave é definida usando um registro no seguinte formulário:

  • Columns: uma lista dos nomes de coluna que definem a chave
  • Primary: true se a chave for a chave primária da tabela; caso contrário, false

A lista de chaves especificada é validada para garantir que não mais de uma chave primária seja definida e que todos os nomes de coluna de chave existam no tipo de tabela.

Exemplo 1

Substitua as informações de chave em um tipo de tabela.

Usage

let
    BaseType = type table [ID = number, FirstName = text, LastName = text],
    KeysAdded = Type.ReplaceTableKeys(
        BaseType,
        {
            [Columns = {"ID"}, Primary = true],
            [Columns = {"FirstName", "LastName"}, Primary = false]
        }
    ),
    DetailsOfKeys = Type.TableKeys(KeysAdded)
in
    DetailsOfKeys

Saída

{
    [Columns = {"ID"}, Primary = true],
    [Columns = {"FirstName", "LastName"}, Primary = false]
}

Exemplo 2

Desmarque as informações de chave definidas anteriormente em um tipo de tabela.

Usage

let
    TypeWithKey = Type.AddTableKey(type table [ID = number, Name = text], {"ID"}, true),
    KeyRemoved = Type.ReplaceTableKeys(TypeWithKey, {}),
    DetailsOfKeys = Type.TableKeys(KeyRemoved)
in
    DetailsOfKeys

Saída

{}