Partager via


Comment : Concevoir une requête à l'aide du concepteur de requêtes

Une requête retourne des données qui satisfont certains critères.Pour plus d'informations, consultez Requêtes : récupération d'informations à partir d'une source de données.Utilisez une requête pour afficher les informations dans un écran.Vous pouvez également utiliser les résultats d'une requête dans votre logique métier personnalisée.

Pour commencer, ajoutez une requête au projet.Pour plus d'informations, consultez Comment : Ajouter, supprimer et modifier une requête.La requête s'ouvre automatiquement dans le Concepteur de requêtes.Dans le concepteur de requêtes, concevez une requête en exécutant l'une des tâches suivantes :

  • Ajouter des conditions de filtre.

    Une condition de filtre décrit un test que chaque ligne de données doit réussir pour être incluse dans les résultats.

  • Utiliser un paramètre dans une condition de filtre.

    Les utilisateurs de l'application peuvent fournir une valeur au paramètre au moment de l'exécution en tapant des informations ou en faisant des sélections dans l'interface utilisateur.

  • Regrouper des conditions de filtre.

    Utilisez des groupes de filtre pour garantir qu'un ensemble de conditions de filtre sont évaluées en tant qu'unité unique distincte des autres conditions de filtre.

  • Ajouter des termes de tri.

    Les termes de tri vous permettent de définir l'ordre de tri initial des lignes de données retournées par une requête.

  • Réorganiser des conditions de filtre, des groupes de filtres, des termes de tri et des paramètres.

    Vous pouvez modifier l'ordre dans lequel les conditions de filtre, les groupes de filtres, les termes de tri et les paramètres sont évalués dans la requête.

Ajouter des conditions de filtre

Les conditions de filtre spécifient les lignes de données que la requête doit retourner.Par exemple, vous pouvez ajouter une condition de filtre qui retourne uniquement les clients implantés à New York.Une condition de filtrage est le même qu'une condition de recherche dans la clause WHERE d'une instruction SQL traditionnelle.Les conditions de filtre contiennent une propriété de sélection, un opérateur, un type de comparaison et une valeur de comparaison.Les conditions de filtre sont séparées par des opérateurs booléens.

L'illustration suivante montre les parties d'une condition de filtre.

Conditions de filtre dans une requête

Pour ajouter une condition de filtre

  1. Dans le Concepteur de requêtes, développez la section Filtrer de la requête.

  2. Dans la section Filtre, cliquez sur le bouton Ajouter un filtre.

    Une condition de filtre est ajoutée à la section Filtrer.Plusieurs listes déroulantes et une zone de texte s'affichent en regard de la condition de filtre.

  3. Dans la première liste déroulante, sélectionnez une des conditions suivantes :

    • Sélectionnez Where pour retourner toutes les lignes de données qui sont conformes au reste de la condition de filtre.

    • Sélectionnez Where Not pour retourner les lignes de données qui ne sont pas conformes au reste de la condition de filtre.

  4. Dans la deuxième liste déroulante, sélectionnez la propriété que vous voulez utiliser pour la condition de filtre.

    Par exemple, si vous voulez que la requête retourne des commandes qui ont une date spécifique, la propriété de sélection est OrderDate.

  5. Dans la troisième liste déroulante, sélectionnez l'opérateur que vous voulez utiliser.

    Par exemple, pour retourner des commandes pour lesquelles la date est antérieure au « 22/09/2009 12:00:00 », sélectionnez l'opérateur < (inférieur à).

  6. Ajoutez une valeur de comparaison.Pour cela, cliquez sur le bouton en regard de la zone de texte qui s'affiche à la fin de la condition de filtre, puis cliquez sur l'un des boutons suivants :

    • Cliquez sur Littéral pour taper la valeur que vous voulez utiliser comme valeur de comparaison.

    • Cliquez sur Propriété pour utiliser une propriété comme valeur de comparaison.

      Si vous sélectionnez cette option, la zone de texte devient une liste déroulante.

    • Cliquez sur Paramètre pour ajouter un paramètre comme valeur de comparaison.

      Si vous sélectionnez cette option, la zone de texte devient une liste déroulante.

    [!REMARQUE]

    Pour certains types de champs, tels que les champs DateTime, vous pouvez cliquer sur Global pour utiliser des valeurs relatives telles que Maintenant, Aujourd'hui ou Début de la semaine.

  7. Dans la liste déroulante ou zone de texte qui s'affiche à la fin de la condition de filtre, exécutez l'une des étapes suivantes :

    • Si vous sélectionnez Littéral à l'étape précédente, tapez une valeur telle que 22/9/2009 12:00:00.

    • Si vous sélectionnez Propriété à l'étape précédente, sélectionnez ou tapez le nom de la propriété.

    • Si vous sélectionnez Paramètre à l'étape précédente, sélectionnez un paramètre.

  8. Répétez les étapes 2 à 7 pour à ajouter autant de conditions de filtre que vous le voulez à la requête.

