
I am trying to figure out how to create some reports, but the stats module is so powerful it is also very complex. I am trying to find some documentation that explains how it all works. . .is there any such thing??

Hi, On 25.05.2010, at 09:15, TechFan wrote:
I am trying to figure out how to create some reports, but the stats module is so powerful it is also very complex. I am trying to find some documentation that explains how it all works. . .is there any such thing??
You can use the OTRS Adminbook for a short intro, but that’s it for now. What should be the result of you stat? Freundliche Grüße / Kind regards Nils Leideck -- Nils Leideck Senior Consultant nils.leideck@leidex.net nils.leideck@otrs.com http://webint.cryptonode.de / a Fractal project

I am really trying to get a handle on all report types I can make. The
section in the adminbook doesn't help much. I am trying to create the
following reports:
1.) Get the average first response time for all tickets assigned to a
specific queue (we have queues named for each user at this point) and
also tickets or to a specific agent even if it is in the main queue.
2.) Get the average resolution time for the same criteria. Actually
wanting to check if 80% of tickets completed within the first 4 hours?
3.) Check what percentage of tickets are completed within a week of
starting for same queue/agent combo as above.
4.) same but two week time period
5.) List of all tickets that have not had an update in the last week.
That is what a am starting with. . .but was really hoping to find some
documentation to help me understand all this. . .
Thanks.
Btw, still not getting closed ticket notifications (though they are
recorded as having been sent in the ticket history.
----- Original Message -----
From: Nils Leideck - ITSM
Hi,
On 25.05.2010, at 09:15, TechFan wrote:
I am trying to figure out how to create some reports, but the stats module is so powerful it is also very complex. I am trying to find some documentation that explains how it all works. . .is there any such thing??
You can use the OTRS Adminbook for a short intro, but that’s it for now. What should be the result of you stat?
Freundliche Grüße / Kind regards
Nils Leideck
-- Nils Leideck Senior Consultant
nils.leideck@leidex.net mailto:nils.leideck@leidex.net nils.leideck@otrs.com
http://webint.cryptonode.de / a Fractal project
------------------------------------------------------------------------
--------------------------------------------------------------------- OTRS mailing list: otrs - Webpage: http://otrs.org/ Archive: http://lists.otrs.org/pipermail/otrs To unsubscribe: http://lists.otrs.org/cgi-bin/listinfo/otrs
NEW! ENTERPRISE SUBSCRIPTION - Get more information NOW! http://www.otrs.com/en/support/enterprise-subscription/

Hi, First of all, we do not recommend to have a per-Agent-one-Queue concept, but this is Off-Topic here. On 25.05.2010, at 17:07, TechFan wrote:
That is what a am starting with. . .but was really hoping to find some documentation to help me understand all this. . .
I am afraid there is none yet. While I still really like the Statistic Module in OTRS it might be easier for some cases to use external reporting suites like Crystal Reports. Freundliche Grüße / Kind regards Nils Leideck -- Nils Leideck Senior Consultant nils.leideck@leidex.net nils.leideck@otrs.com http://webint.cryptonode.de / a Fractal project

First of all, we do not recommend to have a per-Agent-one-Queue concept, but this is Off-Topic here.
I can understand that. The challenge was trying to have an simple way for agents to see all the tickets they own. When using the Dashboard, My Queues is a really cluttered way to find your tickets. Yes, I see the ticket view, but the views there aren't as simple as the dash. Much harder to see the ticket titles when smashed up next to the sender. We are open to structural changes still, but we need to be able to report on the time each agent is taking to respond, solve tickets, etc. . .and since I am still trying to get a handle on the reporting options, I wasn't sure how we needed to design it so we can accomplish this.
While I still really like the Statistic Module in OTRS it might be easier for some cases to use external reporting suites like Crystal Reports.
Hm. Any documentation on that? I didn't notice that in the admin manual either, but I wasn't specifically looking. I assume that means setting up an ODBC source on the reporting machine. Unfortunately, we haven't been able to get Crystal. . .just been building reports in Access mostly. So, is the info I am trying to get out available? Thanks.

Hi, On 25.05.2010, at 19:41, TechFan wrote:
First of all, we do not recommend to have a per-Agent-one-Queue concept, but this is Off-Topic here.
I can understand that. The challenge was trying to have an simple way for agents to see all the tickets they own. When using the Dashboard, My Queues is a really cluttered way to find your tickets. Yes, I see the ticket view, but the views there aren't as simple as the dash. Much harder to see the ticket titles when smashed up next to the sender.
I do strongly recommend to setup searches per agent. With these searches, which you can also execute from outside of OTRS, just save them as favourites, you can keep the overview of your tickets as YOU want! For me as an example, I have about 5 searches like “Show all my Tickets”, “Show my Consulting Tickets”, “Show my Financial Tickets”, “Show my Documentation Tickets”, “Show my Pre-Billing Tickets” and “Show my Development Tickets”. That is just for me, another coworker of mine is using searches based on CustomerID as he’s a Key Account Manager focused on specific Customers - split into “Incidents Of My Clients”, “ServiceRequests Of My Clients”, “High Prio Tickets” … and you can create your own ones as YOU need… The search result can either be PDF (good for meetings, paperwork, etc...), CSV (for Reportings, Excel, PowerPoint, etc…) or simply within OTRS where you then have the Small, Medium and Preview mode. Very comfortable and much easier as with any other Ticket System where I worked for the vendor company before ;-)
We are open to structural changes still, but we need to be able to report on the time each agent is taking to respond, solve tickets, etc. . .and since I am still trying to get a handle on the reporting options, I wasn't sure how we needed to design it so we can accomplish this.
Open the SysConfig and go to “Framework” -> “Frontend::Agent::Stats” … there you will find a config option to enable an Agent name as a available part of your statistics within the OTRS Stat Framework … just make sure this is not illegal in the country where you are ;-)
While I still really like the Statistic Module in OTRS it might be easier for some cases to use external reporting suites like Crystal Reports.
Hm. Any documentation on that? I didn't notice that in the admin manual either, but I wasn't specifically looking. I assume that means setting up an ODBC source on the reporting machine. Unfortunately, we haven't been able to get Crystal. . .just been building reports in Access mostly. So, is the info I am trying to get out available?
The information IS AVAILABLE, yes … that is what I can tell you. I am just not sure if you can get all of these reports from within the standard reporting tool. I would need to spent some time to figure out which I unfortunately do not have as you can imagine ;-) But if there is any special Report / Statistic that you need, consider of contacting enjoy@otrs.com to have them develop the stat for you on a commercial basis so you can use the full power of automated Stats and all the kind of cool outputs from within OTRS. Another DIY option would be by using an external reporting suite or by using your own scripts with SOAP and the TicketSeach Method or by using SQl statements on the database directly… use of OpenSource up to you ;-) Kind regards from Washington Pullman (www.wsu.edu), ;-) Nils Leideck -- Nils Leideck Senior Consultant nils.leideck@leidex.net nils.leideck@otrs.com http://webint.cryptonode.de / a Fractal project

