Criar consultas com QueryExpression
Publicado: janeiro de 2017
Aplicável a: Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2016, Dynamics CRM Online
No Microsoft Dynamics 365 (online e local), você pode usar a classe QueryExpression de forma programática para criar uma consulta contendo filtros de dados e critérios de pesquisa que definem o escopo de uma pesquisa da do banco de dados. Uma expressão de consulta é usada para pesquisas de um objeto. Por exemplo, você poderá criar uma pesquisa para retornar todas as contas que correspondam determinados critérios de pesquisa. A classe QueryBase é a classe base para expressões de consulta. Há duas classes derivadas: QueryExpression e QueryByAttribute. A classe QueryExpression oferece suporte a consultas complexas. A classe QueryByAttribute é um simples meio de pesquisar por entidades onde os atributos correspondem aos valores especificados.
Expressões de consulta são usadas nos métodos que recuperam mais de um registro, como o método IOrganizationService.RetrieveMultiple, em mensagens que realizam uma operação em um conjunto de resultados especificado por uma expressão de consulta, como BulkDeleteRequest e quando a ID de um determinado registro não seja conhecido.
Além disso, há um novo atributo na entidade da organização, Organization.QuickFindRecordLimitEnabled. Quando este atributo Boolean for true, um limite foi imposto nas consultas de localização rápida. Se o usuário fornece critérios de pesquisa na localização rápida que não é seletivo o suficiente, o sistema detecta e para a pesquisa. Isso oferece suporte a uma forma mais rápida de localização e pode fazer uma grande diferença em desempenho.
Aviso
Não recupera todos os atributos em uma consulta do efeito negativo no desempenho. Isso é especialmente verdadeiro se a consulta é usada como um parâmetro para uma solicitação de atualização. Em uma atualização, se todos os atributos estão incluídos, isso definirá todos os valores de campo, mesmo se não forem alterados, e dispara frequentemente atualizações em cascata para registros secundários.
Há duas maneiras de criar consultas adicionais para recuperar registros do Microsoft Dynamics 365. O FetchXML, a linguagem de consulta privada do Microsoft Dynamics 365, pode ser usado para executar algumas consultas utilizando consultas baseadas em XML. Para obter mais informações, consulte Criar consultas com FetchXML. Você também pode usar o .NET LINQ (Language-Integrated Query) para redigir consultas.Para obter mais informações:Compilação de consultas com o LINQ (Language-Integrated Query do .NET).
Para salvar uma consulta, é possível convertê-la para FetchXML usando QueryExpressionToFetchXmlRequest e salvar como uma exibição salva usando a entidade userquery.
Nesta Seção
Usar a classe de QueryByAttribute
Usar a classe ConditionExpression
Usar uma junção externa à esquerda em QueryExpression para consultar registros “não incluídos”
Grandes conjuntos de resultados em páginas com o QueryExpression
Exemplo: Recuperar com o relacionamento um-para-muitos
Exemplo: Recuperar um múltiplo com a classe QueryByAttribute
Exemplo: Recuperar um múltiplo com a classe QueryExpression
Exemplo: Usar o QueryExpression com um cookie de paginação
Referência
Confira Também
Exemplo: Consultas de conversão entre o Fetch e o QueryExpression
Microsoft Dynamics 365
© 2017 Microsoft. Todos os direitos reservados. Direitos autorais