2012-07-05 84 views
1

我正在嘗試創建一個拉力JavaScript API應用程序,以將發佈週期內報告的缺陷分解爲「當前」和「之前」。當前=針對所選版本中的故事的缺陷。以前=以前版本中的故事缺陷或者沒有相關故事。在這兩種情況下,缺陷創建日期都必須在發佈的日期範圍內。拉力JavaScript API:我如何確定缺陷要求的發佈?

這裏的基本流程,我去爲:

  1. 選擇釋放
  2. 查詢所有缺陷,其中CreationDate是所選擇的發佈日期範圍
  3. 如果缺陷有要求內和要求在選定的版本中,計爲「當前」,否則計爲「之前」

看起來很簡單,但我碰到一個障礙,在確定缺陷是否是r在選定的版本中發佈故事或不是。缺陷有一個Requirement屬性,它表示缺陷對抗的故事,但Requirement對象沒有Release屬性。只有HierarchicalRequirement具有Release屬性。

有關如何確定缺陷要求的發佈的任何想法?或者也許可以完成同樣的事情的另一種方法?


每請求的代碼片段:

我開始從該目錄Defects by Closer應用程序,因爲它有基本的佈局,我想和剛修改過的查詢以及表填充邏輯。

這裏的查詢:

var relDateBeg = rally.sdk.util.DateTime.toIsoString(new Date(releaseDropdown.getSelectedStart())); 
var relDateEnd = rally.sdk.util.DateTime.toIsoString(new Date(releaseDropdown.getSelectedEnd())); 

var queryCriteria = '((CreationDate >= ' + relDateBeg + ') AND (CreationDate <= ' + relDateEnd + '))'; 
       var queryConfig = 
       { 
        key : "defects", 
        type : "Defect", 
        fetch : "ObjectID,FormattedID,Name,ClosedDate,Requirement,CreationDate", 
        order : "FormattedID", 
        query : queryCriteria 
       }; 

然後在showResults()方法處理的查詢結果,我經歷了所有的缺陷進行迭代,並填充表。在這段代碼中,我檢查缺陷是否有要求,如果是,我想檢查要求屬於哪個版本,這樣我就可以將缺陷歸類爲「當前」或「先前」,但是需求對象沒有發佈財產。

+0

你可以發佈一段代碼,顯示你正在嘗試做什麼?你指定什麼獲取參數? – ebricey 2012-07-06 05:04:43

回答

0

將發佈添加到您的抓取。這應該包括髮布每個缺陷和相關故事的結果。

+0

好吧,我覺得很蠢。猜猜我應該嘗試過,但根據API參考,Requirement沒有Release屬性,Requirement也沒有繼承。但是像defect.Requirement.Release.Name這樣的東西實際上可以工作,如果你在提取中包含Release(假設缺陷有一個故事,並且故事有一個發佈,當然)。謝謝您的幫助。這將是拉動我們所尋找的指標的巨大節省時間。 – mmchenry 2012-07-12 20:36:52

+0

我們的api有很多有趣的角落和裂縫 - 我花了相當長的一段時間才弄到頭。取指令有點奇怪,因爲它也會在任何子對象上包含該字段,即使請求的類型沒有它也是如此。快樂的編碼。 – 2012-07-13 14:57:36