Bienvenue à Blogs CodeS-SourceS Identification | Inscription | Aide

[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

    - TechDays Paris 2012 : Session pleinière jour 3 par Blog Technique de Romelard Fabrice le il y a 21 heures et 38 minutes

    - Mishra Reader : un lecteur RSS très Zune Style en Open Source ! par Cyril Sansus le 02-09-2012, 08:28

    - [framework 4] Les Tasks et le Thread UI par Fathi Bellahcene le 02-09-2012, 00:33

    - Workflow Foundation 3 a un pied dans la tombe par Blog de Jérémy Jeanson le 02-08-2012, 22:15

    - TechDays Paris 2012 : Nouvelles tendances du poste de travail - Bring Your own PC par Blog Technique de Romelard Fabrice le 02-08-2012, 19:42

    - TechDays Paris 2012 : System Center Service Manager 2012 Vue d’ensemble par Blog Technique de Romelard Fabrice le 02-08-2012, 17:32

    - TechDays Paris 2012 : Pleinière second jour par Blog Technique de Romelard Fabrice le 02-08-2012, 16:23

    - TechDays Paris 2012 : Retour d'expérience sur la mise en place d'un Cloud Privé par Blog Technique de Romelard Fabrice le 02-08-2012, 16:04

    - TechDays Paris 2012 : Comment SharePoint a sauvé mes TechDays par Blog Technique de Romelard Fabrice le 02-07-2012, 23:59

    - Perspective 3.0 pour Silverlight 5.0 par Perspective le 02-07-2012, 22:39