Vous pouvez associer une condition de filtre à d'autres conditions de filtre à l'aide de l'un des opérateurs booléens suivants : And, Or, And Not, Or Not.

Utiliser un paramètre dans une condition de filtre

Vous pouvez ajouter un paramètre comme valeur de comparaison dans une condition du filtre.Vous pouvez concevoir des écrans qui permettent aux utilisateurs de fournir cette valeur au moment de l'exécution.Vous pouvez également fournir cette valeur comme paramètre à la méthode de requête si vous exécutez la requête à partir de votre logique métier personnalisée.

Pour ajouter un paramètre à une requête

  1. Dans le Concepteur de requêtes, développez la section Paramètre.

  2. Dans la section Paramètre du concepteur, cliquez sur Ajouter un paramètre.

    Un paramètre est ajouté à la section Paramètre.Une zone de texte et une liste déroulante s'affichent en tant que partie du paramètre.

  3. Dans la zone de texte du paramètre, fournissez un nom (par exemple, SalesTerritory).

  4. Dans la liste déroulante du paramètre, sélectionnez le type de données du paramètre (par exemple, Chaîne).

  5. Dans le menu Affichage, cliquez sur Fenêtre Propriétés.

  6. Dans la fenêtre Propriétés, cochez ou décochez la case Is Optional.

    • Activez la case à cocher Est facultatif, si vous voulez que la requête exclue les conditions de filtre qui utilisent le paramètre quand la valeur du paramètre est Null.

    • Désactivez la case à cocher Est facultatif, si vous voulez que la requête inclue toujours des conditions du filtre qui utilisent le paramètre même quand la valeur du paramètre est Null.Si la valeur du paramètre est Null, la valeur Null sera utilisée comme valeur de comparaison lors de l'évaluation de la condition de filtre.

  7. Dans le Concepteur de requêtes, développez la section Filtrer.

  8. Dans la section Filtre du concepteur, pointez sur la condition de filtre, cliquez sur le bouton à la fin de la condition de filtre, puis cliquez sur Paramètre.

  9. Dans la liste déroulante en regard du bouton, sélectionnez le paramètre.

Vous pouvez permettre aux utilisateurs de taper ou sélectionner des valeurs de paramètre dans un écran.Par exemple, vous pouvez concevoir un écran qui permet à un utilisateur de consulter une liste de clients en sélectionnant un secteur de vente.

Vous pouvez également lier le paramètre aux propriétés d'autres listes.Par exemple, vous pouvez concevoir un écran qui permet à un utilisateur de consulter une liste de commandes en sélectionnant un client.Pour plus d'informations sur la façon de permettre aux utilisateurs de fournir une valeur de paramètre sur un écran, consultez Comment : Fournir une valeur à un paramètre de requête.

Regrouper des conditions de filtre

Vous pouvez regrouper des conditions de filtre afin qu'elles soient évaluées en tant qu'unité.Les conditions de filtre de groupement sont semblables aux parenthèses encadrant une expression dans une instruction SQL.Les expressions entre parenthèses sont évaluées avant les autres expressions dans l'instruction.

L'illustration suivante montre deux groupes de filtres.

Groupes de filtre dans une requête

Pour créer un groupe de filtres

  1. Dans le Concepteur de requêtes, développez la section Filtrer.

  2. Dans la section Filtrer du concepteur, pointez sur Ajouter un filtre, cliquez sur la flèche bas, puis cliquez sur Groupe.

    Un groupe de filtres est ajouté à la section Filtrer.Une nouvelle condition de filtre est ajoutée au groupe de filtres.

Pour ajouter des conditions de filtre à un groupe de filtres

  • Effectuez l'une des étapes suivantes :

    • En bas du groupe de filtres, cliquez sur Ajouter un filtre.

      [!REMARQUE]

      Le bouton Ajouter un filtre s'affiche à la fin de la ligne qui représente le groupe de filtres.

    • Dans la section Filtrer du concepteur, faites glisser une condition de filtre existante vers le groupe de filtres.

