INFO. TABLEPERMISSIONS

Gælder for: beregnet kolonne beregnet tabel måling visuel beregning DAX forespørgsel

Returnerer en tabel med oplysninger om alt tabellager i den semantiske model. Disse oplysninger hjælper dig med at forstå modellen.

Syntaks

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

Parametre

Parametre er valgfrie for denne DAX funktion. Når der bruges parametre, skal begge angives. Mere end ét par parametre er tilladt. Begrænsningsnavnet og -værdien er tekst og indtastet i dobbelte anførselstegn.

Periode Definition
Begrænsningsnavn Navnet på den begrænsning, der bruges til at filtrere resultaterne.
Begrænsningsværdi Værdi, der bruges til at filtrere resultaterne af begrænsningen.

Restriktioner

Normalt kan alle kolonner i resultaterne af DAX-funktionen bruges som en begrænsning. Yderligere begrænsninger kan også være tilladt.

Returværdi

En tabel med følgende kolonner:

Column Betegnelse
[ID] En reference til objektet. Id'er genereres normalt automatisk og bør ikke ændres, når modellen er oprettet. Datatypen er ikke signeret lang (4 byte).
[RoleID] Id'et for den rolle, der giver denne tilladelse.
[TableID] Id'et for den tabel, som denne tilladelse gælder for.
[FilterExpression] Filterudtrykket i tilladelsen.
[ModifiedTime] Hvornår tilladelsen sidst blev ændret.
[Tilstand] Den numeriske repesentation af tilladelsens tilstand.
[ErrorMessage] En hvilken som helst fejlmeddelelse med tilladelsen.
[MetadataPermission] En numerisk repræsentation af den angivne tilladelse. 0 betyder, at der ikke gennemtvinges adgangskontrol, mens 1 betyder, at adgangen er begrænset, og 2 betyder, at adgangen er ubegrænset

Bemærkninger

Kan kun køres af brugere med skrivetilladelse til den semantiske model og ikke, når de har direkte forbindelse til den semantiske model i Power BI Desktop. Denne funktion kan bruges i DAX forespørgslerog kan ikke bruges i beregninger.

Eksempel 1 – DAX forespørgsel

Følgende DAX forespørgsel kan køres i DAX forespørgselsvisning:

EVALUATE
	INFO.TABLEPERMISSIONS()

Denne DAX forespørgsel returnerer en tabel med alle kolonnerne i denne DAX funktion.

Eksempel 2 – DAX forespørgsel med joinforbindelser

Følgende DAX forespørgsel kan køres i DAX forespørgselsvisning:

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]

Denne DAX forespørgsel returnerer en tabel med kun de angivne kolonner og forbinder til andre INFO-funktioner DAX og tabellen med tabeltilladelser.

Optællinger

Kolonner, der returneres i denne INFO-funktion, giver id'et for en optælling eller opslagstabel. Her er værdierne for hver optælling i denne DAX funktion.

ObjectState

Value Navn Betegnelse
1 Klar Objektet opdateres, indeholder up-to-datodata og kan forespørges.
3 NoData Objektet kan forespørges, men indeholder ingen data. Opdater den for at hente data. Gælder for ikke-beregnede objekter, f.eks. DataColumns, partitioner og Tabeller.
4 CalculationNeeded Objektet kan ikke forespørges og indeholder ingen data. Det skal opdateres for at blive funktionelt. Gælder kun for beregnede objekter, f.eks. beregnede kolonner, hierarkier og beregnede tabeller.
5 Semantisk fejl Objektet er i en fejltilstand på grund af et ugyldigt udtryk. Det kan ikke forespørges.
6 Evalueringsfejl Objektet er i en fejltilstand, fordi der opstod en fejl under evaluering af udtryk. Det kan ikke forespørges.
7 Afhængighedsfejl Objektet er i fejltilstand, fordi nogle af dets beregningsafhængigheder er i fejltilstand. Det kan ikke forespørges.
8 Ikke fuldført Nogle dele af objektet har ingen data. Opdater objektet for at tilføje resten af dataene. Objektet kan forespørges. Gælder for ikke-beregnede objekter, f.eks. DataColumns, partitioner og tabeller.
10 ForceCalculationNeeded Dataene er muligvis forældede, men de er i forespørgselstilstand. Gælder kun for CalculatedTable.

Denne tabel er baseret på den officielle dokumentation.

Hvis du vil joinforbinde med INFO-funktioner, skal du bruge denne DAX forespørgsel.

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

Se også