Thanks for responding!
I do strongly recommend to setup searches per agent. With these searches, which you can also execute from outside of OTRS, just save them as favourites, you can keep the overview of your tickets as YOU want!
That could work as long as I can track productivity of agents within a Queue. I wouldn't think it would be possible. . .
For me as an example, I have about 5 searches like “Show all my Tickets”, “Show my Consulting Tickets”, “Show my Financial Tickets”, “Show my Documentation Tickets”, “Show my Pre-Billing Tickets” and “Show
Ok, that could be workable. . .it wastes the use of the dashboard though. At this point, we only have one main queue, Tech Support, with subqueues, as I mentioned, for each agent.
The search result can either be PDF (good for meetings, paperwork, etc...), CSV (for Reportings, Excel, PowerPoint, etc…) or simply within OTRS where you then have the Small, Medium and Preview mode. Very comfortable and much easier as with any other Ticket System where I worked for the vendor company before ;-)
I just wish there was a way to clean up the small view. Having the Sender and Subject data right next to each other makes it much harder to glance over the tickets. . .if I could just turn off Sender, that would be good. Of course, I would rather be able to sort the tickets by time since the last update instead of by age. . .or by priority. . .
Open the SysConfig and go to “Framework” -> “Frontend::Agent::Stats” … there you will find a config option to enable an Agent name as a available part of your statistics within the OTRS Stat Framework … just make sure this is not illegal in the country where you are ;-)
Not legal? Why wouldn't that be legal? We are subject to US laws. . .so is it legal for you?

