Запросы заданий членами команды - PullRequest
1 голос
/ 13 января 2012

Могу ли я изменить эту строку запроса, чтобы отфильтровать результаты поиска только с задачами, владельцы которых являются членами команды текущего проекта?

Это мой запрос, который работает до сих пор, кроме оператора членов команды

queryObject = { key: "tasks", type: "Task", fetch: "FormattedID,Owner,DisplayName,Name,State,Estimate,ToDo,Iteration,Name", query: ' (((State = "Completed") AND (Iteration = ' + selectedItr + ')) AND (Project.TeamMembers contains Owner))' };

1 Ответ

0 голосов
/ 14 января 2012

К сожалению, вы не можете получить все данные в одном запросе.Вы можете сначала получить членов своей команды, а затем создать запрос ORed со всеми их ссылками и выполнить второй запрос для своих задач:

var rallyDataSource = new rally.sdk.data.RallyDataSource('__WORKSPACE_OID__', 
                                              '__PROJECT_OID__',
                                               '__PROJECT_SCOPING_UP__', 
                                              '__PROJECT_SCOPING_DOWN__'); 

var teamMembersQuery = { key: "teamMembers", type: "User", 
    fetch: "UserName", query: '(TeamMemberships = /project/__PROJECT_OID__)'};

rallyDataSource.findAll(teamMembersQuery, function(results) {
    var ownerQueries = [];
    rally.forEach(results.teamMembers, function(teamMember) {
        ownerQueries.push('Owner = ' + teamMember._ref);
    });

    var taskQuery = {key: "tasks", type: "Task", 
        fetch: "FormattedID,Owner,DisplayName,Name,State,Estimate,ToDo,Iteration,Name", 
        query: rally.sdk.util.Query.and(['State = "Completed"', 'Iteration = ' +
        selectedItr]).and(rally.sdk.util.Query.or(ownerQueries)) };

   rallyDataSource.findAll(taskQuery, function(results) {
       //process results.tasks here
   });

});

Дополнительные примеры написания расширенных запросов см. В справке RallyDataSource пакета SDK приложения.: http://developer.rallydev.com/help/data-examples

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...