Crear consultas con QueryExpression

 

Publicado: noviembre de 2016

Se aplica a: Dynamics CRM 2015

En Microsoft Dynamics CRM 2015 y actualización de Microsoft Dynamics CRM Online 2015, puede usar la clase QueryExpression para crear una consulta mediante programación que contenga los filtros y las condiciones de búsqueda de los datos que definen el ámbito de una búsqueda de base de datos. Una expresión de consulta se usa para búsquedas de un solo objeto. Por ejemplo, puede crear una búsqueda que devuelva todas las cuentas que coinciden con determinados criterios de búsqueda. La clase QueryBase es la clase base para las expresiones de consulta. Hay dos clases derivadas: QueryExpression y QueryByAttribute. La clase QueryExpression admite consultas complejas. La clase QueryByAttribute constituye un instrumento sencillo para buscar entidades en las que los atributos coinciden con los valores especificados.

Las expresiones de consulta se usan en los métodos que recuperan más de un registro, como el método IOrganizationService.RetrieveMultiple, en mensajes que realizan una operación en un conjunto de resultados especificado por una expresión de consulta, como BulkDeleteRequest, y cuando el id. de un registro específico no se conoce.

Además, hay un nuevo atributo en la entidad de la organización, Organization.QuickFindRecordLimitEnabled. Cuando este atributo Boolean es true, se impone un límite de consultas de búsqueda rápida. Si un usuario ofrece criterios de búsqueda para una búsqueda rápida que no es muy selectiva, el sistema lo detecta y se detiene la búsqueda. Esto permite un formulario más rápido de búsqueda rápida y puede suponer una gran diferencia de rendimiento.

Advertencia

No se recuperan todos los atributos en una consulta debido al efecto negativo en el rendimiento. Este valor es "true" si la consulta se usa como parámetro de una solicitud de actualización. En una actualización, si están incluidos todos los atributos, se definen todos los valores de campo, incluso si no se cambian. Con frecuencia, esto activa las actualizaciones en cascada para los registros secundarios.

Existen dos métodos adicionales para crear consultas para recuperar los registros de Microsoft Dynamics 365.FetchXML, el lenguaje de consultas propietario de Microsoft Dynamics 365, se puede usar para realizar algunas consultas mediante consultas basadas en XML. Para obtener más información, vea Crear consultas con FetchXML. También puede usar Consulta integrada del lenguaje .NET (LINQ) para escribir consultas.Más información:Crear consultas con LINQ (consulta integrada del lenguaje .NET).

Para guardar una consulta, puede convertirla en FetchXML usando QueryExpressionToFetchXmlRequest y guardarla como una vista guardada usando la entidad userquery.

En esta sección

Usar la clase QueryByAttribute

Usar la clase QueryExpression

Use la clase ColumnSet

Usar la clase ConditionExpression

Usar la clase FilterExpression

Usar una combinación externa izquierda en QueryExpression para consultar los registros "no en"

Comprobar valores nulos

Conjuntos de resultados grandes de página con QueryExpression

Ejemplo: recuperar con relación uno a varios

Ejemplo: recuperar varios con la clase QueryByAttribute

Ejemplo: Recuperación múltiple con la clase de QueryExpression

Ejemplo: usar QueryExpression con una cookie de paginación

Referencia

QueryBase

QueryExpression

QueryByAttribute

RetrieveMultiple

ColumnSet

ConditionExpression

FilterExpression

PagingCookie

Ver también

Ejemplo: convertir consultas entre Fetch y QueryExpression

© 2017 Microsoft. Todos los derechos reservados. Copyright