Compartir a través de


Recuperar y ejecutar consultas predefinidas

Microsoft Dataverse proporciona una manera de que los administradores creen vistas del sistema que están disponibles para todos los usuarios. Los usuarios individuales pueden guardar las consultas de búsqueda avanzada para volver a usar en la aplicación. Ambas representan consultas predefinidas que puede recuperar y ejecutar mediante la API web.

Nota:

A diferencia de las consultas que usan la sintaxis de OData, los datos devueltos a partir de consultas predefinidas o FetchXML no devolverán propiedades con valores null. Cuando el valor es null, la propiedad no se incluirá en los resultados.

Cuando se devuelve una consulta mediante la sintaxis de OData, un registro incluirá una propiedad con un null valor similar al siguiente:

{
    "@odata.etag": "W/\"46849433\"",
    "name": "Contoso, Ltd. (sample)",
    "accountnumber": null,
    "accountid": "7a4814f9-b0b8-ea11-a812-000d3a122b89"
}

Cuando se recupera mediante una consulta predefinida o con FetchXml, el mismo registro no incluirá la accountnumber propiedad porque es null, de la siguiente manera:

{
    "@odata.etag": "W/\"46849433\"",
    "name": "Contoso, Ltd. (sample)",
    "accountid": "7a4814f9-b0b8-ea11-a812-000d3a122b89"
}

Consultas predefinidas

Dataverse permite definir, guardar y ejecutar dos tipos de consultas como se muestra aquí.

Tipo de consulta Description
Consulta guardada Vistas definidas por el sistema para una tabla (entidad). Estas vistas se almacenan en el entityType savedquery. Más información: Personalización de vistas de tabla
Consulta de usuario Búsquedas avanzadas guardadas por los usuarios para una tabla (entidad). Estas vistas se almacenan en el entityType userquery. Más información: Tabla UserQuery (vista guardada)

Los registros de estos dos tipos de entidades contienen la definición FetchXML para que los datos se devuelvan. Puede consultar el tipo de entidad correspondiente para recuperar el valor de clave principal. Con el valor de clave principal, puede ejecutar la consulta pasando el valor de clave principal. Por ejemplo, para ejecutar la consulta guardada cuentas activas , primero debe obtener la clave principal mediante una consulta como esta.

GET [Organization URI]/api/data/v9.2/savedqueries?$select=name,savedqueryid&$filter=name eq 'Active Accounts'

Luego puede usar el valor de savedqueryid y pasarlo como el valor al parámetro savedQuery al conjunto de entidades de cuentas.

GET [Organization URI]/api/data/v9.2/accounts?savedQuery=00000000-0000-0000-00aa-000010001002

Use el mismo enfoque para obtener userqueryid y pasarlo como valor al userQuery parámetro al conjunto de entidades que coincida con el correspondiente returnedtypecode de la consulta guardada.

GET [Organization URI]/api/data/v9.2/accounts?userQuery=121c6fd8-1975-e511-80d4-00155d2a68d1

Aplicar una consulta a cualquier colección del tipo adecuado

Además de simplemente aplicar la consulta guardada a la colección principal de conjuntos de entidades, también puede usar una consulta guardada o consulta de usuario para aplicar el mismo filtrado en cualquier colección del tipo adecuado de entidades. Por ejemplo, si desea aplicar una consulta solo a las entidades relacionadas con una entidad específica, puede aplicar el mismo patrón. Por ejemplo, la siguiente URL aplicará la consulta Oportunidades abiertas a las oportunidades relacionadas con una cuenta específica a través de la propiedad de navegación valorada como colección opportunity_parent_account.

GET [Organization URI]/api/data/v9.2/accounts(8f390c24-9c72-e511-80d4-00155d2a68d1)/opportunity_parent_account/?savedQuery=00000000-0000-0000-00aa-000010003001

Consulte también

Ejemplo de datos de consulta API (C#)
Ejemplo de datos de consulta de la API web (JavaScript del lado del cliente)
Realización de operaciones mediante la API web
Redacción de solicitudes HTTP y control de errores
Consultar datos utilizando la API web
Crear una fila de tabla usando la API web
Recuperar una fila de tabla usando la API web
Actualizar y eliminar filas de tablas usando la API web
Asociar y anular la asociación de filas de tabla mediante la API web
Uso de funciones de API web
Usar acciones de la API web
Ejecución de operaciones por lotes mediante la API web
Suplantar a otro usuario mediante la API web
Realización de operaciones condicionales mediante la API web