2014-06-12 94 views
0

Actully我想要的功能,如功能深拷貝 這將複製該功能中的故事和故事內的所有故事和任務。 我修改了StoryDe​​epCopy中的代碼,但功能沒有被填充,只是故事只是被填充,我不知道它爲什麼發生。 我認爲深層複製應用程序的故事是在1.32版本中沒有功能或任何PortfolioItem的概念,但2.0版本的支持。 這可能是原因。 任何建議 這是一些代碼從應用程序功能深度複製

function onChooserClose(chooser, args) { 
    if (args.selectedItem) { 
     selectedValue = args.selectedItem; 
     goButton.setEnabled(true); 
     dojo.byId('featureBox').innerHTML = args.selectedItem.FormattedID + ' - ' + args.selectedItem.Name; 
    } 
    } 

    function showChooser() { 
    var chooserConfig = { 
     fetch:"FormattedID,Name,Description", 
     title: 'Feature Chooser' 
    }; 
    chooser = new rally.sdk.ui.Chooser(chooserConfig, dataSource); 
    chooser.addEventListener('onClose', onChooserClose); 
    chooser.display(); 
    } 

    rally.addOnLoad(function() { 
    goButton = new rally.sdk.ui.basic.Button({ 
     text: "Copy", 
     enabled: false 
    }); 
    goButton.addEventListener('onClick', buttonPressed); 
    goButton.display('goButton'); 

    chooseButton = new rally.sdk.ui.basic.Button({ 
     text: "Choose" 
    }); 
    chooseButton.addEventListener('onClick', showChooser); 
    chooseButton.display('chooseButton'); 

    showChooser(); 

    rally.sdk.ui.AppHeader.setHelpTopic("252"); 
    }); 
}); 
+0

這裏是一個應用程序,可以幫助你深入複製投資組合項目:https://github.com/RallyCommunity/portfolio-item-copy – kelps

回答

0

沒有在應用程序目錄的功能沒有深拷貝等同。您正確的AppSDK1,它的最新版本是1.33沒有PortfolioItem對象的概念。如果你想接入產品項目或阻塞的原因,還是在WS API起來的後續版本推出1.43其他功能這個語法允許的話:

<script type="text/javascript" src="/apps/1.33/sdk.js?apiVersion=1.43"></script> 

這一招的另一個變化如下代碼片段所示從構建PortfolioItems的表AppSDK1應用程序的應用程序:

<script type="text/javascript" src="https://rally1.rallydev.com/apps/1.32/sdk.js"></script> 
    <script type="text/javascript"> 

    function tableExample() { 
     var rallyDataSource = new rally.sdk.data.RallyDataSource('111','222','false','false'); 
     rallyDataSource.setApiVersion("1.43"); 
     function itemQuery() { 
     var queryObject = { 
      key: "pi", 
      type: "portfolioitem", 
      fetch: "FormattedID,Name" 
     }; 
     rallyDataSource.findAll(queryObject, populateTable); 
     } 

這種方法不使用WS API的2.0版工作。

它必須謹慎使用。有一件事肯定會中斷的是計算時間框的開始和結束日期。這就是爲什麼許多傳統拉力賽App Catalog應用程序仍然在1.29。 這是由於API版本1.30的變化。請參閱WS API文檔中的API versioning部分。

+0

thnx尼克..我會嘗試此代碼...並會看到版本。 。 – Sontya

+0

嗨尼克我仍然無法獲取功能(PortfolioItem)與你給的代碼,但它只提取故事。我是否需要編譯並與拉力賽應用程序生成器構建。 – Sontya

+0

我有appsdk1應用程序在這裏使用portfoiliitems:https://github.com/nmusaelian-rally/pi-with-appsdk1您不需要使用appdk1的應用程序生成器。我不確定在設置類型時如何獲取報道:「portfolioitem」 – nickm