我正在使用MESSAGE功能,我想知道如何查明消息ID是否存在。
例如:
MESSAGE e001(test_messages) WITH 'Test'.
sy
当我MESSAGE e000(test_messages) WITH 'Test'.
时
sy
中的值是相同的(当然除了id)。但在这种情况下,我想改变我的过程,因为我从未创建过具有id 000的消息
我不知道在哪里检查id是否确实存在。
答案 0 :(得分:2)
您可以对表T100进行SELECT。如果您能找到您的信息,则存在:P
像
这样的东西SELECT "just anything that fits your needs, with or without SINGLE
"UP TO 1 ROWS if you will not use the table's PK
FROM T100
INTO "field or fieldlist that fits your needs
WHERE ARBGB = "your ID
AND MSGNR = "your number.
"ENDSELECT. if you use UP TO 1 ROWS
IF sy-subrc = 0. "it exists
答案 1 :(得分:2)
VXLozano的答案是合适的,但可以通过提供语言字段并仅检索TEXT字段来提高性能。这样做可以让你添加" SINGLE"选项并加快您的邮件查询速度。
SELECT SINGLE TEXT
FROM T100
INTO dummyfield
WHERE SPRSL = SY-LANGU
AND ARBGB = "Your ID"
AND MSGNR = "your Number".
IF sy-subrc = 0.
"the requested message in the message class exists for your current language
ENDIF.