< Précédent | Suivant >

Génération d'une requête

Générez une requête en créant un objet QueryDef grâce à la méthode BuildQuery de l'objet Session.
Une requête est composée d'une liste de zones pour un type d'enregistrement donné, pour lequel vous souhaitez récupérer les valeurs. Les enregistrements sont renvoyés dans un objet ResultSet. La requête renvoie les zones requises pour tous les enregistrements d'un type donné. Vous pouvez ensuite itérer sur les ensembles de résultats et traiter les données.

La création d'une requête implique la création d'au moins trois objets distincts : un objet QueryDef, un objet QueryFilterNode et un objet ResultSet. Les requêtes plus complexes peuvent également nécessiter la création d'objets QueryFilterNode supplémentaires.

Pour créer une requête, procédez comme suit :

  1. Créez une requête à l'aide de l'objet QueryDef pour définir les données recherchées. L'objet QueryDef contient la définition d'une requête pour une base de données Rational ClearQuest. Lorsqu'un objet QueryDef est créé, vous pouvez l'utiliser pour obtenir des informations de la base de données. Pour créer cet objet, utilisez la méthode BuildQuery de l'objet Session.
  2. Utilisez les méthodes de QueryDef pour ajouter des critères de recherche et préciser les zones de chaque enregistrement que la requête doit renvoyer.
  3. Créez un objet ResultSet pour contenir les données renvoyées. Pour créer cet objet, appelez la méthode BuildResultSet de l'objet Session. L'objet ResultSet crée alors un ensemble de structures de données internes à l'aide des informations de l'objet QueryDef en tant que modèle. Lorsque la requête est exécutée, l'objet ResultSet complète ses structures de données par des données provenant de la requête.
  4. Exécutez la requête en appelant la méthode Execute ou ExecuteAndCountRecords de l'objet ResultSet. En appelant l'une de ces méthodes, un ensemble de résultats est alimenté avec les données extraites de la base de données.
  5. Accédez aux données en itérant sur l'objet ResultSet et en utilisant d'autres méthodes de l'objet ResultSet pour obtenir des informations sur les zones d'un enregistrement.
Plutôt que de renvoyer la totalité de l'enregistrement, une requête renvoie uniquement les zones de l'enregistrement que vous spécifiées, en appelant la méthode BuildField de l'objet QueryDef. La méthode Execute renvoie les résultats sans ordre particulier. Par conséquent, l'objet ResultSet utilise un mécanisme basé sur le curseur afin de permettre au code de se déplacer dans les enregistrements, un à un.
< Précédent | Suivant >

Commentaire