0

Contexte:Comment modifier la priorité des opérateurs (d'abord OR, puis AND) dans Team Foundation Queries?

Visual Studio 2015 permet de créer des requêtes sur vos éléments de travail, les bugs etc. stockés dans le serveur Team Foundation (TFS). Il y a un éditeur de requête vous permet d'ajouter des conditions comme

enter image description here

qui renverra des bugs dans les projets en cours qui ne sont pas fermés et résolus. Jusqu'à présent, cela fonctionne très bien, les bogues sont répliqués à partir d'un système externe (HP ALM) dans TFS. Si je veux maintenant limiter les bogues qui me sont assignés, je peux utiliser le champ "Affecté à" et l'ajouter comme contition, mais ALM utilise un compte différent qui est suivi par le champ "HP ALM Assigné à" .


Je veux créer une condition comme

(Team Project = @Project) AND (State <> Closed) AND (State <> Resolced) 
AND (HP ALM Assigned To = "myALMID" OR Assigned To = @Me) 

Mais comme vous pouvez voir l'éditeur de requête ne permet pas d'entrer entre parenthèses, et l'état tel qu'il apparaît ci-dessus ne fait pas la bonne chose, car il va évaluer comme

(Team Project = @Project) AND (State <> Closed) AND (State <> Resolced) 
AND (HP ALM Assigned To = "myALMID") 
OR Assigned To = @Me 

whic h ne semble pas être le même - au lieu de cela montre tous les éléments affectés à @MeOU tous les éléments répondant à la condition

(Team Project = @Project) AND (State <> Closed) AND (State <> Resolced) 
AND (HP ALM Assigned To = "myALMID") 

parce que l'opérateur AND a la priorité sur OR.


Question:
Que dois-je changer pour la requête fonctionne comme prévu?



Mise à jour: Je l'ai essayé avec le regroupement, comme suggéré par Daniel Mann, mais aussi ne pas retourner les résultats que je veux:

enter image description here

J'ai essayé de changer la OR HP ALM Assigned To = "myALMID" à AND HP ALM Assigned To = "myALMID" mais cela ne fonctionne toujours pas correctement.

Répondre

0

Considérant les conseils de Cece - MSFT et Daniel Mann, j'ai modifié la requête comme suit:

enter image description here

Vous pouvez voir que maintenant il sont seulement 14 articles retournés, ce qui est correct. Le problème semble être résolu, merci à la fois - Je vous ai mis à jour parce que vous avez tous deux contribué à la solution.

Maintenant, permettez-moi de résumer, ce que j'appris ceci:

  • L'ordre dans lequel les conditions semblent semblent à la matière. J'ai déplacé le groupe contenant HP Assigned vers et assigné vers le haut pour être capable de sélectionner seulement "OU" entre eux et regroupés ensemble

  • J'ai eu l'ID ALM entre guillemets, ce qui est faux - donc je les ai supprimés .

  • Je regroupé les conditions d'état ensemble (mais je ne suis pas sûr si cela est nécessaire)

Quelle est dommage est que l'éditeur de requête ne permet pas « Not In », seulement « Not In Groupe ", j'ai donc dû répéter les lignes" Etat "pour chaque état que je voulais exclure.

1

Lorsque vous sélectionnez deux ou plusieurs clauses, vous pouvez les regrouper. Il devrait y avoir des boutons sur l'interface utilisateur et des éléments dans le menu contextuel.

+0

Merci pour l'indice, mais voir ma mise à jour - encore des problèmes avec elle. – Matt

1

Les clauses de groupe fonctionnent de mon côté.Vous pouvez vérifier si le champ HP ALM Assigned To a une valeur correcte:

enter image description here