Datasets - Execute Queries
Exécute des requêtes DAX (Data Analysis Expressions) sur le jeu de données fourni. Le jeu de données doit résider dans Mon espace de travail ou dans un autre espace de travail.
Les erreurs de requête DAX entraînent :
- Erreur de réponse, telle que
DAX query failure
. - Un code HTTP status d’échec (400).
Une requête qui demande plusieurs tables, ou plus que le nombre autorisé de lignes de table, entraîne :
- Données limitées retournées.
- Erreur de réponse, telle que
More than one result table in a query
ouMore than {allowed number} rows in a query result
. - Un code de status HTTP réussi (200).
Les colonnes qui sont entièrement qualifiées dans la requête sont retournées avec un nom complet, par exemple . MyTable[MyColumn]
Les colonnes qui sont renommées ou créées dans la requête sont retournées entre crochets, par exemple. [MyNewColumn]
Autorisations
Le paramètre de locataire l’API REST d’exécution de requêtes du jeu de données, qui se trouve sous Paramètres d’intégration, doit être activé.
L’utilisateur doit disposer des autorisations de lecture et de génération du jeu de données. Pour plus d’informations, consultez Gérer les autorisations d’accès au jeu de données.
Étendue requise
Dataset.ReadWrite.All ou Dataset.Read.All
Limites
- Les jeux de données hébergés dans Azure Analysis Services ou qui ont une connexion active à un modèle Azure Analysis Services local ne sont pas pris en charge.
- Une requête par appel d’API.
- Une requête de table par requête.
- Maximum de 100 000 lignes ou de 1 000 000 de valeurs par requête (selon ce qui est atteint en premier). Par exemple, si vous interrogez 5 colonnes, vous pouvez récupérer un maximum de 100 000 lignes. Si vous interrogez 20 colonnes, vous pouvez récupérer un maximum de 50 000 lignes (1 million divisé par 20).
- Maximum de 15 Mo de données par requête. Une fois que 15 Mo est dépassé, la ligne actuelle est terminée, mais aucune ligne supplémentaire n’est écrite.
- Il existe une limite de 120 requêtes par minute et par utilisateur, quel que soit le jeu de données interrogé.
- Pour utiliser les principaux de service, assurez-vous que le paramètre de locataire administrateur Autoriser les principaux de service à utiliser les API Power BI sous Paramètres du développeur est activé. Toutefois, quel que soit le paramètre de locataire administrateur, les principaux de service ne sont pas pris en charge pour les jeux de données avec des limitations RLS par RLS ou des jeux de données avec l’authentification unique activée.
- Seules les requêtes DAX sont prises en charge pour l’instant. Les requêtes MDX et DMV ne sont pas prises en charge.
POST https://api.powerbi.com/v1.0/myorg/datasets/{datasetId}/executeQueries
Paramètres URI
Nom | Dans | Obligatoire | Type | Description |
---|---|---|---|---|
dataset
|
path | True |
string |
ID du jeu de données |
Corps de la demande
Nom | Obligatoire | Type | Description |
---|---|---|---|
queries | True |
Liste des requêtes de jeu de données à exécuter |
|
impersonatedUserName |
string |
UPN d’un utilisateur à emprunter l’identité. Si le modèle n’est pas activé, cela sera ignoré. |
|
serializerSettings |
Paramètres de sérialisation du jeu de résultats |
Réponses
Nom | Type | Description |
---|---|---|
200 OK |
Ok |
Exemples
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"
}
]
}
]
}
]
}
Définitions
Nom | Description |
---|---|
Dataset |
Détails d’une erreur, le cas échéant. |
Dataset |
Détails de l’étiquette de protection des informations, le cas échéant, associée au jeu de données. |
Dataset |
Requête de jeu de données |
Dataset |
Résultats d’une requête de jeu de données unique |
Dataset |
Demande d’exécution de requêtes sur un jeu de données |
Dataset |
Réponse à une demande d’exécution de requêtes de jeu de données |
Dataset |
Paramètres de sérialisation pour les résultats d’une requête de jeu de données |
Dataset |
Table de données |
DatasetExecuteQueriesError
Détails d’une erreur, le cas échéant.
Nom | Type | Description |
---|---|---|
code |
string |
Code associé à l’erreur |
message |
string |
Message de l’erreur. Si elles ne sont pas présentes ici, ces informations se trouvent également dans l’objet détails imbriqué sous l’objet d’erreur. |
DatasetExecuteQueriesInformationProtectionLabel
Détails de l’étiquette de protection des informations, le cas échéant, associée au jeu de données.
Nom | Type | Description |
---|---|---|
id |
string |
Identificateur (guid) de l’étiquette de protection des informations |
name |
string |
Nom d’affichage de l’étiquette de protection des informations |
DatasetExecuteQueriesQuery
Requête de jeu de données
Nom | Type | Description |
---|---|---|
query |
string |
Requête DAX à exécuter |
DatasetExecuteQueriesQueryResult
Résultats d’une requête de jeu de données unique
Nom | Type | Description |
---|---|---|
error |
Détails d’une erreur, le cas échéant. |
|
tables |
Liste des données de tables pour une requête |
DatasetExecuteQueriesRequest
Demande d’exécution de requêtes sur un jeu de données
Nom | Type | Description |
---|---|---|
impersonatedUserName |
string |
UPN d’un utilisateur à emprunter l’identité. Si le modèle n’est pas activé, cela sera ignoré. |
queries |
Liste des requêtes de jeu de données à exécuter |
|
serializerSettings |
Paramètres de sérialisation du jeu de résultats |
DatasetExecuteQueriesResponse
Réponse à une demande d’exécution de requêtes de jeu de données
Nom | Type | Description |
---|---|---|
error |
Détails d’une erreur, le cas échéant. |
|
informationProtectionLabel |
Détails de l’étiquette de protection des informations, le cas échéant, associée au jeu de données. |
|
results |
Liste de résultats, un par requête d’entrée. |
DatasetExecuteQueriesSerializationSettings
Paramètres de sérialisation pour les résultats d’une requête de jeu de données
Nom | Type | Description |
---|---|---|
includeNulls |
boolean |
Indique si des valeurs null (vides) doivent être incluses dans le jeu de résultats. Si la valeur n’est pas spécifiée, la valeur par défaut est |
DatasetExecuteQueriesTableResult
Table de données
Nom | Type | Description |
---|---|---|
error |
Détails d’une erreur, le cas échéant. |
|
rows |
object[] |
Liste de lignes |