自定义资产列表筛选
可自定义 Asset Advisor 主页上的资产列表显示。为此,PTC.SCA.SCO.CustomActionHandler 事物提供了相应服务:
• AssetAdvisorPreFilter - 允许实现自定义 JSON 过滤器,这可以发生在对 Asset Advisor“筛选器”窗格中的筛选器选择进行处理以获得资产列表之前。
• AssetAdvisorFilterActions - 应用 Asset Advisor“筛选器”窗格中的筛选器选择以及 AssetAdvisorPreFilter 服务,用于资产列表显示。也可以添加自定义的筛选器后处理 javascript 或 JSON。
示例 - 按资产位置自动筛选资产列表
要自动筛选资产列表以仅显示具有特定“位置”值的资产,请执行以下操作:
1. 导航至 PTC.SCA.SCO.CustomActionHandler 事物。
2. 在“服务”下,单击 以覆盖 AssetAdvisorPreFilter 服务。
3. 在服务编辑器中,编辑代码以根据特定“位置”值进行筛选。例如,以下代码仅筛选“位置”值为 Montreal 的资产:
var result = {"filters": [{"fieldName":"physicalLocation","type":"LIKE","value":"Montreal%"}]};
4. 单击“完成”以应用对服务的更改。
5. 单击“保存”以保存对 PTC.SCA.SCO.CustomActionHandler 事物的更新。
应用此自定义行为无需混搭自定义。
示例 - 将新筛选器添加到资产列表混搭
这些服务也可与“筛选器”窗格混搭的更新一起使用,以将新筛选器添加到用户界面中。
1. 导航到启动点配置事物 (PTC.Factory.C_LaunchPointConfigurationThing_[ReleaseVersion])。
2. 在“配置”下的 LaunchPointEntitySettings 部分中,编辑 AssetListFilterMashup 以指向可自定义的资产列表筛选器混搭副本 (PTC.SCA.SCO.AssetMonitor.AssetList.C_FilterMashup_[发布版本])。保存对启动点配置事物的更改。
3. 导航至 PTC.SCA.SCO.AssetMonitor.AssetList.C_FilterMashup_[发布版本] 混搭。
| 在查看或编辑随 ThingWorx Apps 提供的混搭时,如果出现一条消息,询问您是否要用新的小组件替换已弃用的小组件,请单击“否”。 |
4. “型号”筛选器进行必要绑定后,为新筛选器添加新的复选框和输入字段。保存混搭。
5. 导航至 PTC.SCA.SCO.CustomActionHandler 事物。
6. 在“服务”下,单击 以覆盖 AssetAdvisorPreFilter 服务。
7. 在服务编辑器中,编辑代码以包括新筛选器信息。例如,如果新筛选器允许用户从“位置”值列表中进行选择,则以下代码将应用该筛选器:
var filter = [];
var currenJSONFilter = JSON.parse(currentFilter);
var isChecked = currenJSONFilter["isphysicalLocationChecked"];
var customValue = currenJSONFilter["physicalLocation"];
if ( isChecked ){
filter.push({"fieldName":"physicalLocation","type":"LIKE","value":customValue});
}
var result = {"filters": filter};
8. 单击“完成”以应用对服务的更改。
9. 单击“保存”以保存对 PTC.SCA.SCO.CustomActionHandler 事物的更新。