Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"><html><head><title>
- Defect Trend App </title>
- <script type="text/javascript" src="/apps/2.0rc1/sdk.js"></script>
- <script type="text/javascript">
- var states = ['Accepted','Released']; // all enum values for 'State'
- var field = 'ScheduleState'; // or 'State'
- var ReleaseOID = XXXXXX; // your release Oid
- Rally.onReady(function () {
- Ext.define('CustomApp', {
- extend: 'Rally.app.App',
- componentCls: 'app',
- launch: function() {
- return this.createTrendChart();
- },
- createTrendChart: function() {
- var ProjectOid;
- ProjectOid = this.getContext().getProject().ObjectID;
- Ext.define('My.TrendCalc', {
- extend: 'Rally.data.lookback.calculator.TimeSeriesCalculator',
- getDerivedFieldsOnInput: function() {
- var m = _.map(states, function(state) {
- return {
- "as": state,
- "f" : function(snapshot) {
- var value = (snapshot[field] == state) ? 1 : 0;
- return value;
- }
- }
- })
- return m;
- },
- getMetrics : function() {
- var m = _.map(states, function(state) {
- return {
- field: state,
- as: state,
- f: 'sum'
- }
- })
- return m;
- }
- });
- this.myTrendChart = Ext.create('Rally.ui.chart.Chart', {
- storeType: 'Rally.data.lookback.SnapshotStore',
- storeConfig: {
- find: {
- _TypeHierarchy: "Defect",
- State: {$lte: "Closed" },
- _ProjectHierarchy: ProjectOid,
- Release: ReleaseOID
- },
- fetch: ["_ValidFrom", "_ValidTo", "ObjectID", field],
- hydrate: [field],
- sort: { "_ValidFrom" : 1}
- },
- calculatorType: 'My.TrendCalc',
- calculatorConfig : {},
- chartConfig: {
- chart: {
- zoomType: 'xy',
- type:'column'
- },
- title: {
- text: 'Defects over Time'
- },
- xAxis: {
- type: 'datetime',
- title: { text: 'When'},
- minTickInterval: 5,
- labels : { rotation: 90 }
- },
- yAxis: { title: { text: 'Count' } },
- plotOptions: {
- series: {
- stacking: 'normal'
- }
- }
- }
- });
- return this.add(this.myTrendChart);
- }
- });
- });
- console.log("launching application");
- Rally.launchApp('CustomApp', {
- name:'Defect Trend App',
- parentRepos:""
- });
- </script>
- </head>
- <body>
- </body>
- </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement