<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://rt-wiki.bestpractical.com/index.php?action=history&amp;feed=atom&amp;title=Rt-google-charts</id>
	<title>Rt-google-charts - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://rt-wiki.bestpractical.com/index.php?action=history&amp;feed=atom&amp;title=Rt-google-charts"/>
	<link rel="alternate" type="text/html" href="https://rt-wiki.bestpractical.com/index.php?title=Rt-google-charts&amp;action=history"/>
	<updated>2026-08-21T21:31:47Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.41.1</generator>
	<entry>
		<id>https://rt-wiki.bestpractical.com/index.php?title=Rt-google-charts&amp;diff=27106&amp;oldid=prev</id>
		<title>Rhinoau: removing personal references and broken links - no longer relevant.</title>
		<link rel="alternate" type="text/html" href="https://rt-wiki.bestpractical.com/index.php?title=Rt-google-charts&amp;diff=27106&amp;oldid=prev"/>
		<updated>2022-11-10T00:56:44Z</updated>

		<summary type="html">&lt;p&gt;removing personal references and broken links - no longer relevant.&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 20:56, 9 November 2022&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l16&quot;&gt;Line 16:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 16:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;= Example =&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;= Example =&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Example 6 months: http://tinyurl.com/ykoozth Example 16 months: http://tinyurl.com/yk6lw63&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;- no longer available - &lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;= Integration =&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;= Integration =&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l68&quot;&gt;Line 68:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 68:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;= Code =&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;= Code =&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Massive problems with getting source code to work on this wiki all of a sudden, so here&#039;s a link to the file on dropbox temporarily: [http://dl.dropbox.com/u/8415602/rt&lt;/del&gt;-&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;google&lt;/del&gt;-&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;graphs.pl Dropbox link]&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;- &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;no longer available &lt;/ins&gt;-&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;= Feedback =&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;= Feedback =&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l76&quot;&gt;Line 76:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 76:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;I&amp;#039;m also keen to get confirmation and any improvement suggestions on the large &amp;quot;OUTSTANDING TICKET STATS&amp;quot; query in the script. It took me a long time to concoct and I&amp;#039;ve tested it the best I can - but probably many areas for improvement.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;I&amp;#039;m also keen to get confirmation and any improvement suggestions on the large &amp;quot;OUTSTANDING TICKET STATS&amp;quot; query in the script. It took me a long time to concoct and I&amp;#039;ve tested it the best I can - but probably many areas for improvement.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;= Author =&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Ryan Armanasco - [mailto:ryan@slowest.net ryan@slowest.net] - 2010-02-12&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:reporting]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:reporting]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:graphing]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:graphing]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key bestpractical_mediawiki1459887241:diff:1.41:old-3266:rev-27106:php=table --&gt;
&lt;/table&gt;</summary>
		<author><name>Rhinoau</name></author>
	</entry>
	<entry>
		<id>https://rt-wiki.bestpractical.com/index.php?title=Rt-google-charts&amp;diff=3266&amp;oldid=prev</id>
		<title>Admin: 9 revisions imported</title>
		<link rel="alternate" type="text/html" href="https://rt-wiki.bestpractical.com/index.php?title=Rt-google-charts&amp;diff=3266&amp;oldid=prev"/>
		<updated>2016-04-06T20:36:21Z</updated>

		<summary type="html">&lt;p&gt;9 revisions imported&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 16:36, 6 April 2016&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;4&quot; class=&quot;diff-notice&quot; lang=&quot;en&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(No difference)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;!-- diff cache key bestpractical_mediawiki1459887241:diff:1.41:old-3265:rev-3266 --&gt;
