Question

I'm making a custom app which should show the Name and the FormattedID. I used the example in http://developer.rallydev.com/help/tables and modified it a little bit but is the same funcionality.

Something is wrong with my function but cant find the mistake....

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<!-- Copyright (c) 2011  Rally Software Development Corp.  All rights reserved -->
<html>
<head>
    <title>Samys Board</title>
    <meta name="Name" content="App Example: Table" />
   <meta name="Version" content="2010.4" />
   <meta name="Vendor" content="Rally Software" />
   <script type="text/javascript" src="/apps/1.24/sdk.js"></script>

   <script type="text/javascript">





       function tableExample() {

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

           modelAuswahl();

           function modelAuswahl() {

               var queryObj = { key: 'erg_story',
                   type: ["PortfolioItem"],
                   fetch: 'FormattedID,Name'
               };

               rallyDataSource.findAll(queryObj, elementShow);
           }


           function elementShow(results) {

               var tabellenBereich;

               var config = { columns:
             [{ key: 'FormattedID', header: 'Formatted ID', width: 100 },
             { key: 'Name'}]
               };

               var table = new rally.sdk.ui.Table(config);

               table.addRows(results.erg_story);


               tabellenBereich = document.getElementById('resultID');

               tabellenBereich.innerHTML = '<h1>Testing get Elements from Database</h1>';
               table.display(tabellenBereich);
               //----Ende representation-----------------
           };

       }

       rally.addOnLoad(tableExample); 
</script>
</head>
<body>
<table id="display" cellpadding=3 rules=rows>
<tr BGCOLOR=#99CCFF  height=25>
<td width=80;><strong>ID</td>
<td width=670;><strong>Name</td>
<td width=200;><strong>Original</td>
<td width=200;><strong>New Size</td>
<td width=200;><strong>Cycle Time</td>
</tr>
</table>
<div id="resultID"></div>
</body>
</html>
Was it helpful?

Solution

Samy,

Below is some code that will work.

Four things have been fixed.

  • A table can be displayed directly into a div (and you can pass in the div name)
  • You don't need an html table
  • I changed the meta data to refer to the name of your app (then we can track how many folks write apps
  • You were referencing 1.24 of our App SDK and thus our WSAPI. Portfolio Items did not exist in version 1.24. You could see that in the web service result

Mark

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<!-- Copyright (c) 2011  Rally Software Development Corp.  All rights reserved -->
<html>
<head>
    <title>Samys Board</title>
    <meta name="Name" content="App: Samys Table" />
   <meta name="Version" content="2010.4" />
   <meta name="Vendor" content="Rally Software" />
   <script type="text/javascript" src="/apps/1.30/sdk.js"></script>

   <script type="text/javascript">





       function tableExample() {

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

           modelAuswahl();

           function modelAuswahl() {

               var queryObj = { key: 'erg_story',
                   type: ["PortfolioItem"],
                   fetch: 'FormattedID,Name'
               };

               rallyDataSource.findAll(queryObj, elementShow);
           }


           function elementShow(results) {

               var config = { columns:
             [{ key: 'FormattedID', header: 'Formatted ID', width: 100 },
             { key: 'Name'}]
               };

               var table = new rally.sdk.ui.Table(config);

               table.addRows(results.erg_story);

               table.display('resultID');
               //----Ende representation-----------------
           };

       }

       rally.addOnLoad(tableExample); 
</script>
</head>
<body>
<div id="resultID"></div>
</body>
</html>
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top