More Variables for Built-in Reports?
For example, the Repository Contents report link looks like this:
/ram/admin/_rlvid.jsp.faces?_rap=!repositoryMetrics&_rvip=/admin/communities.jsp&reportId=repositoryContentsReport&dateRange=week
Are there other options for configuring this report available? It would be great if I could run this report but specify just one community.
Likewise with the other predefined reports. Are there ways to vary those?
I didn't see anything in the Help that talked about modifying these reports. I'd be interested in learning more, even if it isn't officially supported.
Thanks...........Dan
4 answers
A workaround, is to use the Activity Audit to generate report/download a file and use a spread sheet to generate a report .... a few steps.... :-(
Another option, if you get someone with some HTML/js skills, to generate a few small HTML files, that do dojo/graphics rendering for a report, and store these files as part of an asset ... so that it generates reports dynamically from a URL report. for example the following will generate a bar graph for access activity for a specific asset.
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<script type="text/javascript" src="/ram/javascript/dojo/dojo150/dojo/dojo.js"
djConfig="isDebug: true, parseOnLoad: true">
</script>
<script type="text/javascript">
dojo.require("dojo.parser");
dojo.require("dojo._base.xhr");
dojo.require("dojox.charting.Chart2D");
dojo.require("dojox.charting.action2d.Highlight");
dojo.require("dojox.charting.action2d.Tooltip");
dojo.require("dojox.charting.widget.Legend");
</script>
<style type="text/css">
@import "/ram/javascript/dojo/dojo150/dojo/resources/dojo.css";
@import "/ram/javascript/dojo/dojo150/dijit/themes/tundra/tundra.css";
@import "/ram/javascript/dojo/dojo150/dijit/themes/dijit.css";
</style>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>User Service Wrapper</title>
</head>
<body class="tundra" onload="fetchActivity()">
<script type="text/javascript">
var week = [0, 0];
var month = [0, 0]
var quarter = [0, 0];
var year = [0, 0];
function updateCounter(idx, delta) {
if (delta<=7)
week[idx] ++;
if (delta<=30)
month[idx]++;
if (delta<=91)
quarter[idx]++;
if (delta<=365)
year[idx]++;
}
function countActivity(act) {
var today = new Date();
var date = new Date(act.timestamp);
var delta = (today - date)/1000/60/60/24;
var aid = parseInt(act.typeId);
if (aid == 610 || // Download
aid == 650 || // Artifact Browse
aid == 621) { // Build
updateCounter(0, delta);
}
else if (aid == 620 || // Rich Client Access
aid == 560 || // Search View
aid == 608 || // View
aid == 630) { // Asset Subscription
updateCounter(1, delta);
}
}
function fetchActivity() {
dojo.xhrGet({
// url: "/ram.ws/reporting/settings:format=json|assetActivity:guid={61BEEB23-C7DF-71F0-D101-FD54A31A2F53},version=1.0",
// assetActivity: 220, 240, 280, 310, 350, 380, 480, 430, 460, 481, 431, 461, 482, 432, 462, 560, 610, 620, 621, 630, 633, 675, 680, 685, 690, 151
// artifactUseActivity: 620
// tid requires admin, ... good idea to have date limits
url: "http://ramlnx:9080/ram.ws/reporting/settings:format=json|activity:tid=(650,610,621,620,560,560,608),guid={61BEEB23-C7DF-71F0-D101-FD54A31A2F53},version=1.0",
handleAs: "json",
sync: true,
load: function(response, ioArgs) {
for (i=0;i<response.length;i++) {
countActivity(response[i]);
}
// normalize for weekly avg.
month[0]/=4; quarter[0]/=12; year[0]/=52;
month[1]/=4; quarter[1]/=12; year[1]/=52;
chart();
return response;
},
error: function(error, ioArgs) {
consol.error("failed xhrGet");
return error;
}
});
}
function chart() {
var dc = dojox.charting;
var chart1 = new dc.Chart2D("chart");
chart1.addPlot("default", {type: "ClusteredColumns", gap: 2});
chart1.addAxis("x",{minorLabels: true,
labels: [{value: 1, text: "LastWeek"}, {value: 2, text: "Last Month"},
{value: 3, text: "Last Quarter"}, {value: 4, text: "Last Year"}]
}
);
chart1.addAxis("y", {vertical: true, includeZero: true,
majorTick: {color: "red", length: 6},
minorTick: {stroke: "black", length: 3}
});
chart1.addSeries("Views", [ week[1], month[1], quarter[1], year[1] ], {fill: "lightgreen"});
chart1.addSeries("Downloads", [ week[0], month[1], quarter[1], year[1] ], {fill: "lightblue"});
var h = new dc.action2d.Highlight(chart1, "default");
var t = new dc.action2d.Tooltip(chart1, "default");
chart1.render();
var l = new dojox.charting.widget.Legend({chart: chart1}, "legend");
}
</script>
<table border="0"><tr valign="top">
<td>
<div id="chart" style="width: 400px; height: 300px;"></div>
</td>
<td>
<div style="border: 1px solid #888888; padding: 5px; background-color: rgba(255, 255, 221, 0.8);">
<div id="legend" ></div>
</div>
</td>
</tr>
</table>
</body>
</html>
If you guys ever decide to overhaul the reporting capabilities and need volunteers for input, count me in. Reporting is probably the biggest frustration I have with RAM (lifecycles, comes second). Overall, I really like the tool. But reporting gives me fits.
Cheers.............Dan