Siebel Reports Administration Guide > Smart Reports > Designing a Smart Report >

Account Service Detail Report


The report summarizes all the service-related information pertaining to the account. It contains information about currently open service requests, customer satisfaction, and the historical service request resolution for the account.

Here, the specialized graphical components and the related sections (including the data collection section) in Account Service Detail report are described. Except for specialized graphical elements and the related data collection sections, the contents of all Smart Reports are very similar and therefore are not described in remaining reports.

Order Of Merit

The Order Of Merit graphic is determined in the Finish method of the ssOrderOfMeritHeader1 frame according to the following logic. Add values according to Table 10.

Table 10.  Thermometer Variables for Order of Merit Graphic
Thermometer Variable
Value If Above Target (Trigger)
Customer Satisfaction
3
Open Service Request
2
Revenue
1

If the result is greater than 4, then the arrow direction is up. If the result is 3 or 4, then the arrow direction is facing right (push). Otherwise, the arrow direction is down.

Data Collection And Calculation

All service requests for an Account are collected and stored in memory lists in the rptAllServiceRequests report section. Open Service Requests are stored in a separate list for use in the ensuing detail sections. Closure times for closed service requests are divided up into an array of lists that will be used in the rptClosureTimesBySeverity section to feed the line graphs, traffic lights, and calculated summary data.

As the arrays are populated, totals and counts are maintained to facilitate calculation of averages and standard deviations. High and low closure times are also stored for each severity, as determined by the Status field of the Service Request data row.

Dashboard

The thermometers in this dashboard function are like other Smart Report thermometers. They are, however, different in that they reside as frames within a single frame instead of in separate flows belonging to a subpage in a parallel section. The Start method of each thermometer sets the data, trigger, maximum, and minimum variables from report-level variables calculated or collected earlier in the report.

Revenue Thermometer

Table 11 reflects the variables for use with the Revenue Thermometer.

Table 11.  Variables for the Revenue Thermometer
Thermometer
Report-level Variable
Calculation Point
Comment
MaximumValue
revenueHigh
dsRevenueLOV
Collected once per report.
MinimumValue
revenueLow
dsRevenueLOV
Collected once per report.
TriggerDataValue
revenueAverage
dsRevenueLOV
Collected once per report.
DataValue
totalRevenue
sifAllOpportunities
The sum of the revenues for all opportunities associated with this account.

Open Service Request Thermometer

Table 12 reflects the variables for use with the Open Service Request Thermometer.

Table 12.  Variables for the Open Service Request Thermometer
Thermometer Variable
Report-Level Variable
Calculation Point
Comment
MaximumValue
NA
Local
TriggerDataValue * 1.5.
MinimumValue
NA
Local
Fixed at zero.
TriggerDataValue
avgOpenSRs
dsTargetOpenSRsLOV
Collected once per report.
DataValue
countOpenSRs
sifAllServiceRequests
The count of open service requests for this account.

Customer Satisfaction Thermometer

Table 13 reflects the variables for use with the Customer Satisfaction Thermometer.

Table 13.  Variables for the Customer Satisfaction Thermometer
Thermometer Variable
Report-level Variable
Calculation Point
Comment
MaximumValue
CustomersatisfactionHigh
ssList_Of_ValuesQuery1
Collected once per report.
MinimumVales
CustomerSatisfactionLow
ssList_Of_ValuesQuery1
Collected once per report.
TriggerDataValue
CustomerSatisfactionTarget
ssList_Of_ValuesQuery1
Collected once per report.
DataValue
TotalSatisfactionScore, countSurveys
local
The ratio of the total satisfaction score to the number of surveys.

rptAllServiceRequests

The method overrides of the sifAllServiceRequests (single input filter class) perform list storage, array storage, and calculations. Table 14 shows the methods that can be overridden for sifAllServiceRequests.

Table 14.  Methods Overrides for sifAllServiceRequests
Method
Scope
Comment
Fetch
sisAllServiceRequests
Stores a list of data rows for open service requests. Calculates the closure time for closed service requests and stores them in an array of lists, one list for each severity. Accumulates total closure time and a count for each severity. Tracks high and low closure time for each severity and stores them in arrays.
Finish
sifAllServiceRequests
Calculates average closure time and standard deviation for each severity and stores the values in arrays.

Closure Time Summary Data Display

The following section describes the Closure Time Summary Data display.

rptClosureTimesAllSeverities

This is an outer report section that produces one blank data row for each Service Request Severity. This makes possible the reuse of rptClosureTimesBySeverity report section for a variable number of severities. Table 15 shows the relevant variables for rptClosureTimesAllSeverities.

Table 15.  Relevant Variables for rptClosureTimesAllSeverities
Variable Name
Scope
Type
Storage
Visibility
Comment
MaxSeverity
AccountServiceDetail
Integer
Static
Public
Total number of possible service request severities.
currentSeverity
AccountServiceDetail
Integer
Static
Public
Used by the inner report section.

