INFORMAÇÃO. TABLEPERMISSIONS

Aplica-se a: coluna calculada tabela calculada consulta DAX de cálculo visual

Retorna uma tabela com informações sobre todo o armazenamento de tabelas no modelo semântico. Essas informações ajudam você a entender o modelo.

Sintaxe

INFO.TABLEPERMISSIONS([<Restriction name>, <Restriction value>], ...)

Parâmetros

Os parâmetros são opcionais para essa função de DAX. Quando os parâmetros são usados, ambos devem ser dados. Mais de um par de parâmetros é permitido. O nome e o valor da restrição são texto e inseridos entre aspas duplas.

Prazo Definition
Nome da restrição Nome da restrição usada para filtrar os resultados.
Valor de restrição Valor usado para filtrar os resultados da restrição.

Restrictions

Normalmente, todas as colunas dos resultados da função DAX podem ser usadas como uma restrição. Restrições adicionais também podem ser permitidas.

Valor de retorno

Uma tabela com as seguintes colunas:

Coluna Description
[ID] Uma referência ao objeto. As IDs geralmente são geradas automaticamente e não devem ser alteradas após a criação do modelo. O tipo de dados é sem sinal longo (4 bytes).
[RoleID] A ID da função que fornece essa permissão.
[TableID] A ID da tabela na qual essa permissão se aplica.
[FilterExpression] A expressão de filtro na permissão.
[ModifiedTime] Quando a permissão foi modificada pela última vez.
[Estado] O recuo numérico do estado da permissão.
[ErrorMessage] Qualquer mensagem de erro com a permissão.
[MetadataPermission] Uma representação numérica da permissão fornecida. 0 significa que nenhum controle de acesso é imposto, enquanto 1 significa que o acesso é restrito e 2 significa que o acesso é irrestrito

Observações

Só pode ser executado por usuários com permissão de gravação no modelo semântico e não quando conectado ao modelo semântico no Power BI Desktop. Essa função pode ser usada em consultas DAXe não pode ser usada em cálculos.

Exemplo 1 – consulta DAX

A consulta DAX a seguir pode ser executada no modo de exibição de consulta DAX:

EVALUATE
	INFO.TABLEPERMISSIONS()

Essa consulta DAX retorna uma tabela com todas as colunas dessa função DAX.

Exemplo 2 – DAX consulta com junções

A consulta DAX a seguir pode ser executada no modo de exibição de consulta DAX:

EVALUATE
	VAR _INFO =	INFO.TABLEPERMISSIONS()

    VAR MetadataPermissionEnum =
	DATATABLE(
	"MetadataPermission",INTEGER,
	"MetadataDescription",STRING,
	{
	{0,"Default behavior - no access control is enforced"},
	{1,"Access to the data is restricted"},
	{2,"Access to the data is unrestricted"}
	}
	)
    VAR StateEnum =
    DATATABLE(
    	"State",INTEGER,
    	"StateName",STRING,
    	{
        	{1,"Ready"},
        	{3,"NoData"},
        	{4,"CalculationNeeded"},
        	{5,"SemanticError"},
        	{6,"EvaluationError"},
        	{7,"DependencyError"},
        	{8,"Incomplete"},
        	{10,"ForceCalculationNeeded"}
    	}
    	)
	VAR _CombinedTable =
	NATURALLEFTOUTERJOIN(
		_INFO,
		MetadataPermissionEnum
	)

    VAR _CombinedTable2 =
	NATURALLEFTOUTERJOIN(
		_CombinedTable,
		StateEnum
	)

    VAR _ModelRoles = 
		SELECTCOLUMNS(
			INFO.ROLES(),
			"RoleID", [ID],
			"Role Name", [Name]
		)
	VAR _ModelTables = 
		SELECTCOLUMNS(
			INFO.TABLES(),
			"TableID", [ID],
			"Table Name", [Name]
		)

	VAR _CombinedTable3 =
	NATURALLEFTOUTERJOIN(
		_CombinedTable2,
		_ModelRoles
	)
	VAR _CombinedTable4 =
	NATURALLEFTOUTERJOIN(
		_CombinedTable3,
		_ModelTables
	)
	
	RETURN
	
		SELECTCOLUMNS(
			_CombinedTable4,
			"Table Permission ID", [ID],
			"Filter Expression", [FilterExpression],
			"Modified Time", [ModifiedTime],
            "State Name", [StateName],
			"Error Message", [ErrorMessage],
			"Metadata permission description", [MetadataDescription],
			"Role Name", [Role Name],
			"Table Name", [Table Name]
			)
			
	ORDER BY [Table Permission ID]

Essa DAX consulta retorna uma tabela com apenas as colunas especificadas e a junção a outras funções INFO DAX e à tabela de permissões de tabela.

Enumerações

As colunas retornadas nesta função INFO fornecem a ID de uma enumeração ou tabela de pesquisa. Aqui estão os valores de cada enumeração nesta função DAX.

ObjectState

Value Nome Description
1 Ready O objeto é atualizado, contém up-todados de data e é consultável.
3 Sem Dados O objeto é consultável, mas não contém dados. Atualize-o para trazer dados. Aplica-se a objetos não calculados, como DataColumns, partições e Tabelas.
4 CalculationNeeded O objeto não é consultável e não contém dados. Ele precisa ser atualizado para se tornar funcional. Aplica-se somente a objetos calculados, como colunas calculadas, hierarquias e tabelas calculadas.
5 SemânticoError O objeto está em um estado de erro devido a uma expressão inválida. Não é consultável.
6 EvaluationError O objeto está em um estado de erro porque ocorreu um erro durante a avaliação da expressão. Não é consultável.
7 DependencyError O objeto está em um estado de erro porque algumas de suas dependências de cálculo estão em um estado de erro. Não é consultável.
8 Incompleto Algumas partes do objeto não têm dados. Atualize o objeto para adicionar o restante dos dados. O objeto é consultável. Aplica-se a objetos não calculados, como DataColumns, partições e tabelas.
10 ForceCalculationNeeded Os dados possivelmente estão desatualizados, mas estão em um estado queryable. Aplica-se somente a CalculatedTable.

Esta tabela se baseia na documentação oficial .

Para ingressar com as funções INFO, use essa consulta DAX.

EVALUATE
	DATATABLE(
	"State",INTEGER,
	"StateName",STRING,
	{
    	{1,"Ready"},
    	{3,"NoData"},
    	{4,"CalculationNeeded"},
    	{5,"SemanticError"},
    	{6,"EvaluationError"},
    	{7,"DependencyError"},
    	{8,"Incomplete"},
    	{10,"ForceCalculationNeeded"}
	}
	)

Consulte também