如何在 maximo 中隐藏具有类似于银行帐号的特殊字符的字段值

Posted

技术标签:

【中文标题】如何在 maximo 中隐藏具有类似于银行帐号的特殊字符的字段值【英文标题】:How to hide a field value in maximo with special characters similar to a bank account number 【发布时间】:2019-12-21 12:44:34 【问题描述】:

我有一个要求,我通过集成到 maximo 中导入一些属性数据。但是,客户要求字段值需要隐藏或使用特殊字符加密,并且只显示最后几个数字,类似于银行帐号。我如何实现这一目标? 举个例子,假设字段值为 1234567 客户希望将其显示为 ****567

【问题讨论】:

是否可以隐藏该字段的所有内容? Maximo 只为您提供了两个开箱即用的选项:不隐藏任何字符或隐藏所有字符。做其他事情超出了标准的 Maximo 编码。然后,您将看到某种自定义控件,它复制标准文本框控件但添加了部分隐藏。 很少创建自定义控件。 不,这是一个挑战,并非该字段的所有内容都需要隐藏。我们必须省略帐号的最后五位,其余的需要隐藏 “不是所有的字符需要被隐藏”和“最后几个字符不能被隐藏”是有区别的.听起来像后者,在这种情况下,JPTremblay 的答案是一个很好的解决方法。 【参考方案1】:

这是一个简单的解决方案:定义一个持久属性 (accountnum) 来保存您的帐号,并定义一个非持久属性来显示其部分屏蔽的版本 (maskaccountnum)。

创建一个属性启动点自动化脚本来初始化非持久值。

Python 示例:

if not mbo.isNull("accountnum") :
    mbo.setValue("maskaccountnum",  "****" + mbo.getString("accountnum")[-3:])

将您的非持久属性添加到您的应用程序中。

【讨论】:

【参考方案2】:

如 JPTremblay 所述,我创建了一个非持久属性。 并且在获得客户对属性 ACCOUNTNUMBER 的固定数字范围的确认后,就不需要动态脚本了。

所以我刚刚创建了一个对象启动点脚本。 事件被选为 Initialize

只有一行代码

mbo.setValue("maskaccountnum", "************" + mbo.getString("accountnum")[-5:])

这成功了。语言被选为 Jython。

【讨论】:

是的,使用init事件是一个很好的解决方案。但是,在设置 mask 属性之前,请确保您的 accountnum 属性中有一个值,否则您可能会收到错误。

以上是关于如何在 maximo 中隐藏具有类似于银行帐号的特殊字符的字段值的主要内容,如果未能解决你的问题,请参考以下文章

Woocommerce 删除订单感谢页面上的银行帐号

为啥在excel 表格中输入农业银行帐号时后三位数自动为零

如何查询个人银行卡号?

在 Web 表单中接受但不保存银行帐号

存储银行帐号

在 Woocommerce 的产品页面中隐藏特定标签