Catalog Client Scripts that sets a reference field does not work in Service PortalIssue <!-- div.margin{ padding: 10px 40px 40px 30px; } table.tocTable{ border: 1px solid; border-color:#E0E0E0; background-color: rgb(245, 245, 245); padding-top: .6em; padding-bottom: .6em; padding-left: .9em; padding-right: .6em; } table.noteTable{ border:1px solid; border-color:#E0E0E0; background-color: rgb(245, 245, 245); width: 100%; border-spacing:2; } table.internaltable { white-space:nowrap; text-align:left; border-width: 1px; border-collapse: collapse; font-size:14px; width: 85%; } table.internaltable th { border-width: 1px; padding: 5px; border-style: solid; border-color: rgb(245, 245, 245); background-color: rgb(245, 245, 245); } table.internaltable td { border-width: 1px; padding: 5px; border-style: solid; border-color: #E0E0E0; color: #000000; } .title { color: #D1232B; font-weight:normal; font-size:28px; } h1{ color: #D1232B; font-weight:normal; font-size:21px; margin-bottom:-5px } h2{ color: #646464; font-weight:bold; font-size:18px; } h3{ color: #000000; font-weight:BOLD; font-size:16px; text-decoration:underline; } h4{ color: #646464; font-weight:BOLD; font-size:15px; text-decoration:; } h5{ color: #000000; font-weight:BOLD; font-size:13px; text-decoration:; } h6{ color: #000000; font-weight:BOLD; font-size:14px; text-decoration:; } ul{ list-style: disc outside none; margin-left: 0; } li { padding-left: 1em; } --> Symptoms Catalog Client Script which uses the output of a GlideRecord query to set a reference field does not work in the Service Portal. It only works on the Platform side. The source code looks like so: var query_result = new GlideRecord('sys_user'); query_result.addQuery('sys_id', some_user); // will lookup the sys_id of another sys_user using some_user as a reference query_result.query(); // execute query if (query_result.next()) { // fetch the next result set of the query g_form.setValue('reference_field_name', query_result.manager); // setting the field to the manager of some_user } Release All Cause The appropriate API for this functionality is a little different for Service Portal. Specifically, a callback parameter is required for the catalog client script to work both on the Service Portal and Platform. Resolution Modify the Catalog Client Script like so: var query_result = new GlideRecord('sys_user'); query_result.addQuery('sys_user', some_user); query_result.query(callBackFunction); function callBackFunction(query_result) { if (query_result.next()) { g_form.setValue('reference_field_name', query_result.manager): } } Additional Information Additional documentation around this area can be found here: Mobile client GlideForm (g form) scripting and migration