The code is failing when a reference field has an ACl and its used as condition in a ui policy.

The code that is failing is the g_form.getDisplayBox(...) function call as it is coded to retrieve a element from the HTML where the ID is in the format of:

var dName = 'sys_display.' + this.tableName + '.' + fieldName;

The code assumes we get an object and tries to get the value:

userValue = g_form.getDisplayBox(field).value;

This is not handled properly. So this could be changed to:

Check the object before calling .value;
Use an alternative method for getting the object (e.g. g_form.getControl())

1. The ID of the element varies between the two users.
1a. Customer: id="incident.correlation_display_label"
1b. Admin/maint: id="sys_display.incident.correlation_display"
2. This is happening because of a write ACL, which is making the field read-only and changing the ID of the reference field in the HTML

We verified this behaviour on an OOB instance, where there is a Caller field (reference to sys_user) and there exists an OOB ACL which makes it read-only to anyone not ITIL (or above):
1. For admin: id="sys_display.incident.correlation_display"
2. For employee: id="incident.caller_id_label"

Steps to Reproduce

No steps to reproduce available at this time.


  1. To use a Client Script instead of the UI Policy, get the value using g_form.getReference() in the Client Script.
  2. Remove the ACL and make the field read only via data policy.

Related Problem: PRB591495

Seen In

Berlin Patch 4 Hot Fix 1
Berlin Patch 5 Hot Fix 1
Berlin Patch 7
Berlin Patch 8 Hot Fix 1
Calgary Patch 3 Hot Fix 1
Dublin Patch 3
Eureka Patch 11 Hot Fix 2
Eureka Patch 6 Hot Fix 2
Eureka Patch 7 Hot Fix 2
Eureka Patch 8

Fixed In


Associated Community Threads

There is no data to report.

Article Information

Last Updated:2016-07-25 12:32:03