在 SELECT 语句中获取格式化值

Get formatted value in SELECT statement

有没有办法从 Select 语句中获取 "Value" 字段?在 ABAP 中使用 SELECT 时,我得到了 "Value Unconverted" 中的值。

我必须使用特殊的 FM 来获取 "Value" 字段吗?

直接从SELECT声明是不行的,需要转换值。

转到 SE11,输入 table 名称 PROJ。双击数据元素 PS_INTNR,双击域 PS_PSPNR。有一个字段'Routine',在这里你应该找到值KONPD。这是用于在输入(未转换,即存储在 DB 中的内容)和输出值(已转换,即屏幕上显示的内容)之间进行转换的转换出口。

如果你双击这个字段,它会给出你可以用来转换的功能模块:

  • CONVERSION_EXIT_KONPD_INPUT
  • CONVERSION_EXIT_KONPD_OUTPUT

坏消息你必须分别转换每个值,所以如果数据在内部 table LOOP/ENDLOOP 并调用 FM。