Pour ajouter un groupe de filtres à un autre groupe de filtres

  • Effectuez l'une des étapes suivantes :

    • En bas du groupes de filtres, pointez sur Ajouter un filtre, cliquez sur la flèche bas, puis sur Groupe.

      [!REMARQUE]

      Le bouton Ajouter un filtre s'affiche à la fin de la ligne qui représente le groupe de filtres.

    • Dans la section Filtrer du concepteur, faites glisser un groupe de filtres existant vers le groupe de filtres.

    Le groupe de filtres enfant est placé dans le groupe de filtres parent.

Vous pouvez associer des groupes de filtres à d'autres conditions de filtre et groupes de filtres dans la requête à l'aide de l'un des opérateurs booléens suivants : And, Or, And Not, Or Not.

Ajouter des termes de tri

Vous pouvez spécifier l'ordre dans lequel les résultats d'une requête s'affichent en ajoutant un ou plusieurs termes de tri.Un terme de tri est semblable à une colonne dans la clause ORDER BY d'une instruction SQL traditionnelle.

Pour trier les résultats d'une requête

  1. Dans le Concepteur de requêtes, développez la section Trier.

  2. Dans la section Trier du concepteur, cliquez sur Ajouter un tri.

    Un terme de tri est ajouté à la liste des termes de tri.Deux listes déroulantes s'affichent en regard du terme de tri.

  3. Dans la première liste déroulante, sélectionnez la propriété que vous voulez utiliser pour le terme de tri.Par exemple, pour trier les contacts par nom, sélectionnez la propriété LastName de l'entité Contact.

  4. Dans la deuxième liste déroulante, sélectionnez un des éléments suivants :

    1. Sélectionnez Croissant pour trier les résultats du plus petit au plus grand.Par exemple, les noms qui commencent par la lettre A s'affichent en premier.Les noms qui commencent par la lettre Z s'affichent en dernier.

    2. Sélectionnez Décroissant pour trier les résultats du plus grand au plus petit.Par exemple, les noms qui commencent par la lettre Z s'affichent en premier.Les noms qui commencent par la lettre A s'affichent en dernier.

  5. Répétez les étapes 2 à 4 pour ajouter autant de termes de tri à la requête que vous le voulez.

Les termes de tri ne définissent que l'ordre de tri initial des lignes de données qui s'affichent dans un écran.Les utilisateurs peuvent consulter les lignes de données dans un ordre différent en interagissant avec l'écran.

Réorganiser des conditions de filtre, des groupes de filtres, des termes de tri et des paramètres

Vous pouvez modifier l'ordre dans lequel les conditions de filtre, les groupes de filtres, les termes de tri et les paramètres sont évalués dans la requête.

Pour réorganiser les conditions de filtre et les groupes de filtres

  1. Dans le Concepteur de requêtes, développez la section Filtrer.

  2. Dans la section Filtrer du concepteur, faites glisser une condition de filtre ou un groupe de filtres vers un emplacement qui est plus haut ou plus bas dans la liste.

Pour réorganiser les termes de tri

  1. Dans le Concepteur de requêtes, développez la section Trier.

  2. Dans la section Trier du concepteur, faites glisser un terme de tri vers un emplacement qui est plus haut ou plus bas dans la liste.

La modification de l'ordre des termes de tri affecte la manière dont les données sont triées dans les résultats de la requête.Par exemple, supposons qu'il y a deux termes de tri, un qui trie les données par SalesTerritory, et un autre qui trie par OrderDate.Dans cet exemple, les commandes seraient triées en premier par SalesTerritory.Ensuite, les commandes au sein de chaque groupe SalesTerritory seraient triées par dates.

Pour réorganiser les paramètres

  1. Dans le Concepteur de requêtes, développez la section Paramètres.

  2. Dans la section Paramètres du concepteur, faites glisser un paramètre vers un emplacement qui est plus haut ou plus bas dans la liste.

Étapes suivantes

Pour apprendre comment utiliser une requête dans un écran, consultez Comment : créer un écran Silverlight.

Pour savoir comment étendre une requête au-delà des fonctionnalités du concepteur de requêtes, consultez Comment : Étendre une requête à l'aide du code.

Voir aussi

Tâches

Comment : Fournir une valeur à un paramètre de requête

Comment : Étendre une requête à l'aide du code

Comment : Récupérer les données d'une requête à l'aide du code

Comment : Ajouter, supprimer et modifier une requête

Procédure pas à pas : conception d'un écran

Autres ressources

Requêtes : récupération d'informations à partir d'une source de données