我们希望在SharePoint网站中显示Portfolio Timeline Rally App,以便高层管理人员可以很好地了解投资组合中的内容,但看起来该功能不可用。因此,作为“下一件最好的事情”,他们希望有一个投资组合项目的列表,其中包含开始/结束日期以及表中显示的其他一些字段。

到目前为止,我已经能够为只读用户生成登录密钥,并将其放入在Rally网站和SO之间找到的一些示例代码中,并成功显示用户故事列表:

 <script type="text/javascript" src="https://rally1.rallydev.com/apps/1.28/sdk.js?loginKey=[loginkey]"></script>
 <script type="text/javascript">
    function onLoad() {
        rally.sdk.ui.AppHeader.destroy();
        var workspaceId = "0123456789";
        var projectId = "0123456789";
        var rallyDataSource = new rally.sdk.data.RallyDataSource(workspaceId,projectId, 'false', 'true');
        var config = {type: "hierarchicalrequirement", columnKeys:["FormattedID", "Name"]};
        var table = new rally.sdk.ui.Table(config, rallyDataSource);
        table.display("tableDiv");
    }
    rally.addOnLoad(onLoad);
</script>

很好但是,我遇到了以下问题:
  • 如果我尝试将配置的类型从hierarchicalrequirement更改为PortfolioItem,它似乎并没有检索到任何
  • 如果我尝试将sdk.js的转速提高到1.28以上,则rally.addOnLoad似乎根本不会触发onLoad事件,如果我触发了该代码,则会收到一些其他错误(例如RallyDataSource未定义)与我自己的onLoad事件

  • 我是否错过了一些超显而易见的东西? 2.0 SDK还应该使用其他功能吗?

    最佳答案

    由于对Rally Webservices API进行了更改,以允许使用dynamic typing of Portfolio Items,因此在使用AppSDK 1.x时,有必要将AppSDK Javascript工具包(1.32)的最新可用版本与处理动态输入的Webservices API版本1.37配对。 PortfolioItems。

    以下方法适用于您的代码:

    <script type="text/javascript" src="https://rally1.rallydev.com/apps/1.32/sdk.js?loginKey=[loginkey]"></script>
     <script type="text/javascript">
        function onLoad() {
            rally.sdk.ui.AppHeader.destroy();
            var workspaceId = "123456789";
            var projectId = "2345678910";
            var rallyDataSource = new rally.sdk.data.RallyDataSource(workspaceId,projectId, 'false', 'true');
            // Set Webservices API version to use 1.37
            rallyDataSource.setApiVersion('1.37');
            var config = {type: "portfolioitem", columnKeys:["FormattedID", "Name"]};
            var table = new rally.sdk.ui.Table(config, rallyDataSource);
            table.display("tableDiv");
        }
        rally.addOnLoad(onLoad);
    </script>
    

    AppSDK 2.0+将是处理组合项目类型的最佳方法,因为一旦成为​​GA,它将成为首选和受支持的Javascript工具包。但是,目前,AppSDK 2.0预览版中还没有“类似于LoginKey”的功能-因此,上述方法现在应该可以使您在AppSDK 1.32中使用LoginKey。

    09-30 16:11
    查看更多