Calculated columns

Calculated columns are elements of a data set that can be combined to create a new column in the data set. For example, a data set might contain the columns “First Name” and “Last Name”. These two columns can be combined into a calculated column called “Full Name”.

Display name

Type

Formula text

aband_count NUMBER if([call_result]) = 'ABANDON' THEN 1 ELSE 0
aband_rate NUMBER if([calls_handled]) > 0 THEN ([aband_count]/[calls_handled]) * 100 ELSE 0
Agent Wait Duration Sec NUMBER LET [pieces] = regexSplitAll([Agent Wait Duration], ":") INSPECT len([pieces]) CASE 2 THEN numericValue(subscript(1, [pieces])) * 60 + numericValue(subscript(2, [pieces])) CASE 3 THEN numericValue(subscript(1, [pieces])) * 3600 + numericValue(subscript(2, [pieces])) * 60 + numericValue(subscript(3, [pieces])) ELSE NULL
AHT NUMBER if ([Accepted]) > 0 THEN [Handling Time]/[Accepted] ELSE 0
Avail Time NUMBER numericValue(deleteAll([Available Time (min)], ",")) * 60
Avg Disp Time NUMBER if ([Accepted]) > 0 THEN [Pending Disp Time]/[Accepted] ELSE 0
Avg Hold Time NUMBER if ([Accepted]) > 0 THEN [Hold Time]/[Accepted] ELSE 0
Avg Talk Time NUMBER if ([Accepted]) > 0 THEN [Talk Time] / [Accepted] ELSE 0
avg_wait_time NUMBER if([calls_handled]) > 0 THEN [call_wait_duration]/[calls_handled] ELSE 0
Away Time NUMBER numericValue(deleteAll([Away Time (min)], ",")) * 60
Break Time NUMBER numericValue(deleteAll([Break Time (min)], ",")) * 60
call_wait_duration NUMBER diffSeconds([connected_dts],[call_start_dts])
calls_handled NUMBER if([connected_duration]) > 0 THEN 1 ELSE 0
calls_offered NUMBER 1
Campaign ID NUMBER if([Product Type]) <> 'Queue' THEN [Product ID] ELSE -1
Campaign Name STRING if([Product Type]) <> 'Queue' THEN [Product Name] ELSE NULL
campaign_id NUMBER if([source_type]) = 'OUTBOUND' THEN [source_id] ELSE -1
campaign_name STRING if([source_type]) = 'OUTBOUND' THEN [source_name] ELSE NULL
deflected_count NUMBER if([call_result]) = 'DEFLECTED' THEN 1 ELSE 0
Dial Duration Sec NUMBER LET [pieces] = regexSplitAll([Dial Duration], ":") INSPECT len([pieces]) CASE 2 THEN numericValue(subscript(1, [pieces])) * 60 + numericValue(subscript(2, [pieces])) CASE 3 THEN numericValue(subscript(1, [pieces])) * 3600 + numericValue(subscript(2, [pieces])) * 60 + numericValue(subscript(3, [pieces])) ELSE NULL
dialgroup_id NUMBER if([source_type]) = 'OUTBOUND' THEN [source_group_id] ELSE -1
Duration Sec NUMBER LET [pieces] = regexSplitAll([Duration], ":") INSPECT len([pieces]) CASE 2 THEN numericValue(subscript(1, [pieces])) * 60 + numericValue(subscript(2, [pieces])) CASE 3 THEN numericValue(subscript(1, [pieces])) * 3600 + numericValue(subscript(2, [pieces])) * 60 + numericValue(subscript(3, [pieces])) ELSE NULL
Engaged Time NUMBER numericValue(deleteAll([EngagedTime (min)], ",")) * 60
eoc_term_count NUMBER if([connected_term_reason]) = 'EOC' THEN 1 ELSE 0
Full Name STRING [firstName] & ' ' & [lastName]
Handling Time NUMBER [Pending Disp Time] + [Talk Time]
Hold Duration Sec NUMBER LET [pieces] = regexSplitAll([Hold Duration], ":") INSPECT len([pieces]) CASE 2 THEN numericValue(subscript(1, [pieces])) * 60 + numericValue(subscript(2, [pieces])) CASE 3 THEN numericValue(subscript(1, [pieces])) * 3600 + numericValue(subscript(2, [pieces])) * 60 + numericValue(subscript(3, [pieces])) ELSE NULL
Hold Time NUMBER [Time On Hold (min)] * 60
Login Time NUMBER numericValue(deleteAll([Login Time (min)], ",")) * 60
Login Util NUMBER IF([Login Time]) > 0 THEN ([Talk Time] /[Login Time]) * 100 ELSE 0
Lunch Time NUMBER numericValue(deleteAll([Lunch Time (min)], ",")) * 60
Off-Hook Utilization NUMBER if ([Off Hook Time]) > 0 THEN ([Talk Time] /[Off Hook Time]) * 100 ELSE 0
Off Hook Time NUMBER numericValue(deleteAll([Off Hook Time (min)], ",")) * 60
Off Hook To Login NUMBER if ([Login Time]) > 0 THEN ([Off Hook Time] / [Login Time] ) * 100 ELSE 0
Pending Disp Time NUMBER numericValue(deleteAll([Pending Disp Time (min)], ",")) * 60
Queue Duration Sec NUMBER LET [pieces] = regexSplitAll([Queue Duration], ":") INSPECT len([pieces]) CASE 2 THEN numericValue(subscript(1, [pieces])) * 60 + numericValue(subscript(2, [pieces])) CASE 3 THEN numericValue(subscript(1, [pieces])) * 3600 + numericValue(subscript(2, [pieces])) * 60 + numericValue(subscript(3, [pieces])) ELSE NULL
Queue ID NUMBER if([Product Type]) = 'Queue' THEN [Product ID] ELSE -1
queue_group_id NUMBER if([source_type]) = 'ACD-INBOUND' THEN [source_group_id] ELSE -1
queue_id NUMBER if([source_type]) = 'ACD-INBOUND' THEN [source_id] ELSE -1
Ring No Ans Time NUMBER [RNA Time (min)] * 60
Ring Time NUMBER numericValue(deleteAll([Ring Time (min)], ",")) * 60
Rounded Off Hook Time NUMBER numericValue(deleteAll([Rounded OH Time (min)], ",")) * 60
Talk Time NUMBER numericValue(deleteAll([Talk Time (min)], ",")) * 60
Training Time NUMBER numericValue(deleteAll([Training Time (min)], ",")) * 60
Transfer Calls Accepted % NUMBER IF ([Accepted]) > 0 THEN ([Disp Xfers]/[Accepted])*100 ELSE 0
Work Time NUMBER numericValue(deleteAll([Work Time (min)], ",")) * 60
Wrap Time Sec NUMBER LET [pieces] = regexSplitAll([Wrap Time], ":") INSPECT len([pieces]) CASE 2 THEN numericValue(subscript(1, [pieces])) * 60 + numericValue(subscript(2, [pieces])) CASE 3 THEN numericValue(subscript(1, [pieces])) * 3600 + numericValue(subscript(2, [pieces])) * 60 + numericValue(subscript(3, [pieces])) ELSE NULL