Service Now GlideRecord 查询参考字段

Service Now GlideRecord query reference fields

Service Now 是否允许通过 GlideRecord 查询引用字段?如果是,怎么做?

我有一个应用程序,本地用户 table 需要特定于该应用程序的首选项。当用户填写新表单时,我想查询本地用户 table 以查看是否存在当前登录用户的记录。如果是,那么我想在表格中预填一些答案。

我的用户table有对sys_usertable的引用,以便link本地用户记录到实际服务现在的用户。当我尝试 运行 脚本来检查本地用户 table 时,它 returns "sys_idNotValidnull" 为我添加的查询语句。

var lscUser = new GlideRecord('x_wadm_lsc_user');
lscUser.addQuery('UserID', '=', gs.getUserID());
gs.info("Query: "+lscUser.getEncodedQuery());
lscUser.query(); 

Returns: "Query: sys_idNotValidnull"

如果我更改查询以搜索不同的字符串字段,它会按预期工作。

var lscUser = new GlideRecord('x_wadm_lsc_user');
lscUser.addQuery('temp', '=', 'dan');
current.temp += "  Query: "+lscUser.getEncodedQuery();

Returns: "Query: temp=dan"

我同意 Dan 的观点,第一步应该是确认列名。我通常不会认为任何事情都是理所当然的,并且总是仔细检查。您可以使用字典或右键单击字段标签,它将显示列名称。

我见过 "sys_idNotValidnull",但通常只在范围内的应用程序中看到。