代码如下:
DATA : url TYPE string, "地址
dtitle TYPE string. "标题
DATA msg TYPE string .
DATA answer .
DATA lines TYPE string .
DATA folder_id TYPE sofdk .
DATA lt_objhead TYPE STANDARD TABLE OF soli .
DATA lt_objcont TYPE STANDARD TABLE OF soli WITH HEADER LINE .
DATA l_obj_id TYPE soodk .
DATA l_obj_data TYPE sood1 .
DATA document_id TYPE sofmk .
DATA rel_doc TYPE borident .
DATA is_object TYPE borident .
DATA l_index TYPE sy-index .
CLEAR :msg ,answer , lines ,folder_id ,lt_objhead ,lt_objcont ,lt_objcont[] ,l_obj_id ,l_obj_data ,document_id ,is_object ,rel_doc ,l_index .
SELECT SINGLE * INTO @DATA(gs_out)
FROM bkpf
WHERE bukrs = '1000'
AND gjahr = '2023'
AND belnr = '0900000639'.
CALL FUNCTION 'SO_FOLDER_ROOT_ID_GET'
EXPORTING
region = 'B'
IMPORTING
folder_id = folder_id
EXCEPTIONS
OTHERS = 1.
DATA ls_objcont TYPE soli.
DATA lt_urltab TYPE STANDARD TABLE OF sood-objdes.
DATA l_tab_size TYPE i.
DATA l_url_id TYPE so_url.
l_url_id = url.
CONCATENATE '&KEY&' 'WWW.BAIDU.COM'INTO ls_objcont.
l_obj_data-objdes = dtitle. "内容的简短描述
WHILE NOT l_url_id IS INITIAL.
CONCATENATE '&KEY&' l_url_id(250) INTO ls_objcont.
l_obj_data-objdes = dtitle.
APPEND ls_objcont TO lt_objcont.
SHIFT l_url_id LEFT BY 250 PLACES.
ENDWHILE.
l_obj_data-objsns = 'O'.
l_obj_data-objla = sy-langu.
IF dtitle IS INITIAL.
SPLIT url AT '/' INTO TABLE lt_urltab.
DESCRIBE TABLE lt_urltab LINES l_tab_size.
READ TABLE lt_urltab INDEX l_tab_size INTO dtitle.
ENDIF.
CALL FUNCTION 'SO_OBJECT_INSERT'
EXPORTING
folder_id = folder_id
object_type = 'URL'
object_hd_change = l_obj_data
IMPORTING
object_id = l_obj_id
TABLES
objhead = lt_objhead
objcont = lt_objcont
EXCEPTIONS
active_user_not_exist = 35
folder_not_exist = 6
object_type_not_exist = 17
owner_not_exist = 22
parameter_error = 23
OTHERS = 1000.
IF sy-subrc = 0.
document_id-foltp = folder_id-foltp.
document_id-folyr = folder_id-folyr.
document_id-folno = folder_id-folno.
document_id-doctp = l_obj_id-objtp.
document_id-docyr = l_obj_id-objyr.
document_id-docno = l_obj_id-objno.
CLEAR rel_doc .
rel_doc-objkey = document_id .
rel_doc-objtype = 'MESSAGE' .
CONCATENATE gs_out-bukrs gs_out-belnr gs_out-gjahr INTO is_object-objkey .
is_object-objtype = 'BKPF' .
CALL FUNCTION 'BINARY_RELATION_CREATE'
EXPORTING
obj_rolea = is_object
obj_roleb = rel_doc
relationtype = 'URL' "'NOTE'
EXCEPTIONS
OTHERS = 1.
IF sy-subrc = 0 .
WRITE :/ 'Line ' , l_index , 'updated FI Document Note successfully' .
COMMIT WORK .
ELSE .
WRITE :/ 'Line ' , l_index , 'updated FI Document Note successfully' .
ENDIF .
CLEAR :lt_objhead ,lt_objcont ,lt_objcont[] ,l_obj_id ,l_obj_data ,document_id ,is_object ,rel_doc ,l_index .
CLEAR gs_out .
ENDIF.
结果如下: