在 IBM Maximo 中,可以向报表添加直接打印选项。这会向工具栏添加打印机图标,并允许您一键运行报告。但是,如果报告在运行之前需要参数,则此选项不可用...

通常,用户必须单击 “运行报告” 操作,然后在该应用程序可用的所有报告列表中找到他们的报告。然后,他们点击他们想要的那个,然后转到 IBM Maximo 报告请求页面。

在这篇博客中,我将向你展示如何解决这个问题。在我们的示例中,我们将操作启动点用于自动化脚本,并将其链接到 IBM Maximo 应用程序设计器中的菜单项。

(此时值得注意的是,该脚本使用的某些功能仅在 7.6.1 及更高版本中可用;如果你使用的是旧版本但仍想实现这一点,请联系我们,我们可以讨论实现这一目标的最佳方法。)

我们需要为启动点指定一个名称,该名称将与 “应用程序设计器” 中的 “签名” 选项中使用的名称相同。在标准的开箱即用的 Maximo 上,此项限制为 25 个字符,因此我们暂时将其简短,并将启动点和动作都称为 “AMREP”。在描述字段中,我们将添加 “资产变动报告”。

Create script with action launch point BPD Zenith IBM Maximo step 1

我们也可以给脚本起一个名字。在这个例子中,我们不会添加任何变量。但是,如果您想使用它来调用多个报告或多个应用程序,则添加一个包含报告名称的变量不会有问题。

可以将其保留为 PYTHON 或 JYTHON。然后我们引入代码(见下文)...

这将带回资产应用程序上的 “assetmove_history.rptdesign” 报告的 REPORTNUM。

你可以硬编码这个数字。或者,如果您能够自己查询数据库,也可以将其作为启动点变量传递。然后,脚本使用 reportnum 调用该报告的对话框。

Create script with action launch point BPD Zenith IBM Maximo

然后,这应该既创建了启动点,又创建了动作。有了这些,我们就可以转到 “应用程序设计器” 和 “资产” 应用程序。然后我们可以添加一个新的签名选项—— “AMREP”。输入后,我们打开高级签名选项并选择 “这是用户界面必须调用的操作” 选项。然后,系统知道该选项名称与操作相匹配。反过来,这将是我们脚本的启动点。

Advanced Signature options BPD Zenith IBM Maximo

完成此操作后,现在应该添加动作。但是,我们可能还想将其添加到应用程序左侧的操作菜单中... 单击 “新增” ——元素类型为 “选项”,键值应显示为 AMREP。然后我们给它一个位置(试着找一个目前没有使用的位置)。

我们可以选择将显示在哪些选项卡上。

有一个请求页面,允许您输入资产编号的参数。在这种情况下,我们将允许所有选项卡,但在某些情况下,您可能只希望它出现在主选项卡中。

现在一切都应该准备就绪;我们只需要向安全组授予权限——点击资产应用程序,然后点击资产移动报告、授予权限...

然后我们只需要注销,然后重新登录即可生效!

当我们重新登录资产应用程序时,现在应该会看到 “资产变动报告” 选项。这将打开该报告的 “报告请求” 页面,而不是转到 “运行报告和资产移动历史记录”。

这是代码—— '直接从 IBM Maximo 的操作菜单调用报告'

##############################################################

# 作者 P IRVING #

# 日期 2020 年 5 月 11 日 #

# NAVIAM #

# https://www.naviam.io #

##############################################################

frompsdi.mboImportSQLFormat;

从 psdi.webClient.system.Session 导入 WebClientSession;



wcs=service.webclientSession ()



#If 有两个我们会得到序列中的第一个

sqf=SQLFormat(mbo,“APPNAME=1 和 REPORTNAME=: 2”)

sqf.setObject(1,“报告”,“应用程序名称”,应用程序)

sqf.setObject (2、“报告”、“报告名称”、“assetmove_history.rptdesign”)

其中 =sqf.format ()



reportSet=mbo.getmboset(“$REPORTSPI”,“报告”,其中)

#Set 这套套装是一次性的,我们不是在修改报告只是读一读

reportSet.setFlag (39L,True)

reportset.reset ()



报告 =reportset.moveFirst ()



reportnum= str (report.getInt (“REPORTNUM”))

pageName= “已报告” +报告编号

wcs.loadDialog(页面名称)



reportset.close ()


要记住的事情— IBM Maximo 启动点、安全组和应用程序设计师:

将您的发射点名称控制在 25 个字符以下。脚本启动点名称和操作最多可以是 30 个字符,签名选项只能是 25 个字符。它们必须匹配,因此我们需要将其设置在 25 个字符以下。

Calling Reports Advanced Signature options BPD Zenith IBM Maximo
  • 如果您的选项未显示在列表中,但您已将其授予安全组,则需要确保该组中的所有人同时注销以使更改生效。
  • 如果您希望它出现在常用操作菜单或工具栏上,则可以在应用程序设计器中选择 “添加/修改工具栏菜单” 来完成此操作。然后为您的选项添加新行。
Calling Reports Advanced Signature options BPD Zenith IBM Maximo

 

你可以进一步扩展这个脚本,使其更加通用。为此,添加一个名为 report 的脚本变量,其绑定类型为 LITERAL。然后,您可以覆盖您拥有的每个新启动点的值,每个要运行的报告都有一个启动点。将脚本的第 9 行更改为查看变量,而不是我在视频中硬编码的字符串:

sqf.setObject(2,“报告”,“报告名称”,报告)

 

如果你想进一步了解这个问题或任何有关 IBM Maximo 的信息,我们很乐意 听听你的心声!

Unlock the Ultimate Guide to IBM Maximo Application Suite (MAS)

Discover everything you need to know to modernize your asset management strategy.

Inside, you’ll learn:

  • What’s new in IBM Maximo Application Suite 9.0
  • Key differences between Maximo 7.6 and MAS
  • How AppPoints and OpenShift change the game
  • Industry use cases across energy, manufacturing, and transportation
  • Step-by-step guidance for upgrading and migration readiness
Cover of 'The Ultimate Guide to MAS Maximo Application Suite' by Naviam featuring a man in a yellow construction helmet and safety vest holding a tablet.
×

ActiveG, BPD Zenith, EAM Swiss, InterPro Solutions, Lexco, Peacock Engineering, Projetech, Sharptree, and ZNAPZ have united under one brand: Naviam.

You’ll be redirected to the most relevant page at Naviam.io in a few seconds — or you can go now.

Read Press Release