---
title: "Opened vs Resolved Issues (Table Report)"
canonical: "https://support.appfire.com/space/PSJ/15482458/Opened%20vs%20Resolved%20Issues%20(Table%20Report)"
format: markdown
---
> Macro (aura-html)


<span style="color: #172b4d">This particular example will generate a table report showing the number of opened issues vs number of resolved issues for a given list of projects. </span>

|  |
| --- |
| `string [] projects = argv[` `0` `];`   
 `string [] resolvedIssues;`   
 `string [] openedIssues;`   
 `for` `(string p in projects) {`   
 `    ` `resolvedIssues[p] += countIssues(` `"project = "` `+ p  + ` `" AND status in (Done, Closed, Resolved)"` `);`   
 `    ` `openedIssues[p] += countIssues(` `"project = "` `+ p  + ` `" AND status not in (Done, Closed, Resolved)"` `);`   
 `}`   
   
 `SILReportingHeader [] headers; ` `// the hearders of the table`   
   
 `SILReportingHeader h1;`   
 `
            `[h1.name](http://h1.name)` = ` `"Opened Issues"` `;`   
 `h1.sortable = ` `"sortable"` `;`   
 `h1.color = ` `"white"` `;`   
 `h1.bgColor = ` `"#79aadb"` `;`   
 `headers += h1;`   
 `    `   
 `SILReportingHeader h2;`   
 `
            `[h2.name](http://h2.name)` = ` `"Resolved Issues"` `;`   
 `h2.sortable = ` `"sortable"` `;`   
 `h2.color = ` `"white"` `;`   
 `h2.bgColor = ` `"#79aadb"` `;`   
 `headers += h2;`   
   
 `string [][] rows; ` `// populating the rows`   
 `for` `(string p in projects){`   
 `    ` `rows += {openedIssues[p], resolvedIssues[p]};`   
 `}`   
   
 `SILReportingTable table;`   
 `table.headers = headers;`   
 `table.rows = rows;`   
   
 `return` `table;` |

![image](media://94264fda-9a48-4aed-9aaa-a0847d01f4cf)

> ℹ️ <span style="color: #333333">For more information about the predefined structures that comes in help for the table reports check the </span> [predefined structure types](https://appfire.atlassian.net/wiki/spaces/PSJ/pages/15487117) <span style="color: #333333"> page.</span>