在ABAP中的 CLASS :CL_GUI_FRONTEND_SERVICES中提供了两个方法来控制与剪贴板内容的导入导出,分别是:CLIPBOARD_EXPORT和CLIPBOARD_IMPORT。
CLIPBOARD_EXPORT是将一个内表的内容导入到剪贴板中
DATA LENGTH TYPE i.
TYPES:BEGIN OF TYP_itab ,
line(200) TYPE c ,
END OF TYP_itab.
DATA: LI_ITAB TYPE TABLE OF TYP_itab,
LS_ITAB TYPE TYP_itab.
LS_ITAB-line = ‘This is a test for abap’.
APPEND LS_ITAB to LI_ITAB.
CALL METHOD cl_gui_frontend_services=>clipboard_export
IMPORTING
data = LI_ITAB
CHANGING
rc = LENGTH
- EXCEPTIONS
- CNTL_ERROR = 1
- ERROR_NO_GUI = 2
- NOT_SUPPORTED_BY_GUI = 3
- others = 4
.
IF sy-subrc <> 0. - MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
- WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
CLIPBOARD_IMPORT是将剪贴板中的内容导入到一个定义好的内表当中
DATA LENGTH TYPE i.
TYPES:BEGIN OF TYP_itab ,
line(200) TYPE c ,
END OF TYP_itab.
DATA: LI_ITAB TYPE TABLE OF TYP_itab,
LS_ITAB TYPE TYP_itab.
CALL METHOD cl_gui_frontend_services=>clipboard_import
IMPORTING
DATA = LI_ITAB
LENGTH = LENGTH
- EXCEPTIONS
- CNTL_ERROR = 1
- ERROR_NO_GUI = 2
- NOT_SUPPORTED_BY_GUI = 3
- others = 4
.
IF sy-subrc <> 0. - MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
- WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
write:‘Total:’ ,LENGTH ,’ lines’.
loop at LI_ITAB into ls_itab.
write / ls_itab-line.
endloop.