Datasets - Execute Queries
Führt DAX-Abfragen (Data Analysis Expressions) für das bereitgestellte Dataset aus. Das Dataset muss sich in "Mein Arbeitsbereich" oder in einem anderen Arbeitsbereich befinden.
DAX-Abfragefehler führen zu:
- Ein Antwortfehler, z
DAX query failure
. B. . - Ein HTTP-Fehler status Code (400).
Eine Abfrage, die mehr als eine Tabelle oder mehr als die zulässige Anzahl von Tabellenzeilen anfordert, führt zu Folgendem:
- Eingeschränkte Daten, die zurückgegeben werden.
- Ein Antwortfehler, z
More than one result table in a query
. B. oderMore than {allowed number} rows in a query result
. - Ein erfolgreicher HTTP-status Code (200).
Spalten, die in der Abfrage voll qualifiziert sind, werden mit einem vollqualifizierten Namen zurückgegeben, z. B MyTable[MyColumn]
. . Spalten, die in der Abfrage umbenannt oder erstellt werden, werden in eckigen Klammern zurückgegeben, [MyNewColumn]
z. B. .
Berechtigungen
Die REST-API für die Mandanteneinstellung Datasetausführungsabfragen, die sich unter Integrationseinstellungen befindet, muss aktiviert sein.
Der Benutzer muss über Lese- und Buildberechtigungen für Datasets verfügen. Weitere Informationen finden Sie unter Verwalten von Zugriffsberechtigungen auf Datasets.
Erforderlicher Bereich
Dataset.ReadWrite.All oder Dataset.Read.All
Einschränkungen
- Datasets, die in Azure Analysis Services gehostet werden oder über eine Liveverbindung mit einem lokalen Azure Analysis Services-Modell verfügen, werden nicht unterstützt.
- Eine Abfrage pro API-Aufruf.
- Eine Tabellenanforderung pro Abfrage.
- Maximal 100.000 Zeilen oder 1.000.000 Werte pro Abfrage (je nachdem, was zuerst erreicht wird). Wenn Sie beispielsweise fünf Spalten abfragen, können Sie maximal 100.000 Zeilen abrufen. Wenn Sie 20 Spalten abfragen, können Sie maximal 50.000 Zeilen (1 Million geteilt durch 20) erhalten.
- Maximal 15 MB Daten pro Abfrage. Sobald 15 MB überschritten sind, wird die aktuelle Zeile abgeschlossen, aber es werden keine weiteren Zeilen geschrieben.
- Es gibt einen Grenzwert von 120 Abfrageanforderungen pro Minute und Benutzer, unabhängig vom dataset, das abgefragt wird.
- Um Dienstprinzipale zu verwenden, stellen Sie sicher, dass die Administratormandanteneinstellung Dienstprinzipale die Verwendung von Power BI-APIs zulassen unter Entwicklereinstellungen aktiviert ist. Unabhängig von der Administratormandanteneinstellung werden Dienstprinzipale jedoch nicht für Datasets mit RLS-Einschränkungen pro RLS oder Datasets mit aktiviertem einmaligem Anmelden unterstützt.
- Derzeit werden nur DAX-Abfragen unterstützt. MDX- und DMV-Abfragen werden nicht unterstützt.
POST https://api.powerbi.com/v1.0/myorg/datasets/{datasetId}/executeQueries
URI-Parameter
Name | In | Erforderlich | Typ | Beschreibung |
---|---|---|---|---|
dataset
|
path | True |
string |
Die Dataset-ID |
Anforderungstext
Name | Erforderlich | Typ | Beschreibung |
---|---|---|---|
queries | True |
Die Liste der auszuführenden Datasetabfragen |
|
impersonatedUserName |
string |
Der UPN eines Benutzers, der identitätswechselt werden soll. Wenn das Modell nicht RLS aktiviert ist, wird dies ignoriert. |
|
serializerSettings |
Die Serialisierungseinstellungen für das Resultset |
Antworten
Name | Typ | Beschreibung |
---|---|---|
200 OK |
OK |
Beispiele
Execute queries example
Sample Request
POST https://api.powerbi.com/v1.0/myorg/datasets/cfafbeb1-8037-4d0c-896e-a46fb27ff229/executeQueries
{
"queries": [
{
"query": "EVALUATE VALUES(MyTable)"
}
],
"serializerSettings": {
"includeNulls": true
},
"impersonatedUserName": "someuser@mycompany.com"
}
Sample Response
{
"results": [
{
"tables": [
{
"rows": [
{
"MyTable[Year]": 2010,
"MyTable[Quarter]": "Q1"
},
{
"MyTable[Year]": 2010,
"MyTable[Quarter]": "Q2"
},
{
"MyTable[Year]": 2011,
"MyTable[Quarter]": "Q1"
}
]
}
]
}
]
}
Definitionen
Name | Beschreibung |
---|---|
Dataset |
Die Details eines Fehlers, falls vorhanden. |
Dataset |
Die Details der Information Protection-Bezeichnung, sofern vorhanden, die dem Dataset zugeordnet ist. |
Dataset |
Eine Datasetabfrage |
Dataset |
Die Ergebnisse einer einzelnen Datasetabfrage |
Dataset |
Eine Anforderung zum Ausführen von Abfragen für ein Dataset |
Dataset |
Die Antwort auf eine Abfrageanforderung zum Ausführen eines Datasets |
Dataset |
Die Serialisierungseinstellungen für die Ergebnisse einer Datasetabfrage |
Dataset |
Eine Tabelle mit Daten |
DatasetExecuteQueriesError
Die Details eines Fehlers, falls vorhanden.
Name | Typ | Beschreibung |
---|---|---|
code |
string |
Der dem Fehler zugeordnete Code. |
message |
string |
Die Meldung des Fehlers. Falls hier nicht vorhanden, finden Sie diese Informationen auch im Detailobjekt, das unter dem Fehlerobjekt geschachtelt ist. |
DatasetExecuteQueriesInformationProtectionLabel
Die Details der Information Protection-Bezeichnung, sofern vorhanden, die dem Dataset zugeordnet ist.
Name | Typ | Beschreibung |
---|---|---|
id |
string |
Der Bezeichner (GUID) der Informationsschutzbezeichnung |
name |
string |
Der Anzeigename der Informationsschutzbezeichnung |
DatasetExecuteQueriesQuery
Eine Datasetabfrage
Name | Typ | Beschreibung |
---|---|---|
query |
string |
Die auszuführende DAX-Abfrage |
DatasetExecuteQueriesQueryResult
Die Ergebnisse einer einzelnen Datasetabfrage
Name | Typ | Beschreibung |
---|---|---|
error |
Die Details eines Fehlers, falls vorhanden. |
|
tables |
Eine Liste der Tabellendaten für eine Abfrage |
DatasetExecuteQueriesRequest
Eine Anforderung zum Ausführen von Abfragen für ein Dataset
Name | Typ | Beschreibung |
---|---|---|
impersonatedUserName |
string |
Der UPN eines Benutzers, der identitätswechselt werden soll. Wenn das Modell nicht RLS aktiviert ist, wird dies ignoriert. |
queries |
Die Liste der auszuführenden Datasetabfragen |
|
serializerSettings |
Die Serialisierungseinstellungen für das Resultset |
DatasetExecuteQueriesResponse
Die Antwort auf eine Abfrageanforderung zum Ausführen eines Datasets
Name | Typ | Beschreibung |
---|---|---|
error |
Die Details eines Fehlers, falls vorhanden. |
|
informationProtectionLabel |
Die Details der Information Protection-Bezeichnung, sofern vorhanden, die dem Dataset zugeordnet ist. |
|
results |
Die Liste der Ergebnisse, eins pro Eingabeabfrage. |
DatasetExecuteQueriesSerializationSettings
Die Serialisierungseinstellungen für die Ergebnisse einer Datasetabfrage
Name | Typ | Beschreibung |
---|---|---|
includeNulls |
boolean |
Gibt an, ob null (leere) Werte in das Resultset eingeschlossen werden sollen. Wenn nichts angegeben wird, beträgt der Standardwert |
DatasetExecuteQueriesTableResult
Eine Tabelle mit Daten
Name | Typ | Beschreibung |
---|---|---|
error |
Die Details eines Fehlers, falls vorhanden. |
|
rows |
object[] |
Eine Liste von Zeilen |