Performance Analytics Breakdown Relations not working

crowe1288greg
Tera Expert

I've created an Automated Indicator for Daily New Calls.

 

I've created 2 breakdowns:

Site Agent: the elements are the desk agents. I'm able to see each agent with their number of calls.

Hour of Day: this is a scripted breakdown using a bucket group. This groups the calls by the hour of the day. Examples, 00,01,02,03,04,...,24

 

Collect breakdown matrix is turned on. I've confirmed the data is being collected within the pa_scores_l1 & pa_scores_l2 tables.

 

Example:

Site Agent A: 12 calls in the day. Breakdown Hour of Day: 08-3 calls, 09-3 calls, 10-6 calls.

 

I'm unable to get the breakdown relations to work properly. I think its because the 2nd breakdown is scripted.

 

Here's what the breakdown relation look like:

Name: Site.Agent.HourofDay

Breakdown: Site Agent

Related Breakdown: HourofDay

Table: new_call

Breakdown field:created_by

related breakdown field: created by

 

When I'm viewing on the Analytics Hub, selecting the breakdown Site Agent, it lists the agents with their total number of calls for the day.

 

If I click on an agent, it shows Site.Agent.HourofDay - Related Breakdowns.

 

When I expand this it shows 'No elements to display'.

 

I've confirmed all the data looks good between the pa_scores_l1 and pa_scores_l2 tables.

 

Within the breakdown relation, I've tried different  selections in the 'breakdown field' & the 'related breakdown field'. I receive the 'No elements to display' each time.

 

Any suggestions?

 

 

2 ACCEPTED SOLUTIONS

Hello,

 

Thank you for the reply. I was hoping there would be a solution without creating a field. I work in an organization where adding a field is impossible.

 

Is there any ServiceNow documentation that discusses this limitation?

View solution in original post

 

Hi @crowe1288greg,

You’re absolutely on the right track — and your assumption is correct.

OOTB Behavior

Out of the box, Performance Analytics Breakdown Relations only work with field-based breakdowns. They require actual fields from the source table to establish a relationship.

In your case:

  • Site Agent → field-based (created_by

  • Hour of Day → scripted (bucket group)

Since Hour of Day is not a physical field on the new_call table, PA cannot relate it, which is why you see “No elements to display”.

Best Practice Approach

Step 1: Create a Field

  • Go to System Definition → Tables

  • Open table: new_call

  • Add field:

    • Name: u_hour_of_day

    • Type: Integer/String

Step 2: Populate the Field

Create a Business Rule (before insert/update):

 

 
var dt = new GlideDateTime(current.created_on);
current.u_hour_of_day = dt.getHourLocalTime();
 

 Step 3: Create Breakdown

  • Go to Performance Analytics → Breakdowns

  • Create new breakdown:

    • Source: new_call

    • Element field: u_hour_of_day

  • (Optional) Apply bucket group (00–23)

 Step 4: Update Breakdown Relation

  • Go to Breakdown Relations

  • Configure:

    • Breakdown: Site Agent → created_by

    • Related Breakdown: Hour of Day → u_hour_of_day

Step 5: Recollect Data

  • Run Collect Data job again

  • Ensure Collect breakdown matrix is enabled

Step 6: Validate in Analytics Hub

  • Open indicator

  • Select Site Agent

  • Drill into agent → expand related breakdown

You should now see Hour of Day values

View solution in original post

5 REPLIES 5

ayushraj7012933
Mega Guru

Hi    @crowe1288greg ,

This is a common limitation in Performance Analytics Breakdown Relations, especially when one of the breakdowns is scripted.

Recommended Fix (Best Practice)

Convert Hour of Day into a Field-Based Breakdown

  1. Create a new field

    • Table: new_call

    • Field: u_hour_of_day (String/Integer)

  2. Populate the field
    Use a Business Rule:

     
    var dt = new GlideDateTime(current.created_on);
    current.u_hour_of_day = dt.getHourLocalTime();
     
  3. Create Breakdown

    • Create a breakdown on u_hour_of_day

    • Apply bucket grouping if needed (00–23)

  4. Update Breakdown Relation

    • Breakdown: Site Agent → created_by

    • Related Breakdown: Hour of Day → u_hour_of_day

Hello,

 

Thank you for the reply. I was hoping there would be a solution without creating a field. I work in an organization where adding a field is impossible.

 

Is there any ServiceNow documentation that discusses this limitation?

 

Hi @crowe1288greg,

You’re absolutely on the right track — and your assumption is correct.

OOTB Behavior

Out of the box, Performance Analytics Breakdown Relations only work with field-based breakdowns. They require actual fields from the source table to establish a relationship.

In your case:

  • Site Agent → field-based (created_by

  • Hour of Day → scripted (bucket group)

Since Hour of Day is not a physical field on the new_call table, PA cannot relate it, which is why you see “No elements to display”.

Best Practice Approach

Step 1: Create a Field

  • Go to System Definition → Tables

  • Open table: new_call

  • Add field:

    • Name: u_hour_of_day

    • Type: Integer/String

Step 2: Populate the Field

Create a Business Rule (before insert/update):

 

 
var dt = new GlideDateTime(current.created_on);
current.u_hour_of_day = dt.getHourLocalTime();
 

 Step 3: Create Breakdown

  • Go to Performance Analytics → Breakdowns

  • Create new breakdown:

    • Source: new_call

    • Element field: u_hour_of_day

  • (Optional) Apply bucket group (00–23)

 Step 4: Update Breakdown Relation

  • Go to Breakdown Relations

  • Configure:

    • Breakdown: Site Agent → created_by

    • Related Breakdown: Hour of Day → u_hour_of_day

Step 5: Recollect Data

  • Run Collect Data job again

  • Ensure Collect breakdown matrix is enabled

Step 6: Validate in Analytics Hub

  • Open indicator

  • Select Site Agent

  • Drill into agent → expand related breakdown

You should now see Hour of Day values

crowe1288greg
Tera Expert

Thanks for both replies.