Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
aplica-se a:
SQL Server 2016 e posteriores do Analysis Services 
Fabric/Power BI Premium do Azure Analysis Services
Todos os objetos TMDL
Por exemplo, aqui está a representação de coluna calculada TMDL:
table Calendar
column 'Date (Year-Month)' = DATE([Year], [Month],1)
dataType: dateTime
formatString = mmm yyyy
lineageTag: 0e65a7a5-6c15-437d-8333-10653d8d673f
summarizeBy: none
annotation SummarizationSetBy = automatic
Cada uma das propriedades TMDL anteriores é mapeada para as propriedades da classe
- expressão – Propriedade Padrão
- dataType
- formatString
- lineageTag
- summarizeBy
Traduções em TMDL
No TOM, as traduções são representadas como uma coleção de objetos ObjectTranslation. Para interação e legibilidade ideais, o TMDL quebra o princípio do alinhamento com a árvore de objetos TOM e replica a hierarquia de modelos sob cada cultura como propriedades TMDL virtuais.
Para cada objeto, as traduções podem ser adicionadas para as seguintes propriedades:
| Propriedade | Descrição |
|---|---|
| legenda | Tabela/coluna/medida traduzida/... título que aparece em qualquer aplicativo cliente que dê suporte a visualizações de um modelo tabular. |
| descrição | A descrição traduzida aparece como informações de modelo. |
| displayFolder | pasta de exibição de coluna/medida/hierarquia traduzida usada por aplicativos cliente para organizar o conteúdo. |
O exemplo de código a seguir é uma tradução TMDL para a cultura portuguesa (pt-PT):
culture pt-PT
translations
model Model
caption: Modelo
description: Modelo
table Calendar
caption: Calendário
table Sales
caption: Vendas
measure 'Sales Amount'
caption: Total de Vendas
displayFolder: Métricas Base
measure 'Sales Amount (LY)'
caption: Total Vendas (Ano Anterior)
displayFolder: Métricas Base
measure 'Sales Amount (YTD, LY)'
displayFolder: Métricas Base
table Product
caption: Produto
description: Tabela de Produto
column Product
caption: Produto
description: Coluna de Produto
column ProductKey
caption: Chave de Produto
column Weight
caption: Peso
hierarchy 'Product Hierarchy'
caption: Hierarquia de Produto
table Customer
caption: Cliente
column Address
caption: Morada
table Store
caption: Loja
column StoreKey
caption: Código de Loja
linguisticMetadata =
{
...
}
Membros da função no TMDL
Os membros da função podem ser numerados em centenas ou milhares, portanto, serializar cada membro como um objeto separado usando sua representação tom nativa (WindowsModelRoleMember ou ExternalModelRoleMember) seria ilegível. Para otimizar a interação e a legibilidade, o TMDL quebra o princípio do alinhamento com a árvore de objetos TOM e otimiza a representação de membros de função para o cenário mais comum: Microsoft Entra ID (anteriormente conhecida como Azure AD) e Windows Identity.
As seguintes regras são aplicadas:
- A ID do membro não é serializada e pressupõe o mesmo valor que o nome
- Linhas em branco entre membros não são emitidas
- Os membros são emitidos no final após as permissões
A propriedade padrão do membro determina o tipo de membro:
| Valor da propriedade padrão | Descrição |
|---|---|
| utilizador | ExternalModelRoleMember - IdentityProvider = AzureAD, RoleMemberType = User |
| grupo | ExternalModelRoleMember - IdentityProvider = AzureAD, RoleMemberType = Group |
| Automático | ExternalModelRoleMember - IdentityProvider = AzureAD, RoleMemberType = Auto |
| activeDirectory | WindowsModelRoleMember |
O exemplo de código a seguir é uma função TMDL com membros ExternalModelRoleMembers:
role 'StoreRole'
modelPermission: read
tablePermission Store = 'Store'[Store Code] IN {"1","2","4"}
member 'user1@company.com'
member 'group@domain.com' = group
member 'user2@company.com' = auto
member user1FromCustomProvider
identityProvider = customProviderName
member group1FromCustomProvider
identityProvider = customProviderName
O exemplo de código a seguir é uma função TMDL com membros WindowsModelRoleMember:
role 'StoreRole'
modelPermission: read
tablePermission Store = 'Store'[Store Code] IN {"1","2","4"}
member company\user1 = activeDirectory
member company\group = activeDirectory