Abap 如何将函数的结果写入屏幕?

Abap 如何将函数的结果写入屏幕?,abap,Abap,我得到了一个函数,它只是一个简单的表选择。我有一个带按钮的屏幕。当按钮被激活时,我想调用函数并在屏幕上写出结果表。我没有得到任何错误,只是什么都没有发生,怎么了 CASE ok_code. WHEN 'SELECTALL'. CALL FUNCTION 'ZRL_ZH12FU_MONUMENTALL' TABLES MONUMENTLIST = monumentresult. LOOP AT monumentre

我得到了一个函数,它只是一个简单的表选择。我有一个带按钮的屏幕。当按钮被激活时,我想调用函数并在屏幕上写出结果表。我没有得到任何错误,只是什么都没有发生,怎么了

CASE ok_code.
    WHEN 'SELECTALL'.
      CALL FUNCTION 'ZRL_ZH12FU_MONUMENTALL'
        TABLES
          MONUMENTLIST       =   monumentresult.
      LOOP AT monumentresult INTO monumentresultline.
        WRITE: / monumentresultline-monumentid,
                 monumentresultline-monumenttitle,
                 monumentresultline-theatre,
                 monumentresultline-year,
                 monumentresultline-part,
                 monumentresultline-picture.
      ENDLOOP.
    WHEN 'SELECT'.
      ...

write语句仅适用于输出屏幕,而不适用于选择屏幕

您可能需要在选择屏幕上定义一些文本元素并使用

LOOP AT SCREEN
构造以更新所述文本元素的值

只写将数据输出到列表缓冲区,当显示名为“列表屏幕”的系统屏幕时,将自动显示列表缓冲区

要从经典屏幕切换到列表屏幕,请在经典屏幕的PAI中使用以下语句:

LEAVE TO LIST-PROCESSING.
PAI结束时,将显示列表屏幕,并显示列表缓冲区中的所有数据


当您按下列表屏幕的退出按钮时,它会执行隐式的离开列表处理而不显示TO,并显示最后一个经典屏幕。

写入语句通常在列表屏幕上写入。可执行程序的一部分。我看到您正试图在正常的模块池屏幕上写入


要实现这一点,请在可执行程序中写出语句并使用submit程序进行调用,这样,编写语句就可以正常工作。

这不是选择屏幕,我编辑了问题。它只是一个简单的屏幕。所以如果屏幕上没有一个元素,我就不能在屏幕上写字,我可以在哪里写字?