Javascript ServiceNow-让ESS用户查看受影响服务中的所有事件,无论他们是否创建了该服务

Javascript ServiceNow-让ESS用户查看受影响服务中的所有事件,无论他们是否创建了该服务,javascript,user-management,servicenow,Javascript,User Management,Servicenow,因此,我希望让一些ESS用户在我创建的默认主页中看到特定服务的所有事件 到目前为止,我是如何做到这一点的: 创建角色 创建组 向组中添加人员 使用仪表报告创建主页 将角色添加到主页中作为读写 现在,从我作为ITIL用户的角度来看,我可以看到我的特定服务X的17个事件。现在我模拟了该新组的一个用户,我只看到3个事件,只有特定用户创建的一个事件。但是他看不见其他人 所以我试着在下面操纵事件模块 应用程序菜单->自助服务-->事件 在那里,我发现了一个JavaScript,它可以检查事件是否是由用

因此,我希望让一些ESS用户在我创建的默认主页中看到特定服务的所有事件

到目前为止,我是如何做到这一点的:

  • 创建角色
  • 创建组
  • 向组中添加人员
  • 使用仪表报告创建主页
  • 将角色添加到主页中作为读写
现在,从我作为ITIL用户的角度来看,我可以看到我的特定服务X的17个事件。现在我模拟了该新组的一个用户,我只看到3个事件,只有特定用户创建的一个事件。但是他看不见其他人

所以我试着在下面操纵事件模块 应用程序菜单->自助服务-->事件

在那里,我发现了一个JavaScript,它可以检查事件是否是由用户创建的,我只是将true转换为false,我希望得到其他14个事件,而不是他的3个

但那没有成功

既然ServiceNow几乎和Chuck Norris一样强大,那么必须有其他简单的方法来实现我的目标


我正在运行一个富士版本。补丁11?

我假设这就是您所说的javascript条件:

caller_id=javascript:gs.getUserID()^active=true
这将指定一个默认筛选器,该筛选器将限制以下记录:

  • 调用者是登录用户(即创建 (事件)
  • 事件活跃
如果您将其更改为
active=false
,您只是说“请告诉我所有来电者登录的用户处于非活动状态的事件,我认为这不是您想要的。听起来你真的想让用户看到他们不是调用方的事件,在这种情况下,你可以删除第一个条件(
caller\u id=javascript:gs.getUserID()
),默认模块显示所有活动事件,我担心这仍然不是你想要的


为了让您进入下一步,您可以分享一下您如何处理为登录用户过滤服务的问题吗?

如果您谈论的是最终用户(没有角色或没有ITIL角色的用户),他们会受到onbefore查询业务规则以及ACL的限制。如果希望最终用户看到更多事件,则必须同时更改这两个选项。这两个对象的sys_id在所有实例上都应该是相同的,因此只需将链接中的“yourinstance”替换为您的service now实例的名称即可


(别忘了提升权限[security_admin]以进行更改)

你说得对,我试图停用脚本,但在我删除选中标记@active后它不会保存。我不想进行任何筛选。这就是我试图扭转这种状况的原因。知道如何关闭此脚本吗?我假设您在sys_app_模块条目上看到此脚本(在类似
/sys_app_module.do?sys_id=087800c1c0a80164004e32c8a64a97c9的URL上),在这种情况下,您可以清除“参数”或“过滤器”字段完全删除列表中的筛选条件。实际上我不够精确。我为我的ESS用户创建了一个带有图表的主页,其中显示了他们服务的所有事件。但是每个ESS用户只能看到他们创建的事件。嘿,Makim,是的,你是对的,同时我自己找到了业务规则,也看到了ACL。启用调试帮助了我:)我不确定的是,就许可等条款和条件而言,ServiceNow是否可以……据我所知,这应该没有问题,我做了几次,而Service Now从未说过一句话;)您能告诉我如何将“检查用户是否在组中”功能添加到现有的业务规则中吗?我尝试添加类似于“addOrCondition(u.isMemberOf('mygroup')”的内容,但没有成功。此外,如果用户根本没有角色,但在一个组中,可以查看事件。我不能让他看到主页,对吗?