Два других ответа дали мне вместе ценные подсказки, чтобы сделать это (+1).Но оба упустили некоторую точность и фрагменты кода, поэтому я подытожил все это в своем ответе.
с использованием cl_bcs
DATA gr_send_request TYPE REF TO cl_bcs.
DATA emailid LIKE soodk.
gr_send_request = cl_bcs=>create_persistent( ).
" ...
CALL METHOD gr_send_request->send(EXPORTING i_with_error_screen = 'X'
RECEIVING result = gv_sent_to_all ).
IF gv_sent_to_all = 'X'.
emailid = gr_send_request->send_request->doc_wrapper_id( ).
ENDIF.
SOODK
(не sood) - структура, содержащая три компонента (OBJTP
, OBJYR
, OBJNO
), которые вместе являются ключом в таблице SOOD
.
с использованием SO_NEW_DOCUMENT_SEND_API1
DATA LT_OBJECTID TYPE SOFOLENTI1-OBJECT_ID.
CALL FUNCTION 'SO_NEW_DOCUMENT_SEND_API1'
EXPORTING
DOCUMENT_DATA = LT_MAILSUBJECT
DOCUMENT_TYPE = 'HTM'
IMPORTING
new_object_id = lt_objectid
" ...
lt_objectid
(SOFOLENTI1-OBJECT_ID
) - это char (17), которая содержит составную SOODK
структуру OBJTP+OBJYR+OBJNO
.При разделении на части его можно использовать для поиска записи в таблице SOODK
.(Я не нашел его в BCST_SR-SCOM_KEY
, но в этом не было необходимости.)