The Fetch method overrides to result in subreport executing once for each severity. Table 16 shows the scope for this method.

Table 16.  Fetch Method Override
Method
Scope
Comment
Fetch
dsOneBlankRowPerSeverity
Produces one blank row per service request severity.

rptClosureTimesBySeverity

This is an inner report section that produces identically formatted closure time summary information for each service request severity. Service request data was collected earlier and stored in an array of lists. The data list used for an instance of this report section is specified by the currentSeverity variable. The components in this report section are described below.

dsGatherOneList. The code in dsGatherOneList class sorts the list by resolution time so that the medium closure time can be determined. The rows are then pulled from the list in correct sort order and passed to sifClosureTimes class. Table 17 explains how the Start and Fetch methods affects each class.

Table 17.  Methods for dsGatherOneList
Method
Scope
Comment
Start
dsGatherOneList
Sorts the list of service requests by resolution time.
Fetch
dsGatherOneList
Pulls the service request data rows from the list in proper sort order.
Start
sifClosureTimes
Establishes graph horizontal boundaries as plus or minus 2 standard deviations from the mean. Establishes the median position in the data list.
Fetch
sifClosureTimes
Produces a data row for each of a predetermined number of buckets that correspond to a time increment. The time increments are represented by the x-axis of the graph. The count of service requests with closure times falling within the time increment is represented on the y-axis.

Before frame. Code in the Before frame produces and positions the graph target closure time marker. Table 18 reflects the method that needs changing to produce the closure time marker.

Table 18.  Method to Produce the Closure Time Marker
Method
Scope
Comment
Finish
ssFrmP1
Dynamically produces the visual line element representing the closure time goal.

Summary data values. Summary data values are calculated in code. Table 19 reflects the method to use to calculate the summary data values.

Table 19.  Methods for Calculating Summary Data Values
Method
Scope
Comment
Finish
txtSeverityLabel
From currentSeverity variable.
Finish
txtGoal
From targetResolutionTime array.
Finish
txtMedian
From medianResolutionTime array.
Finish
txtHigh
From highResolutionTime array.
Finish
txtLow
From lowResolutionTime array.
Finish
txtMean
From meanResolutionTime array.
Finish
tstStdDeviation
FromstdDevResolution Time array.
Finish
txtTotal
From countClosedSRs array.

Traffic lights. Traffic lights are resized, repositioned, and colored in code. Table 20 shows how code is used in methods to change Traffic lights.

Table 20.  Methods Used for Traffic Lights
Method
Scope
Comment
Finish
dotTop
Green light. Mean closure time is faster than the target.
Finish
dotMiddle
Yellow light. Mean closure time is slower than the target, but not by more than one standard deviation.
FInish
dotBottom
Red light. Mean closure tine is slower than target by more than one standard deviation.

Closure time. Closure time graph y-axis labels are customized in code. Table 21 shows the method to use to produce better performance for the Closure Time class.

Table 21.  Method Used for Closure Time
Method
Scope
Comment
CustomYLabels
ssSummaryGraph1
Produces improved graph performance over a wide range of sample sizes.

sifClosureTimes. Code in the sifClosureTimes class initializes the graph boundaries, establishes the sorted list position of the median closure time and counts service requests for each time increment, or bucket. One data row represents each bucket on the graph. Table 22 shows the variables for use with this class.

Table 22.  Variables for Use With sifClosureTimes Class
Variable Name
Scope
Type
Storage
Visibility
Comment
graphMax
sifClosureTimes
Double
Static
Public
Closure time for right edge of graph.
graphMin
sifClosureTimes
Double
Static
Public
Closure time for left edge of graph.
meanResolutionTime()
AccountServiceDetail
Double
Static
Public
Array populated in sifAllServiceRequests.
stdDevResolutionTime()
AccountServiceDetail
Double
Static
Public
Array populated in sifAllServiceRequests.
targetResolutionTime()
AccountServiceDetail
Double
Static
Public
Set from LOV for each severity.
targResTimeUnits()
AccountServiceDetail
Double
Static
Public
Used to scale summary data to hours, days, or weeks.
targResTimeGraphPercent
AccountServiceDetail
Double
Static
Public
Scales position of target indicator.
currentSeverity
AccountServiceDetail
Integer
Static
Public
Set by outer report section. Used as an index into all arrays sized to MaxSeverities.
maxBuckets
sifClosureTimes
Integer
Static
Public
Determines horizontal resolution of graphs.
bucketIncrement
sifClosureTimes
Double
Static
Public
Width in minutes of closure time bucket.
ResolutionTimeList()
sifLCsureTimes
AcList
Static
Public
Array of data lists populated in sifAllServiceRequests.
countClosedSRs()
AccountServiceDetail
Integer
Static
Public
Array populated in sifAllServiceRequests.


 Siebel Reports Administration Guide, Version 7.5, Rev B 
 Published: 18 April 2003