2014-06-12 25 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