2012-04-13 54 views
1

我正在嘗試創建一個選擇器,可以選擇分配給所選迭代的工作產品。爲什麼我的故事選擇器上的查詢不起作用?

由下面的代碼創建的選配器僅顯示「沒有任何可顯示內容」。即使我知道迭代中有幾個用戶故事。

註釋查詢規範會生成一個Chooser,它顯示項目整個歷史記錄中的200個工作產品。

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

     var iterDropdown; 
     var wpChooser; 

     function onWPSelected(wpChooser, eventArgs) { 
     var selectedItem = eventArgs.selectedItem; 

     console.log(selectedItem); 
     }; 

     function displayChooser(iterSelectedName) { 
     var chooserConfig = { 
      type : 'HierarchicalRequirement', 
      title : 'Choose a Work Product', 
      fetch : 'FormattedID,Name', 
      width : 600 
     }; 

     chooserConfig.query = '(Iteration.Name = "' + iterSelectedName + '")'; 

     wpChooser = new rally.sdk.ui.Chooser(chooserConfig, rallyDataSource); 
     wpChooser.display(onWPSelected); 
     }; 

     function onIterationSelected(dropdown, eventArgs) { 
     var selectedName = dropdown.getSelectedName(); 

     displayChooser(selectedName); 
     }; 

     function showDropdown() { 
     var iterConfig = { 
      rememberSelection : false 
     }; 
     iterDropdown = new rally.sdk.ui.IterationDropdown(iterConfig, rallyDataSource); 
     iterDropdown.display(document.getElementById('iterationDiv'), onIterationSelected); 
     }; 

     //Load initial data 
     showDropdown(); 
     }; 

    rally.addOnLoad(addChooser); 

我已經嘗試在選配器的fetch屬性中添加迭代,但這沒有任何影響。

回答

1

如果你看一下發送到拉力賽的請求(在Chrome調試器或Firebug的),你會發現它有一組額外的括號的:

((Iteration.Name = "My Iteraton")) 

此外以下錯誤字符串是從返回WSAPI:

[Could not parse: Unknown operator ")"] 

看起來這是我們的文檔Chooser中的一個錯誤。在何時以及何時不使用parens查詢參數(取決於您使用的是哪個組件)時會出現一些不一致情況。在這種情況下,你不應該:

chooserConfig.query = 'Iteration.Name = "' + iterSelectedName + '"'; 

注意您還可以使用IterationDropdown's getQueryFromSelected方法:

chooserConfig.query = iterDropdown.getQueryFromSelected(); 

我會確保文件被更新,以在本例中不使用括號。

+0

感謝您的回答和建議。我想這是一個格式問題,但我找不到正確的組合。最後我使用了IterationDropdown的getQueryFromSelected。這似乎是更優雅的解決方案。再次感謝。 – 2012-04-16 14:16:41