If 2 reference field has same value, but one of the reference field does not resolve a record in its referenced table, then the other Reference field also becomes blank


Description

If 2 reference field has same value, but one of the reference field does not resolve a record in its referenced table, then the other Reference field also becomes blank

Steps to Reproduce

1. Go to incident.list and open any existing incident
2. Make sure a valid user is present in the "Caller" field, go to sys_user table, and copy the sys_id of the selected user.
3. Write the following script to insert the same sys_id in assignment_group field -

var gr = new GlideRecord("incident");
gr.addQuery("sys_id","<SYS_ID_OF_INCIDENT>");
gr.query();

while(gr.next()){
gr.assignment_group="<SYS_ID_OF_USER>";
gr.update();
}

4. Configure Form Layout of the incident and make sure the "Assignment Group" field comes before the "Caller" field

Expected behavior
- The Assignment Group field will be empty, however, the Caller field will show the User's name

Actual behavior
- The Assignment Group field will be empty, also, the Caller field is empty

Workaround

Clear out the invalid value from the field where no referenced record is resolving (For that above example, it would be Assignment Group field)


Related Problem: PRB1379904