Bienvenue à Blogs CodeS-SourceS Identification | Inscription | Aide

Bianca

les bons tuyaux !

[Dynamics CRM 4.0] Comment construire une requête ajax RetrieveMultiple avec plusieurs critères de filtre

Requête Ajax

Voici la structure type d’une requête Ajax que l’on peut émettre depuis le code javascript d’un formulaire CRM pour interroger les services web de Dynamics CRM.
Par exemple voici la tuyauterie nécessaire pour invoquer la méthode RetrieveMultiple :

image

Méthode RetrieveMultiple avec un critère simple

Le corps de la balise RetrieveMultiple doit reprendre le schéma suivant :

image

  • q1:ColumnSet définit les colonnes attendues en réponse de la requête SELECT (le type q1:AllColumns correspond à un SELECT * et q1:ColumnSet permet de spécifier des colonnes précises)
  • q1:Criteria correspond à la clause WHERE de la requête SELECT. Il s’agit d’une collection de conditions définie dans l’élément q1:Conditions, elles-même associées par l’opérateur défini dans l’élément q1:FilterOperator. Chaque élément q1:Condition représente un critère de filtre défini par un attribut, un opérateur et les valeurs associées.

Exemple : Supposons que vous cherchez parmi vos contacts tous les directeurs informatiques basés sur la France, cela donnerait la requête suivante :

image

Cette première structure de requête permet de combiner uniquement des conditions par un même opérateur (And ou Or).

Exemples :

  • WHERE condition a ET condition b,
  • ou WHERE condition a OU condition b OU condition c,
  • etc…

Méthode RetrieveMultiple avec multicritères

Si vous avez à traiter un groupement de conditions plus complexe associant plusieurs opérateurs du type WHERE (condition a ET (condition b OU condition c)), il faut exploiter un élément supplémentaire q1:filters qui permet d’imbriquer plusieurs filtres.

Le schéma est le suivant :

image

  • q1:Filters est une collection de filtres supplémentaires associée à l’ensemble des conditions de premier niveau du critère par l’opérateur q1:FilterOperator.
  • q1:Filter définit une collection de conditions q1:Conditions, elles-même associées par l’opérateur défini dans le sous élément q1:FilterOperator.

    Exemple : Supposons que vous cherchez parmi vos contacts tous les directeurs informatiques basés sur la France ou la Belgique, cela donnerait la requête suivante :

    image

  • Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :
    Posted: jeudi 1 octobre 2009 15:16 par bianca
    Classé sous : ,

    Commentaires

    Pas de commentaires

    Les commentaires anonymes sont désactivés

    Les 10 derniers blogs postés

    - Nouveau système d'aide pour Visual Studio 2010 : pour ceux qui n'apprécient pas trop l'absence d'index... par CoqBlog le il y a 14 heures et 51 minutes

    - L'interface naturelle de Windows Phone 7 Series par Perspective le il y a 16 heures et 7 minutes

    - Comment mapper une vue SQL sur une collection de complex type? par Matthieu MEZIL le 03-19-2010, 21:05

    - SQL Server : Query Notification ou comment être notifié de modifications de données côté application (SqlDependency) par SQL Server vu par Christian Robert le 03-19-2010, 15:06

    - [WF4] Un Binding Activity/ActivityDesigner qui passe mal? par Blog de Jérémy Jeanson le 03-19-2010, 13:42

    - MyTIC – SharePoint 2010 : déjà un mythe Microsoft ? par Le Blog (Vert) d'Arnaud JUND le 03-19-2010, 08:54

    - TechDays 2010 Genève : Retrouvez-moi pour une session sur la Haute disponibilité et le ScaleOut avec SQL Server par SQL Server vu par Christian Robert le 03-18-2010, 15:45

    - [MIX10] Keynote deuxième journée – Internet Explorer 9, Html5, Visual Studio 2010, OData par Atteint de JavaScriptite Aiguë [Cyril Durand] le 03-17-2010, 19:40

    - Certifications beta .NET 4 par Kévin Gosse le 03-17-2010, 19:33

    - [Mix 2010] – Microsoft Translator Technology Preview V2 par RedoBlog - The .NET Gentleman !!! le 03-17-2010, 18:53