&lt;/table&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://rt-wiki.bestpractical.com/index.php?title=Rt-google-charts&amp;diff=3265&amp;oldid=prev</id>
		<title>212.89.230.114 at 22:19, 19 December 2013</title>
		<link rel="alternate" type="text/html" href="https://rt-wiki.bestpractical.com/index.php?title=Rt-google-charts&amp;diff=3265&amp;oldid=prev"/>
		<updated>2013-12-19T22:19:59Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 18:19, 19 December 2013&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l5&quot;&gt;Line 5:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 5:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;You can specify the queue name and number of months to include. It will show the number of resolved, unresolved and outstanding tickets as they stood at that point in time for each month. It will also show a trend line as the percentage of resolved tickets.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;You can specify the queue name and number of months to include. It will show the number of resolved, unresolved and outstanding tickets as they stood at that point in time for each month. It will also show a trend line as the percentage of resolved tickets.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;= RT4 Information =&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;= RT4 Information =&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;I have recently tested the script on RT 4.0.5 and it ran perfectly. However the Reports section has been removed from RT4 and the interface significantly changed, so I still need to find a way to integrate it nicely in to the UI.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;I have recently tested the script on RT 4.0.5 and it ran perfectly. However the Reports section has been removed from RT4 and the interface significantly changed, so I still need to find a way to integrate it nicely in to the UI.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l59&quot;&gt;Line 59:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 60:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;nowiki&amp;gt;.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;nowiki&amp;gt;.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;       &lt;/del&gt;|-- 6monthstats.html&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;        &lt;/ins&gt;|-- 6monthstats.html&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;       &lt;/del&gt;|-- Elements&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;        &lt;/ins&gt;|-- Elements&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;       &lt;/del&gt;|   `-- Tabs&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;        &lt;/ins&gt;|   `-- Tabs&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;       &lt;/del&gt;`-- index.html&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;        &lt;/ins&gt;`-- index.html&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;       &lt;/del&gt;&amp;lt;/nowiki&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;        &lt;/ins&gt;&amp;lt;/nowiki&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;= Code =&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;= Code =&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l78&quot;&gt;Line 78:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 79:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Ryan Armanasco - [mailto:ryan@slowest.net ryan@slowest.net] - 2010-02-12&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Ryan Armanasco - [mailto:ryan@slowest.net ryan@slowest.net] - 2010-02-12&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[Category:reporting]]&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[Category:graphing]]&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:reporting]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:reporting]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:graphing]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:graphing]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key bestpractical_mediawiki1459887241:diff:1.41:old-3264:rev-3265:php=table --&gt;
&lt;/table&gt;</summary>
		<author><name>212.89.230.114</name></author>
	</entry>
	<entry>
		<id>https://rt-wiki.bestpractical.com/index.php?title=Rt-google-charts&amp;diff=3264&amp;oldid=prev</id>
		<title>125.7.76.226: added dropbox link as can&#039;t get code to format correctly</title>
		<link rel="alternate" type="text/html" href="https://rt-wiki.bestpractical.com/index.php?title=Rt-google-charts&amp;diff=3264&amp;oldid=prev"/>
		<updated>2012-05-23T07:26:01Z</updated>

		<summary type="html">&lt;p&gt;added dropbox link as can&amp;#039;t get code to format correctly&lt;/p&gt;
&lt;a href=&quot;https://rt-wiki.bestpractical.com/index.php?title=Rt-google-charts&amp;amp;diff=3264&amp;amp;oldid=3263&quot;&gt;Show changes&lt;/a&gt;</summary>
		<author><name>125.7.76.226</name></author>
	</entry>
	<entry>
		<id>https://rt-wiki.bestpractical.com/index.php?title=Rt-google-charts&amp;diff=3263&amp;oldid=prev</id>
		<title>125.7.76.226: corrected misleading code intends by the &#039;nowiki&#039; blocks</title>
		<link rel="alternate" type="text/html" href="https://rt-wiki.bestpractical.com/index.php?title=Rt-google-charts&amp;diff=3263&amp;oldid=prev"/>
		<updated>2012-05-23T07:16:04Z</updated>

		<summary type="html">&lt;p&gt;corrected misleading code intends by the &amp;#039;nowiki&amp;#039; blocks&lt;/p&gt;
&lt;a href=&quot;https://rt-wiki.bestpractical.com/index.php?title=Rt-google-charts&amp;amp;diff=3263&amp;amp;oldid=3262&quot;&gt;Show changes&lt;/a&gt;</summary>
		<author><name>125.7.76.226</name></author>
	</entry>
	<entry>
		<id>https://rt-wiki.bestpractical.com/index.php?title=Rt-google-charts&amp;diff=3262&amp;oldid=prev</id>
		<title>125.7.76.226: added some RT4 specific information</title>
		<link rel="alternate" type="text/html" href="https://rt-wiki.bestpractical.com/index.php?title=Rt-google-charts&amp;diff=3262&amp;oldid=prev"/>
		<updated>2012-03-14T06:46:57Z</updated>

		<summary type="html">&lt;p&gt;added some RT4 specific information&lt;/p&gt;
