ABAP对象-访问消息类的类?

vwe*_*ert 3 sap abap

在ABAP Objects类的标头信息中,我可以输入要与该MESSAGE语句一起使用的消息类。这类似于MESSAGE-ID报告或功能池的语句。由于找不到在生成的节中任何地方输入头数据的消息类,因此我假设它是在CLASS-POOL某处的顶级语句中生成的。

对于某些库(例如,BAL应用程序日志记录),必须使用变量或方法参数指定消息类。到目前为止,我已经定义了一个常量,该常量指定了消息类并使用了该常量。我想知道是否有可能以其他方式访问标头数据中指定的消息类,以便摆脱该冗余变量。有没有人找到这样做的方法?

编辑:新方法应该比旧方法更简单-我不够疯狂,无法添加一个a CLASS-CONSTRUCTOR并执行一些数据库访问或SEO_*函数调用以摆脱该常数。

Chr*_*ian 5

我认为您需要CLASS-CONSTRUCTOR使用message类设置class属性。

MESSAGEINTO子句的语句具有设置SY-系统变量的副作用。因此,您可以输入以下内容CLASS-CONSTRUCTOR

DATA: lf_dummy TYPE string.
MESSAGE s999 INTO lf_dummy.
af_msgid = sy-msgid.
Run Code Online (Sandbox Code Playgroud)