在Maximo中配置自定义表格控件:保存后保持空状态

在Maximo中配置自定义表格控件:保存后保持空状态

本文将指导maximo用户如何配置自定义表格控件,使其在保存记录后自动清空显示。针对`start empty=true`属性无法满足保存后清空需求的场景,文章提出了通过修改表格控件关联关系的`where clause`为永假条件(例如`3 = 4`)的解决方案。这种方法确保了表格在加载和数据保存后重新获取数据时始终显示为空,同时仍允许用户添加新行,从而优化了用户体验,特别适用于需要持续输入新数据的业务场景。

理解问题:Maximo自定义表格控件的默认行为

在Maximo 7.6.1.2及更高版本中,自定义表格控件在用户保存记录后,通常会重新加载并显示刚刚保存的数据。对于某些业务场景,例如时间表录入或持续添加新明细项,用户可能希望表格在每次保存后都显示为空,以便于输入新的数据,而不是看到已保存的记录。Maximo虽然提供了Start Empty=true属性,但这仅在应用程序首次加载时使表格为空,保存操作后,表格仍会重新填充数据,无法满足保存后持续清空的需求。

核心解决方案:利用关联关系的Where子句

要实现自定义表格控件在保存记录后自动清空显示,关键在于巧妙地利用其Relationship (关联关系)属性的Where Clause (Where子句)。通过设置一个永假条件的Where子句,我们可以阻止表格控件在数据加载或重新获取时找到任何记录,从而使其始终显示为空。

实施步骤

以下是在Maximo应用程序设计器中配置此行为的详细步骤:

  1. 定位自定义表格控件: 在Maximo的应用程序设计器 (application Designer)中,打开包含目标自定义表格控件的应用程序。选中该表格控件。

  2. 访问控件属性: 在控件属性窗口中,找到并展开与该表格关联的Relationship (关联关系)属性。这个关联关系定义了表格从哪个对象以及以何种条件获取数据。

  3. 修改Where子句: 在关联关系的属性中,找到Where Clause (Where子句)字段。将其值修改为一个永远为假的条件。一个常见的、简单有效的永假条件是:

    3 = 4

    或者

    在Maximo中配置自定义表格控件:保存后保持空状态

    存了个图

    视频图片解析/字幕/剪辑,视频高清保存/图片源图提取

    在Maximo中配置自定义表格控件:保存后保持空状态 17

    查看详情 在Maximo中配置自定义表格控件:保存后保持空状态

    1 = 0

    选择任何一个能够保证条件始终不成立的表达式即可。

  4. 保存并测试: 保存应用程序的配置更改,并重新启动应用程序进行测试,确保其行为符合预期。

工作原理详解

  • 数据加载与显示: 当应用程序加载或表格控件尝试获取数据时,Maximo会使用您设置的Where子句来过滤数据。由于3 = 4这样的条件永远不会成立,关联关系将不会找到任何匹配的记录,因此表格控件会显示为空。
  • 添加新行: 尽管Where子句阻止了现有数据的显示,但表格控件仍然允许用户添加新的行。这是因为添加新行是基于对象结构而非Where子句的过滤,不依赖于查询结果。
  • 保存操作: 当用户在表格中添加新行并保存记录时,这些新数据会被成功地写入数据库
  • 保存后重新获取数据: 保存操作完成后,Maximo通常会触发数据刷新。此时,表格控件会再次尝试根据其关联关系的Where子句从数据库中获取数据。由于Where子句依然是3 = 4,它仍然无法找到任何数据(包括刚刚保存的数据),从而使得表格在保存后依然保持清空状态。

注意事项与最佳实践

  • 适用场景限制: 这种方法适用于那些表格控件的主要目的是添加新数据,并且在添加后希望立即清空以便继续添加的场景。如果该表格控件还需要用于查看或编辑已存在的记录,那么此方法可能不适用,因为它会阻止所有现有数据的显示。在这种情况下,您可能需要考虑其他策略,例如使用不同的ui控件或在保存后通过自动化脚本清除UI数据。
  • 用户体验: 确保用户理解表格为空的原因。如果用户期望看到已保存的数据,而表格却一直为空,可能会引起困惑。在必要时,可以通过界面提示或培训来指导用户。
  • 测试: 在生产环境中部署此更改之前,务必在开发或测试环境中进行充分的测试,以确保其行为符合预期,并且没有引入其他意外问题。
  • 备份: 在进行任何应用程序配置更改之前,建议备份当前的xml配置,以便在需要时可以回滚。

总结

通过巧妙地修改Maximo自定义表格控件关联关系的Where子句为一个永假条件,我们可以有效地实现表格在保存记录后自动清空显示的需求。这一策略为需要频繁录入新数据的业务场景提供了更流畅、更直观的用户体验。在实施时,务必考虑其适用性,并进行充分测试,以确保其与整体业务流程的兼容性。

上一篇
下一篇
text=ZqhQzanResources