あなたが見ているのはlocation
参照フィールドのsys_id
です。
ビジネスルールでこれを実行している場合は、getRefRecord()メソッドを使用してこれを簡単に引き出すことができます。
var company = new GlideRecord('u_company');
company.query();
while (company.next()) {
var loc = company.location.getRefRecord()
gs.log("Company Name: " + company.getValue('name'));
gs.log("Location Name: " + loc.getValue('name'));
}
あなたはクライアントスクリプトとしてこれをやっている場合は、それは少しより複雑ですが、あなたはGlideAjaxを使用することができます。そこの例を見てくださいが、ここには簡単な例があります。
新しいスクリプトを作成します。クライアントには、というクライアント呼び出し可能文字列が含まれています。
var MyCompanyUtils = Class.create();
MyCompanyUtils.prototype = Object.extendsObject(AbstractAjaxProcessor, {
getLocationName : function() {
// parameters
var company = this.getParameter('sysparm_my_company');
// query
var rec = new GlideRecord('u_company');
rec.addQuery('sys_id', company);
rec.query();
data = "Company not found."
while (rec.next()) {
var loc = rec.location.getRefRecord();
data = loc.name;
}
return data;
},
type : "MyCompanyUtils"
});
このスクリプトを呼び出すクライアントスクリプトを作成します。
function onChange(control, oldValue, newValue, isLoading, isTemplate) {
if (isLoading || newValue === '') {
return;
}
// get the company referece value
var company = g_form.getValue('company');
var ga = new GlideAjax('MyCompanyUtils'); // call the object
ga.addParam('sysparm_name', 'getLocationName'); // call the function
ga.addParam('sysparm_my_company', company); // pass in company
ga.getXML(showLocation);
}
function showLocation(response) {
var answer = response.responseXML.documentElement.getAttribute("answer");
alert("Location: " + answer);
}
_Client Script_または_Business Rule_などのサーバースクリプトでこれを実行していますか?私は、あなたの例がクライアント側にある「警告」を持っているので推測しています。 – Kirk