iTop搜索条件优化

当维护大量组织,品牌和型号时,筛选对象时 ,这些条件会显示全部的项目,比如下图,筛选服务器,出现了 网络设备的品牌,如果品牌数量超过50,还会以 autocomplete 模式显示,即隐藏项目列表,需要用户输入,根据用户输入显示匹配的项目,用户需要先知道有哪些品牌,体验较差。

image

较理想的方式是,搜索条件只显示当前对象用到的 AttributeExternalKey 对象,已知可以通过以下查询得到所有服务器正在使用的 品牌:

因此,我们的目标就是让 iTop 显示搜索表单时支持这种筛选。代码如下。如果是 AttributeExternalKey 类型,直接生成一个 ValueSet,应用以上的 OQL

最终的效果如下,只显示 HP 和 未定义 两个品牌项。

顺便提一下,编辑 PhysicalDevice 填写品牌时也会遇到这样的问题,比如编辑服务器,网络设备的品牌也会出现,可以为 brand_id 属性加以下 filter 来解决

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注