I have created new stats in this way: - create a new stats module in '..\OTRS\OTRS\Kernel\System\Stats\Static' with a name shorter than 15 char because if you use a name longer than 15 you will not be able to select your stats in panel ' Overview: Stats' - create a new stats in panel 'Edit: Stat# New' selecting your stats in the listbox 'Static-File:' Example of my Code: ---------------------------------------------------------------------------- # -- # Kernel/System/Stats/StateAction.pm - stats module # Copyright (C) 2001-2009 OTRS AG, http://otrs.org/ # -- # $Id: StateAction.pm,v 1.2 2009/03/27 17:35:32 mh Exp $ # -- # This software comes with ABSOLUTELY NO WARRANTY. For details, see # the enclosed file COPYING for license information (AGPL). If you # did not receive this file, see http://www.gnu.org/licenses/agpl.txt. # -- package Kernel::System::Stats::Static::LDPStats05; use strict; use warnings; use Date::Pcalc qw(Days_in_Month Day_of_Week Day_of_Week_Abbreviation); use Kernel::System::DB; use vars qw($VERSION); $VERSION = '$Revision: 1.2 $ '; sub new { my ( $Type, %Param ) = @_; # allocate new hash for object my $Self = {%Param}; bless( $Self, $Type ); # check all needed objects for (qw(DBObject ConfigObject LogObject)) { die "Got no $_" if !$Self->{$_}; } return $Self; } sub Param { my $Self = shift; # get current time my ( $s, $m, $h, $D, $M, $Y ) = $Self->{TimeObject}->SystemTime2Date( SystemTime => $Self->{TimeObject}->SystemTime(), ); # get one month before my $SelectedYear = $M == 1 ? $Y - 1 : $Y; my $SelectedMonth = $M == 1 ? 12 : $M - 1; # create possible time selections my %Year = map { $_ => $_; } ( $Y - 10 .. $Y ); my %Month = map { $_ => sprintf( "%02d", $_ ); } ( 1 .. 12 ); my %ToMonth = map { $_ => sprintf( "%02d", $_ ); } ( 1 .. 12 ); my @Params = ( { Frontend => 'Year', Name => 'Year', Multiple => 0, Size => 0, SelectedID => $SelectedYear, Data => \%Year, }, { Frontend => 'From Month', Name => 'Month', Multiple => 0, Size => 0, SelectedID => $SelectedMonth, Data => \%Month, }, { Frontend => 'To Month', Name => 'ToMonth', Multiple => 0, Size => 0, SelectedID => $SelectedMonth, Data => \%ToMonth, }, ); return @Params; } sub Run { my ( $Self, %Param ) = @_; my $Year = $Param{Year}; my $Month = sprintf( "%02d", $Param{Month}); my $ToMonth = sprintf( "%02d", $Param{ToMonth}); my $Title = "- Year $Year from Month $Month to $ToMonth"; my @HeadData = ('LTTS' ,'LASR', 'LMS', 'VoxNauta', 'Licensing'); my @Stats = (); my $SQL = "SELECT " . "SUM(IF(name like '%TTS%', 1, 0)) AS LTTS, " . "SUM(IF(name like '%ASR%', 1, 0)) AS LASR, " . "SUM(IF(name like '%LMS%', 1, 0)) AS LMS, " . "SUM(IF(name like '%VoxNauta%', 1, 0)) AS VoxNauta, " . "SUM(IF(name like '%Licensing%', 1, 0)) AS Licensing " . "FROM loq_ticketstat " . "WHERE closed_yyyymm >= '$Year$Month' AND closed_yyyymm <= '$Year$ToMonth' " ; $Self->{DBObject}->Prepare( SQL => $SQL ); my %Stats; while ( my @Row = $Self->{DBObject}->FetchrowArray() ) { push (@Stats, \@Row); } return ([$Title],[@HeadData], @Stats); } sub _GetDBDataPerDay { my ( $Self, %Param ) = @_; my $Start = "$Param{Year}-$Param{Month}-$Param{Day} 00:00:01"; my $End = "$Param{Year}-$Param{Month}-$Param{Day} 23:59:59"; my $SQL = 'SELECT count(*) FROM ticket_history ' . 'WHERE history_type_id = ? AND create_time >= ? AND create_time <= ?'; $Self->{DBObject}->Prepare( SQL => $SQL, Bind => [ \$Param{StateID}, \$Start, \$End ] ); my $DayData = 0; while ( my @Row = $Self->{DBObject}->FetchrowArray() ) { $DayData = $Row[0]; } return $DayData; } 1;