&lt;a href=&quot;https://rt-wiki.bestpractical.com/index.php?title=Rt-google-charts&amp;amp;diff=3262&amp;amp;oldid=3261&quot;&gt;Show changes&lt;/a&gt;</summary>
		<author><name>125.7.76.226</name></author>
	</entry>
	<entry>
		<id>https://rt-wiki.bestpractical.com/index.php?title=Rt-google-charts&amp;diff=3261&amp;oldid=prev</id>
		<title>125.7.76.226 at 06:45, 14 March 2012</title>
		<link rel="alternate" type="text/html" href="https://rt-wiki.bestpractical.com/index.php?title=Rt-google-charts&amp;diff=3261&amp;oldid=prev"/>
		<updated>2012-03-14T06:45:47Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;= rt-google-charts graphing =&lt;br /&gt;
&lt;br /&gt;
This script will produce google charts calls for historical information on RT queues.  Information below is relevant to RT 3.8+&lt;br /&gt;
&lt;br /&gt;
You can specify the queue name and number of months to include. It will show the number of resolved, unresolved and outstanding tickets as they stood at that point in time for each month. It will also show a trend line as the percentage of resolved tickets.&lt;br /&gt;
= RT4 Information =&lt;br /&gt;
I have recently tested the script on RT 4.0.5 and it run perfectly.  However the Reports section has been removed from RT4 and the interface significantly changed, so I still need to find a way to integrate it nicely in to the UI.&lt;br /&gt;
&lt;br /&gt;
= Caveats =&lt;br /&gt;
&lt;br /&gt;
Due to the fact it has to crawl so much data to work out the historical states - it will take some time to complete. To produce a 16 month cycle on a 4500 record database on an ESX clustered host with 3[[GHz]] Xeon, 2GB RAM, took 6.5 seconds.&lt;br /&gt;
&lt;br /&gt;
Tickets which are reopened and resolved from previous months can not be accurately accounted for without far more code, they will skew the figures. If these types of transactions make up the bulk of your RT usage, these graphs may not be useful to you.&lt;br /&gt;
&lt;br /&gt;
= Example =&lt;br /&gt;
&lt;br /&gt;
Example 6 months: http://tinyurl.com/ykoozth Example 16 months: http://tinyurl.com/yk6lw63&lt;br /&gt;
&lt;br /&gt;
= Integration =&lt;br /&gt;
&lt;br /&gt;
To include these in the Tools -&amp;amp;gt; Reports section of RT you can make changes to the local directory in RT. I&amp;#039;ve not the time or motivation to learn Mason, so I&amp;#039;ve hacked it in the only way I could figure out after a few minutes of playing.&lt;br /&gt;
&lt;br /&gt;
In /opt/rt3/local/html/Tools/Reports/ I copied an existing report html file from the main code directory and altered it to suit calling it 6monthstats.html In it, I&amp;#039;ve simple added:&lt;br /&gt;
&lt;br /&gt;
 &amp;amp;lt;hr /&amp;amp;gt;&lt;br /&gt;
 % print `/usr/local/whatever/rt-reports/rt-google-charts_1.pl`;&lt;br /&gt;
&lt;br /&gt;
I also altered the line not too far from the bottom which controls the tab highlighting:&lt;br /&gt;
&lt;br /&gt;
 &amp;amp;lt;&amp;amp;amp; /Tools/Reports/Elements/Tabs, current_tab =&amp;amp;gt; &amp;#039;Tools/Reports/6monthstats.html&amp;#039;, Title =&amp;amp;gt; $title &amp;amp;amp;&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then I&amp;#039;ve referenced this file in /opt/rt3/local/html/Tools/Reports/index.html which was copied from the main code directory by copying an existing $tabs declaration and incrementing the letter it is assigned to:&lt;br /&gt;
