Objeto Model (TMSL)
Aplica-se a: SQL Server 2016 e posteriores do Analysis Services Azure Analysis Services Fabric/Power BI Premium
Define um modelo tabular. Há um modelo por banco de dados e apenas um banco de dados que pode ser especificado em qualquer comando determinado. Um objeto Database é o objeto pai.
As definições de modelo são muito grandes para reproduzir toda a sintaxe em um tópico. Por esse motivo, uma sintaxe parcial realçando as partes main pode ser encontrada abaixo, com links para objetos filho.
Talvez a melhor maneira de entender uma definição de modelo seja começar com um modelo tabular que você conhece bem. Use a opção Exibir Código no SQL Server Data Tools para exibir sua definição. Lembre-se de instalar um editor JSON para que você possa exibir o código. Você pode obter um editor JSON no Visual Studio baixando a community edition ou outra edição do Visual Studio.
Observação
Em qualquer script, somente um banco de dados no momento pode ser referenciado. Para qualquer objeto diferente do próprio banco de dados, a propriedade Database será opcional se você especificar o modelo. Há um mapeamento um-para-um entre um Modelo e um Banco de Dados que pode ser usado para deduzir o nome do banco de dados se ele não for fornecido explicitamente.
Da mesma forma, você pode deixar de fora Modelo, definindo suas propriedades no Banco de Dados.
Definição do objeto
Todos os objetos têm um conjunto comum de propriedades, incluindo nome, tipo, descrição, uma coleção de propriedades e anotações. Os objetos de modelo também têm as propriedades a seguir.
Storagelocation
O local no disco para colocar o modelo.
defaultMode
O método padrão para disponibilizar dados na partição.
defaultDataView
Para modelos no modo DirectQuery, essa propriedade determina quais partições são usadas para executar consultas no modelo. Os valores válidos incluem Full e Sample.
culture
A cultura a ser usada para formatação.
ordenação
A sequência de ordenação.
tabelas
A coleção completa de tabelas no modelo, incluindo partições, colunas, medidas, KPIs e anotações. Consulte Objeto Tables (TMSL) para obter detalhes.
relacionamentos
Especifica a relação entre cada par de tabelas, incluindo propriedades que definem a direção do filtro e a segurança. Consulte Objeto Relationships (TMSL) para obter detalhes.
dataSources
Uma ou mais conexões com bancos de dados externos que fornecem dados para o modelo ou são usadas para consultas de passagem. Consulte Objeto DataSources (TMSL) para obter detalhes.
funções
Objetos que associam uma permissão de banco de dados, contas de membro e, opcionalmente, filtros de segurança no DAX para controle de acesso personalizado.
Uso
Os objetos de modelo contêm um modelo inteiro. Você precisa especificar um Modelo e/ou seu objeto Database pai na maioria dos comandos.
Ao criar, substituir ou alterar um objeto de modelo, especifique todas as propriedades de leitura/gravação da definição de objeto. A omissão de uma propriedade de leitura/gravação é considerada uma exclusão.
Sintaxe parcial
Como essa definição de objeto é tão grande, somente as propriedades de primeiro nível são listadas. Consulte Definições de objeto em TMSL (Linguagem de Script de Modelo Tabular) para obter uma lista de objetos filho.
"model": {
"description": "Model object of a tabular database",
"type": "object",
"properties": {
"name": { },
"description": { },
"storageLocation": { },
"defaultMode": { },
"defaultDataView": { },
"culture": { },
"collation": { },
"annotations": { },
"tables": { },
"relationships": { },
"dataSources": { },
"perspectives": { },
"cultures": { },
"roles": { }
}