Hi, I like the use of saved searches. What would be really cool is if I could set them as display elements of the dashboard. So, I have my few boxes in there right now, what about adding a box "custom search" where I could then select my saved search from the config panel. Ideally, it would be possible to have several boxes with different saved searches there. Eventually, the pre-configured boxes you have right now are some kind of searches as well - you might be able to harmonize the way these boxes work by just setting up searches for these as well... Any chance we see something like that any time soon? I've seen that a major interface overhaul is in the works, maybe something like that is in there? Thanks, Arthur

Additionaly I would like to renice http://bugs.otrs.org/show_bug.cgi?id=4444 that could be really usefull in some case. To better explain this: - having the availability to save "global search" - a mkSearch.pl (like mkStats.pl) that could launch "global search" and save results to a file or via mail. MV

sorry for reposting over myself, but, following also the first post on the
blog reguarding SOAP, could this be done in some way with
Kernel::System::SearchProfile api ?
On Wed, May 26, 2010 at 1:49 PM, Marco Vannini
Additionaly I would like to renice http://bugs.otrs.org/show_bug.cgi?id=4444 that could be really usefull in some case.
To better explain this:
- having the availability to save "global search" - a mkSearch.pl (like mkStats.pl) that could launch "global search" and save results to a file or via mail.
MV

Hi, On 26.05.2010, at 04:16, Arthur de Pauw wrote:
I like the use of saved searches. What would be really cool is if I could set them as display elements of the dashboard. So, I have my few boxes in there right now, what about adding a box "custom search" where I could then select my saved search from the config panel. Ideally, it would be possible to have several boxes with different saved searches there.
Eventually, the pre-configured boxes you have right now are some kind of searches as well - you might be able to harmonize the way these boxes work by just setting up searches for these as well...
Any chance we see something like that any time soon? I've seen that a major interface overhaul is in the works, maybe something like that is in there?
I like the idea of having the already existing search templates available in the Dashboard on the right. I will try to create an alpha version of this to see if RnD will put that into the next version. Freundliche Grüße / Kind regards Nils Leideck -- Nils Leideck Senior Consultant nils.leideck@leidex.net nils.leideck@otrs.com http://webint.cryptonode.de / a Fractal project

Hi, On 25.05.2010, at 22:44, TechFan wrote:
Open the SysConfig and go to “Framework” -> “Frontend::Agent::Stats” … there you will find a config option to enable an Agent name as a available part of your statistics within the OTRS Stat Framework … just make sure this is not illegal in the country where you are ;-)
Not legal? Why wouldn't that be legal? We are subject to US laws. . .so is it legal for you?
Right, I am currently with a customer in the US as well and here it seems to be OK. In Germany you may run into trouble and discussions with the works or employee council ;-) Freundliche Grüße / Kind regards Nils Leideck -- Nils Leideck Senior Consultant nils.leideck@leidex.net nils.leideck@otrs.com http://webint.cryptonode.de / a Fractal project
participants (5)
-
Arthur de Pauw
-
Lucarelli Roberto
-
Marco Vannini
-
Nils Leideck - ITSM
-
TechFan