&lt;br /&gt;
 my $tabs = {&lt;br /&gt;
     A =&amp;amp;gt; {&lt;br /&gt;
         title       =&amp;amp;gt; loc(&amp;#039;Resolved by owner&amp;#039;),&lt;br /&gt;
         path        =&amp;amp;gt; &amp;#039;/Tools/Reports/ResolvedByOwner.html&amp;#039;,&lt;br /&gt;
         description =&amp;amp;gt; loc(&amp;#039;Examine tickets resolved in a queue, grouped by owner&amp;#039;),&lt;br /&gt;
     },&lt;br /&gt;
     B =&amp;amp;gt; {&lt;br /&gt;
         title       =&amp;amp;gt; loc(&amp;#039;Resolved in date range&amp;#039;),&lt;br /&gt;
         path        =&amp;amp;gt; &amp;#039;/Tools/Reports/ResolvedByDates.html&amp;#039;,&lt;br /&gt;
         description =&amp;amp;gt; loc(&amp;#039;Examine tickets resolved in a queue between two dates&amp;#039;),&lt;br /&gt;
     },&lt;br /&gt;
     C =&amp;amp;gt; {&lt;br /&gt;
         title       =&amp;amp;gt; loc(&amp;#039;Created in a date range&amp;#039;),&lt;br /&gt;
         path        =&amp;amp;gt; &amp;#039;/Tools/Reports/CreatedByDates.html&amp;#039;,&lt;br /&gt;
         description =&amp;amp;gt; loc(&amp;#039;Examine tickets created in a queue between two dates&amp;#039;),&lt;br /&gt;
     },&lt;br /&gt;
     D =&amp;amp;gt; {&lt;br /&gt;
         title       =&amp;amp;gt; loc(&amp;#039;IT Support - 6 month statistics&amp;#039;),&lt;br /&gt;
         path        =&amp;amp;gt; &amp;#039;/Tools/Reports/6monthstats.html&amp;#039;,&lt;br /&gt;
         description =&amp;amp;gt; loc(&amp;#039;Last 6 month statistics for IT Support queue&amp;#039;),&lt;br /&gt;
     },&lt;br /&gt;
&lt;br /&gt;
I then needed to do a similar thing to make the top tabs work in /opt/rt3/local/html/Tools/Reports/Elements/Tabs - also copied from main code path.&lt;br /&gt;
&lt;br /&gt;
The tree of my /opt/rt3/local/html/Tools/Reports directory looks like this:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;.&lt;br /&gt;
    |-- 6monthstats.html&lt;br /&gt;
    |-- Elements&lt;br /&gt;
    |   `-- Tabs&lt;br /&gt;
    `-- index.html&lt;br /&gt;
    &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Code =&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;#!/usr/bin/perl&lt;br /&gt;
    &lt;br /&gt;
    # Ryan Armanasco - 2009-12-08 - ryan@slowest.net&lt;br /&gt;
    &lt;br /&gt;
    # Extract queue statistics from RT and generate Google Charts call to graph&lt;br /&gt;
    #&lt;br /&gt;
    # example graph: http://tinyurl.com/yk6lw63&lt;br /&gt;
    #&lt;br /&gt;
    # Produces stats for specified number of months, optionally including the current month,&lt;br /&gt;
    # showing created, resolved and overall outstanding at the point in time for that month.&lt;br /&gt;
    #&lt;br /&gt;
    # Reopened and re-resolved tickets will skew the figures slightly.&lt;br /&gt;
    #&lt;br /&gt;
    # It has to do a log of database work, and it take a fair while depending on the size of your database&lt;br /&gt;
    #&lt;br /&gt;
    # Indicative stats:&lt;br /&gt;
    #   to produce a 16 month cycle on a 4500 record database.  ESX clustered host with 3GHz Xeon, 2GB RAM = 6.5 seconds&lt;br /&gt;
    &lt;br /&gt;
    use strict;&lt;br /&gt;
    use DBI;&lt;br /&gt;
    &lt;br /&gt;
    # SETTINGS - CUSTOMISE THESE&lt;br /&gt;
    my $queue=&amp;#039;IT Support&amp;#039;; # RT queue to operate on&lt;br /&gt;
    my $cycles=16; # how many months to report on&lt;br /&gt;
    my $thismonth=1; # include current month in graph?&lt;br /&gt;
    my $graphtitle=&amp;quot;Request Tracker $queue Queue&amp;quot;;&lt;br /&gt;
    &lt;br /&gt;
    # DATABASE - CUSTOMISE THESE&lt;br /&gt;
    my $host=&amp;#039;pdcithelp2&amp;#039;;&lt;br /&gt;
    my $db  =&amp;#039;rt&amp;#039;;&lt;br /&gt;
    my $user=&amp;#039;report&amp;#039;;&lt;br /&gt;
    my $pass=&amp;#039;seH2aet3&amp;#039;;&lt;br /&gt;
    &lt;br /&gt;
    # GRAPH DIMENSIONS - CUSTOMISE THESE&lt;br /&gt;
    #   (340,000 [X x Y] pixel maximum)&lt;br /&gt;
    my $chartx=850;&lt;br /&gt;
    my $charty=350;&lt;br /&gt;
    die &amp;quot;Chart area $chartx * $charty is greater than 340,000 pixles - google will reject it\n&amp;quot; if $charty * $chartx &amp;amp;gt; 340000;&lt;br /&gt;
    &lt;br /&gt;
    #====================================================&lt;br /&gt;
    # DON&amp;#039;T TOUCH ANYTHING BELOW HERE&lt;br /&gt;
    #====================================================&lt;br /&gt;
    &lt;br /&gt;
    # friendly month names for labels/titles&lt;br /&gt;
    my @months = qw/Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec/;&lt;br /&gt;
    &lt;br /&gt;
    # connect to RT database&lt;br /&gt;
    my $dbh = DBI-&amp;amp;gt;connect(&amp;#039;dbi:mysql:&amp;#039;.$db.&amp;#039;;host=&amp;#039;.$host,$user,$pass)&lt;br /&gt;
    or die &amp;quot;Connection Error: $DBI::errstr\n&amp;quot;;&lt;br /&gt;
    &lt;br /&gt;
    my $data; # stores all returned/calulcated ticket stats - hashref&lt;br /&gt;
    my $max=0; # tracks maximum value to scale graph&lt;br /&gt;
    my $start_date; # track starting time period for labels&lt;br /&gt;
    my $end_date; # track ending time period for labels&lt;br /&gt;
    my @perc; # percentage calculation during output&lt;br /&gt;
  &lt;br /&gt;
    # generate the decending year/month combos - previous `date --date=&amp;quot;x months ago&amp;quot; has issues on the first day of the month, so here&amp;#039;s a more fool-proof version.&lt;br /&gt;
    sub makedate {&lt;br /&gt;
          my $ddate = shift;&lt;br /&gt;
          my $doffset = shift;&lt;br /&gt;
          my $year;&lt;br /&gt;
          my $month;&lt;br /&gt;
  &lt;br /&gt;
          $doffset--;&lt;br /&gt;
  &lt;br /&gt;
          $ddate =~ /(\d\d\d\d)-(\d\d)/;&lt;br /&gt;
                  $year = $1;&lt;br /&gt;
                  $month = $2;&lt;br /&gt;
  &lt;br /&gt;
          for(0..$doffset) {&lt;br /&gt;
                  $month--;&lt;br /&gt;
                  if ($month == 0) {&lt;br /&gt;
                          $month = 12;&lt;br /&gt;
                          $year--;&lt;br /&gt;
                  }&lt;br /&gt;
                  if (length($month) ==1) {&lt;br /&gt;
                          $month = &amp;quot;0&amp;quot;.$month;&lt;br /&gt;
                  }&lt;br /&gt;
          }&lt;br /&gt;
  &lt;br /&gt;
          if ($doffset == -2) {&lt;br /&gt;
                  $month++;&lt;br /&gt;
                  if ($month == 13) {&lt;br /&gt;
                          $month = 1;&lt;br /&gt;
                          $year++;&lt;br /&gt;
                  }&lt;br /&gt;
                  if (length($month) ==1) {&lt;br /&gt;
                          $month = &amp;quot;0&amp;quot;.$month;&lt;br /&gt;
                  }&lt;br /&gt;
          }&lt;br /&gt;
          return &amp;quot;$year-$month&amp;quot;;&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    # loop through requested month range&lt;br /&gt;
    for (1..$cycles) {&lt;br /&gt;
    &lt;br /&gt;
    	# reset counters each loop&lt;br /&gt;
    	my $created=0;&lt;br /&gt;
    	my $outstanding=0;&lt;br /&gt;
    	my $resolved=0;&lt;br /&gt;
    &lt;br /&gt;
    	# lazy way to work out x months before present&lt;br /&gt;
    	my $offset=$_;&lt;br /&gt;
    	$offset -= 1 if $thismonth;&lt;br /&gt;
    	# existing faulty version: my $date = `date --date=&amp;quot;$offset months ago&amp;quot; +&amp;quot;%Y-%m&amp;quot;`;&lt;br /&gt;
    	# existing faulty version: chomp($date);&lt;br /&gt;
         my $date = makedate($start_date,$offset);&lt;br /&gt;
  &lt;br /&gt;
    	# store info for label generation&lt;br /&gt;
    	$data-&amp;amp;gt;{date}[$_-1]=$date;&lt;br /&gt;
    &lt;br /&gt;
    	# CREATED TICKET STATS&lt;br /&gt;
    	my $sql = &amp;quot;&lt;br /&gt;
    		select&lt;br /&gt;
    			count(*)&lt;br /&gt;
    		from&lt;br /&gt;
    			Tickets&lt;br /&gt;
    		where&lt;br /&gt;
    				Created like &amp;#039;$date-%&amp;#039;&lt;br /&gt;
    			and&lt;br /&gt;
    				queue = (select id from Queues where name=&amp;#039;$queue&amp;#039;)&lt;br /&gt;
    			and&lt;br /&gt;
    				type &amp;amp;lt;&amp;amp;gt; &amp;#039;reminder&amp;#039;&lt;br /&gt;
    		  	and&lt;br /&gt;
    				status &amp;amp;lt;&amp;amp;gt; &amp;#039;deleted&amp;#039;;&amp;quot;;&lt;br /&gt;
    &lt;br /&gt;
    	# execute and retrieve&lt;br /&gt;
          my $sth = $dbh-&amp;amp;gt;prepare($sql);&lt;br /&gt;
          $sth-&amp;amp;gt;execute();&lt;br /&gt;
    	$created = ($sth-&amp;amp;gt;fetchrow_array)[0];&lt;br /&gt;
    &lt;br /&gt;
    	# RESOLVED TICKET STATS&lt;br /&gt;
    	my $sql = &amp;quot;&lt;br /&gt;
    		select&lt;br /&gt;
    			count(distinct tr.objectid) as resolved,&lt;br /&gt;
    			round(max(datediff(ti.resolved,ti.created))) as maxage,&lt;br /&gt;
    			round(avg(datediff(ti.resolved,ti.created))) as avgage&lt;br /&gt;
    		from&lt;br /&gt;
    			Transactions tr,&lt;br /&gt;
    			Tickets ti&lt;br /&gt;
    		where&lt;br /&gt;
    				tr.type=&amp;#039;Status&amp;#039;&lt;br /&gt;
    			and&lt;br /&gt;
    				(tr.newvalue=&amp;#039;resolved&amp;#039; or tr.newvalue=&amp;#039;deleted&amp;#039;)&lt;br /&gt;
    			and&lt;br /&gt;
    				tr.objecttype=&amp;#039;RT::Ticket&amp;#039;&lt;br /&gt;
    			and&lt;br /&gt;
    				ti.Queue=(select id from Queues where Name=&amp;#039;$queue&amp;#039;)&lt;br /&gt;
    			and&lt;br /&gt;
    				tr.objectid = ti.id&lt;br /&gt;
    			and&lt;br /&gt;
    				tr.created like &amp;#039;$date-%&amp;#039;;&amp;quot;;&lt;br /&gt;
    &lt;br /&gt;
    		# returns this&lt;br /&gt;
    		#+---------+--------+---------+&lt;br /&gt;
    		#| tickets | maxage | avgage  |&lt;br /&gt;
    		#+---------+--------+---------+&lt;br /&gt;
    		#|     107 |    192 | 18.8692 |&lt;br /&gt;
    		#+---------+--------+---------+&lt;br /&gt;
    &lt;br /&gt;
    	# execute and retrieve&lt;br /&gt;
    	my $sth = $dbh-&amp;amp;gt;prepare($sql);&lt;br /&gt;
    	$sth-&amp;amp;gt;execute();&lt;br /&gt;
    	($resolved, $data-&amp;amp;gt;{max}[$_-1], $data-&amp;amp;gt;{avg}[$_-1]) = ($sth-&amp;amp;gt;fetchrow_array);&lt;br /&gt;
    &lt;br /&gt;
            # need to step date forward a month to get accurate figures&lt;br /&gt;
      	  # previous faulty version: my $offset=$_ - 1;&lt;br /&gt;
            # previous faulty version: $offset -= 1 if $thismonth;&lt;br /&gt;
            # previous faulty version: my $dateforward = `date --date=&amp;quot;$offset months ago&amp;quot; +&amp;quot;%Y-%m&amp;quot;`;&lt;br /&gt;
            # previous faulty version: chomp($dateforward);&lt;br /&gt;
            my $dateforward = makedate($start_date, ($offset-1) );&lt;br /&gt;
    &lt;br /&gt;
    	# OUTSTANDING TICKET STATS&lt;br /&gt;
    	my $sql = &amp;quot;&lt;br /&gt;
    		select&lt;br /&gt;
    			count(*) as tickets&lt;br /&gt;
    		from&lt;br /&gt;
    			Transactions tr,&lt;br /&gt;
    			Tickets ti&lt;br /&gt;
    		where&lt;br /&gt;
    				tr.type=&amp;#039;Create&amp;#039;&lt;br /&gt;
    			and&lt;br /&gt;
    				tr.objecttype=&amp;#039;RT::Ticket&amp;#039;&lt;br /&gt;
    			and&lt;br /&gt;
    				ti.Queue=(select id from Queues where Name=&amp;#039;$queue&amp;#039;)&lt;br /&gt;
    			and&lt;br /&gt;
    				tr.objectid = ti.id&lt;br /&gt;
    			and&lt;br /&gt;
    				ti.created &amp;amp;lt; &amp;#039;$dateforward&amp;#039;&lt;br /&gt;
    			and not&lt;br /&gt;
    				tr.objectid in 	(&lt;br /&gt;
    						select&lt;br /&gt;
    							distinct tr.objectid&lt;br /&gt;
    						from&lt;br /&gt;
    							Transactions tr,&lt;br /&gt;
    							Tickets ti&lt;br /&gt;
    						where&lt;br /&gt;
    								tr.type=&amp;#039;Status&amp;#039;&lt;br /&gt;
    							and&lt;br /&gt;
    								tr.newvalue=&amp;#039;resolved&amp;#039;&lt;br /&gt;
    							and&lt;br /&gt;
    								tr.objecttype=&amp;#039;RT::Ticket&amp;#039;&lt;br /&gt;
    							and&lt;br /&gt;
    								ti.Queue=(select id from Queues where Name=&amp;#039;$queue&amp;#039;)&lt;br /&gt;
    							and&lt;br /&gt;
    								tr.objectid = ti.id&lt;br /&gt;
    							and&lt;br /&gt;
    								tr.created &amp;amp;lt; &amp;#039;$dateforward&amp;#039;&lt;br /&gt;
    						)&lt;br /&gt;
    &lt;br /&gt;
    			and&lt;br /&gt;
    				tr.objectid not in 	(&lt;br /&gt;
    							select&lt;br /&gt;
    								id&lt;br /&gt;
    							from&lt;br /&gt;
    								Tickets&lt;br /&gt;
    							where&lt;br /&gt;
    									id &amp;amp;lt;&amp;amp;gt; effectiveID&lt;br /&gt;
    							)&lt;br /&gt;
    			and not&lt;br /&gt;
    				tr.objectid in (&lt;br /&gt;
    						select&lt;br /&gt;
    							id&lt;br /&gt;
    						from&lt;br /&gt;
    							Tickets&lt;br /&gt;
    						where&lt;br /&gt;
    								resolved &amp;amp;lt; &amp;#039;$dateforward&amp;#039;&lt;br /&gt;
    							and not&lt;br /&gt;
    								resolved = &amp;#039;1970-01-01 00:00:00&amp;#039;&lt;br /&gt;
    						)&lt;br /&gt;
    			and&lt;br /&gt;
    				ti.type &amp;amp;lt;&amp;amp;gt; &amp;#039;reminder&amp;#039;&lt;br /&gt;
    		order by tr.objectid&amp;quot;;&lt;br /&gt;
    &lt;br /&gt;
    	# execute and retrieve&lt;br /&gt;
          my $sth = $dbh-&amp;amp;gt;prepare($sql);&lt;br /&gt;
          $sth-&amp;amp;gt;execute();&lt;br /&gt;
    	$outstanding = ($sth-&amp;amp;gt;fetchrow_array)[0];&lt;br /&gt;
    &lt;br /&gt;
    	# store all the data somewhere&lt;br /&gt;
    	$data-&amp;amp;gt;{cre}[$_-1] = $created;&lt;br /&gt;
    	$data-&amp;amp;gt;{out}[$_-1]=$outstanding;&lt;br /&gt;
    	$data-&amp;amp;gt;{res}[$_-1]=$resolved;&lt;br /&gt;
    	$data-&amp;amp;gt;{ctd}[$_-1]=$created;&lt;br /&gt;
    &lt;br /&gt;
    	if ($created &amp;amp;gt; $resolved) {&lt;br /&gt;
    		$max = $created if $created &amp;amp;gt; $max;&lt;br /&gt;
    	} else {&lt;br /&gt;
    		$max = $resolved if $resolved &amp;amp;gt; $max;&lt;br /&gt;
    	}&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    $max = $max + 10 + (50-($max % 50));&lt;br /&gt;
    &lt;br /&gt;
    print &amp;#039;&amp;amp;lt;img src=&amp;quot;&amp;#039;;&lt;br /&gt;
    &lt;br /&gt;
    print &amp;amp;lt;&amp;amp;lt;GRAPH;&lt;br /&gt;
    http://chart.apis.google.com/chart?&lt;br /&gt;
    cht=bvg&lt;br /&gt;
    &amp;amp;amp;chs=${chartx}x${charty}&lt;br /&gt;
    &amp;amp;amp;chbh=a&lt;br /&gt;
    &amp;amp;amp;chds=0,$max&lt;br /&gt;
    &amp;amp;amp;chco=0033ff,1eec44,e00a0a,c342bb&lt;br /&gt;
    &amp;amp;amp;chm=N,000000,0,-1,11|N,000000,1,-1,11|N,000000,2,-1,11|D,c342bb,3,0,4,-1&lt;br /&gt;
    &amp;amp;amp;chts=000000,20&lt;br /&gt;
    &amp;amp;amp;chf=bg,s,88888810|c,s,00000010&lt;br /&gt;
    &amp;amp;amp;chma=30,40,50,50|100,20&lt;br /&gt;
    &amp;amp;amp;chxt=x,y,r,x,x,x,x,x&lt;br /&gt;
    &amp;amp;amp;chdl=created|resolved|outstanding|% resolved&lt;br /&gt;
    &amp;amp;amp;chtt=$graphtitle&lt;br /&gt;
    &amp;amp;amp;chxl=0:|&lt;br /&gt;
 GRAPH&lt;br /&gt;
    &lt;br /&gt;
    # x axis MMM &amp;#039;YY labels&lt;br /&gt;
    foreach my $label (reverse(@{$data-&amp;amp;gt;{date}})) {&lt;br /&gt;
    	$label =~ /\d\d(\d\d)-(\d\d)/;&lt;br /&gt;
    	print &amp;quot;$months[$2-1] &amp;#039;$1|&amp;quot;;&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    # graphs scalings/axis require some calculations&lt;br /&gt;
    print &amp;#039;|1:|0|&amp;#039;.sprintf(&amp;#039;%2d&amp;#039;,($max/2)).&amp;quot;|$max|2:|0|50|100&amp;quot;;&lt;br /&gt;
    print &amp;#039;|3:|&amp;#039;;&lt;br /&gt;
    print &amp;#039;|4:|&amp;#039;.&amp;#039;|&amp;#039;x(($cycles/2)-1).&amp;#039;|average resolved ticket age (days)&amp;#039;;&lt;br /&gt;
    print &amp;#039;|5:|&amp;#039;.join(&amp;#039;|&amp;#039;,reverse(@{$data-&amp;amp;gt;{avg}}));&lt;br /&gt;
    print &amp;#039;|6:|&amp;#039;.&amp;#039;|&amp;#039;x(($cycles/2)-1).&amp;#039;|maximum resolved ticket age (days)&amp;#039;;&lt;br /&gt;
    print &amp;#039;|7:|&amp;#039;.join(&amp;#039;|&amp;#039;,reverse(@{$data-&amp;amp;gt;{max}}));&lt;br /&gt;
    &lt;br /&gt;
    # output the data sets&lt;br /&gt;
    print &amp;quot;&amp;amp;amp;chd=t3:&amp;quot;;&lt;br /&gt;
    for (0..$cycles-1) { $perc[$_] = sprintf(&amp;#039;%2d&amp;#039;,($max-2)/100*(($data-&amp;amp;gt;{ctd}[$cycles-1-$_]-$data-&amp;amp;gt;{out}[$cycles-1-$_])/$data-&amp;amp;gt;{ctd}[$cycles-1-$_]) * 100 ); }&lt;br /&gt;
    print join(&amp;#039;,&amp;#039;,reverse(@{$data-&amp;amp;gt;{ctd}})).&amp;#039;|&amp;#039;.join(&amp;#039;,&amp;#039;,reverse(@{$data-&amp;amp;gt;{res}})).&amp;#039;|&amp;#039;.join(&amp;#039;,&amp;#039;,reverse(@{$data-&amp;amp;gt;{out}})).&amp;#039;|&amp;#039;.join(&amp;#039;,&amp;#039;,@perc);&lt;br /&gt;
    &lt;br /&gt;
    print &amp;#039;&amp;quot; border=1 /&amp;amp;gt;&amp;#039;;&lt;br /&gt;
    &lt;br /&gt;
    exit;&lt;br /&gt;
    &lt;br /&gt;
    &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Feedback =&lt;br /&gt;
&lt;br /&gt;
I&amp;#039;d love to know if you find this useful and put it to work in your environment. See contact details below.&lt;br /&gt;
&lt;br /&gt;
I&amp;#039;m also keen to get confirmation and any improvement suggestions on the large &amp;quot;OUTSTANDING TICKET STATS&amp;quot; query in the script. It took me a long time to concoct and I&amp;#039;ve tested it the best I can - but probably many areas for improvement.&lt;br /&gt;
&lt;br /&gt;
= Author =&lt;br /&gt;
&lt;br /&gt;
Ryan Armanasco - [mailto:ryan@slowest.net ryan@slowest.net] - 2010-02-12&lt;br /&gt;
[[Category:reporting]]&lt;br /&gt;
[[Category:graphing]]&lt;/div&gt;</summary>
		<author><name>125.7.76.226</name></author>
	</entry>
</feed>