首页 > 解决方案 > 如何以编程方式访问 Maximo 列表 where 子句

问题描述

在 Maximo 的 WOTRACK 应用程序中,我需要找到某种方式以编程方式访问当前窗口查询的 where 子句。很明显,这存在于 Maximo 中的某个地方,因为您可以在 UI 中的 Advanced Search > Where 子句下访问它。我需要找到某种方法以编程方式获取此信息并将其传递给我正在使用的应用程序。

过去,我通过让用户在 Maximo 中打开 where 子句窗口,然后只检索包含 where 子句的 textarea 元素的值,拼凑了一种获取这些数据的方法。我希望找到某种方法通过 Maximo 的 Java 类来访问它,这样用户就不必打开那个窗口。我已经挖掘了 Maximo 的 Javadocs,我可以看到有一个 WhereClauseTextArea 类,我相信它会负责创建文本区域。我希望能够将 UI 会话 ID 传递给 Maximo 的 Java 类并取回列表的当前 where 子句。有没有一种简单的方法可以做到这一点?我希望能够使用 JavaScript 从前端访问它,或者使用 Java 从 Maximo 的后端访问它,或者作为最后的手段使用自动化脚本。

标签: maximo

解决方案


在 Maximo 7.6.1.1 /Jython 中,我们可以使用以下getWebClientSession()方法:

wclause = service.webclientsession().getCurrentApp().getResultsBean().getMboSet().getUserAndQbeWhere() 

service.error("The WHERE clause is : ", wclause);

推荐阅读