根据状态在 maximo 中隐藏报告

hide report in maximo based on status

如果状态不等于 APPR,我想隐藏报告及其打印按钮。

我已经创建了一个条件表达式,下一步是什么?

即例子: 我希望用户能够打印已批准的 PO,但只要未达到已批准的状态,他们就不能 运行 或打印报告。

在使用 db2 9.7 数据库的 websphere 上使用 Maximo 7.5.0.4 和传输模块。

第 1 部分
我认为没有办法有条件地隐藏 运行 报告的按钮,但我认为能够这样做是个好主意。因此,无论您是否执行我的回答的第二部分,我强烈建议您 a) 投票给 this RFE and add a comment about wanting it to support the use of Conditional Expressions or b) submit your own RFE。如果您创建自己的 RFE,请在评论中向我们(SO 读者)提供 link,以便我们对其投票。

第 2 部分
在 IBM 实施 RFE 并且您升级到该版本之前,我建议您将您的条件添加到 poprint.rptdesign 报告的 where 子句中。如果您提供某种错误消息告诉他们该怎么做,而不是只打印空白页,您的用户会更感激,但听起来打印空白页总比什么都不做和让用户打印未经批准的采购订单要好。

至"add your criteria":

  1. 在 BIRT 报表设计器中打开 poprint.rptdesign。
    1. 如果您还没有为 Maximo 安装 BIRT Report Designer,则需要安装。
  2. 在大纲视图中,导航至 poprint.rptdesign > 数据集 > mainDataSet
  3. 单击 poprint.rptdesign 选项卡上的脚本选项卡。
    1. 您应该查看 open 脚本,其中 sqlText = " select... 从第 7 行开始。
  4. 第 13 行是 + " where " + params["where"]。在此行之后,添加您自己的条件,例如 + " and po.status = 'APPR' ".
  5. 保存。
  6. 将 poprint.rptdesign 报告的更新版本导入 Maximo。