格式化显示持续时间

Formatting duration for display

在 SAP 数据库中,值的格式为 PxDTyH,其中 x 是天数,y 是小时数。 P2DT0H 之类的值是 2 天 + 0 小时。我可以通过 SE16:

看到

不幸的是,这与用户显示的完全一样,“3”对应于数据库中的索引(在上面的屏幕截图中没有看到)。

我希望看到它显示出来

有没有办法在数据显示在组合框中之前对其进行处理?开发人员无法更改数据库中的格式,因为它会更改 API.

仅供参考:我只是一名测试人员,我不知道如何使用 ABAP 进行编码,但根据其他编程语言的知识,我会说数据可以在显示之前进行转换。我不需要完整的答案,只需要指向 SAP 挂钩或事件的指针即可编写转换函数。

转换例程可能是您的一个选择。你应该做的是:

  1. 使用您的域(用于 PxDTyH 值)或专门为此创建一个新域。
  2. 创建名称为 CONVERSION_EXIT_%NAME%_OUTPUT 的 FM,并将转换逻辑放在那里。强制参数 INPUTOUTPUT 应该存在。
  3. 在域属性的 Convers.routine 字段中输入 %NAME%
  4. 启用检查用户参数中的转换退出复选框。

更多信息是 here