Datasets - Execute Queries
Ejecuta consultas de expresiones de análisis de datos (DAX) en el conjunto de datos proporcionado. El conjunto de datos debe residir en Mi área de trabajo u otra área de trabajo.
Los errores de consulta DAX darán lugar a:
- Un error de respuesta, como
DAX query failure
. - Código de estado HTTP de error (400).
Una consulta que solicite más de una tabla, o más del número permitido de filas de tabla, dará como resultado:
- Datos limitados que se devuelven.
- Un error de respuesta, como
More than one result table in a query
oMore than {allowed number} rows in a query result
. - Código de estado HTTP correcto (200).
Las columnas que están completas en la consulta se devolverán con un nombre completo, por ejemplo, MyTable[MyColumn]
. Las columnas cuyo nombre se cambia o se crean en la consulta se devolverán entre corchetes, por ejemplo, [MyNewColumn]
.
Permisos
La configuración del inquilino Conjunto de datos Ejecutar consultas REST API, que se encuentra en Configuración de integración, debe estar habilitada.
El usuario debe tener permisos de lectura y compilación del conjunto de datos. Para más información, consulte Administración de permisos de acceso al conjunto de datos.
Ámbito requerido
Dataset.ReadWrite.All o Dataset.Read.All
Limitaciones
- No se admiten conjuntos de datos hospedados en Azure Analysis Services o que tienen una conexión dinámica a un modelo de Azure Analysis Services local.
- Una consulta por llamada API.
- Una solicitud de tabla por consulta.
- Máximo de 100 000 filas o 1000 000 000 valores por consulta (lo que se alcance primero). Por ejemplo, si consulta 5 columnas, puede obtener un máximo de 100 000 filas. Si consulta 20 columnas, puede obtener un máximo de 50 000 filas (1 millón dividido entre 20).
- Máximo de 15 MB de datos por consulta. Una vez superados los 15 MB, se completará la fila actual, pero no se escribirán filas adicionales.
- Hay un límite de 120 solicitudes de consulta por minuto por usuario, independientemente del conjunto de datos consultado.
- Para usar entidades de servicio, asegúrese de que la configuración del inquilino de administrador Permita que las entidades de servicio usen las API de Power BI en Configuración del desarrollador esté habilitada. Sin embargo, independientemente de la configuración del inquilino de administrador, las entidades de servicio no se admiten para conjuntos de datos con limitaciones de RLS por RLS o conjuntos de datos con SSO habilitado.
- Solo se admiten consultas DAX en este momento. No se admiten consultas MDX y DMV.
POST https://api.powerbi.com/v1.0/myorg/datasets/{datasetId}/executeQueries
Parámetros de identificador URI
Nombre | En | Requerido | Tipo | Description |
---|---|---|---|---|
dataset
|
path | True |
string |
Identificador del conjunto de datos |
Cuerpo de la solicitud
Nombre | Requerido | Tipo | Description |
---|---|---|---|
queries | True |
Lista de consultas de conjunto de datos que se van a ejecutar |
|
impersonatedUserName |
string |
UpN de un usuario que se va a suplantar. Si el modelo no está habilitado para RLS, se omitirá. |
|
serializerSettings |
La configuración de serialización del conjunto de resultados |
Respuestas
Nombre | Tipo | Description |
---|---|---|
200 OK |
Aceptar |
Ejemplos
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"
}
]
}
]
}
]
}
Definiciones
Nombre | Description |
---|---|
Dataset |
Detalles de un error, si está presente. |
Dataset |
Detalles de la etiqueta de protección de la información, si existe, asociada al conjunto de datos. |
Dataset |
Una consulta de conjunto de datos |
Dataset |
Resultados de una sola consulta de conjunto de datos |
Dataset |
Una solicitud para ejecutar consultas en un conjunto de datos |
Dataset |
Respuesta a una solicitud de ejecución de consultas de conjunto de datos |
Dataset |
La configuración de serialización para los resultados de una consulta de conjunto de datos |
Dataset |
Una tabla de datos |
DatasetExecuteQueriesError
Detalles de un error, si está presente.
Nombre | Tipo | Description |
---|---|---|
code |
string |
El código asociado al error |
message |
string |
Mensaje del error. Si no está presente aquí, esta información también se encuentra en el objeto de detalles anidado bajo el objeto de error. |
DatasetExecuteQueriesInformationProtectionLabel
Detalles de la etiqueta de protección de la información, si existe, asociada al conjunto de datos.
Nombre | Tipo | Description |
---|---|---|
id |
string |
Identificador (guid) de la etiqueta de protección de la información |
name |
string |
Nombre para mostrar de la etiqueta de protección de la información |
DatasetExecuteQueriesQuery
Una consulta de conjunto de datos
Nombre | Tipo | Description |
---|---|---|
query |
string |
Consulta DAX que se va a ejecutar |
DatasetExecuteQueriesQueryResult
Resultados de una sola consulta de conjunto de datos
Nombre | Tipo | Description |
---|---|---|
error |
Detalles de un error, si está presente. |
|
tables |
Una lista de datos de tablas para una consulta |
DatasetExecuteQueriesRequest
Una solicitud para ejecutar consultas en un conjunto de datos
Nombre | Tipo | Description |
---|---|---|
impersonatedUserName |
string |
UpN de un usuario que se va a suplantar. Si el modelo no está habilitado para RLS, se omitirá. |
queries |
Lista de consultas de conjunto de datos que se van a ejecutar |
|
serializerSettings |
La configuración de serialización del conjunto de resultados |
DatasetExecuteQueriesResponse
Respuesta a una solicitud de ejecución de consultas de conjunto de datos
Nombre | Tipo | Description |
---|---|---|
error |
Detalles de un error, si está presente. |
|
informationProtectionLabel |
Detalles de la etiqueta de protección de la información, si existe, asociada al conjunto de datos. |
|
results |
Lista de resultados, una por consulta de entrada. |
DatasetExecuteQueriesSerializationSettings
La configuración de serialización para los resultados de una consulta de conjunto de datos
Nombre | Tipo | Description |
---|---|---|
includeNulls |
boolean |
Si los valores NULL (en blanco) deben incluirse en el conjunto de resultados. Si no se especifica, se usa el valor predeterminado |
DatasetExecuteQueriesTableResult
Una tabla de datos
Nombre | Tipo | Description |
---|---|---|
error |
Detalles de un error, si está presente. |
|
rows |
object[] |
Una lista de filas |