在SAP中没有Blog之类的二进制字段,来存放文件。可以用LRAW的类型,但创建的表有特殊规定。
表ZTFILE:
MANDT MANDT CLNT 3 0 KEY
MRELID SYCHAR02 CHAR 2 0 SYST的CHAR02数据元素 KEY
ZTID ZTID CHAR 10 0 标识 KEY 自定义
SRTF2 SYBIN1 INT1 3 0 SYST的BIN1数据元素 KEY
ZFILETYPE ZFILETYPE CHAR 3 0 文件类型 自定义
ZOPTER ZOPTER CHAR 12 0 操作用户 自定义
ZTEXT CHAR100 CHAR 100 0 字符100 自定义
DATUM DATUM DATS 8 0 日期 自定义
TIME TIME CHAR 6 0 CHAR 格式时间 自定义
CLUSTR SYBIN2 INT2 5 0 SYST的BIN2数据元素
CLUSTD ZDATA LRAW 3800 0 文件内容 必须放在最后
代码:
DATA: BEGIN OF TAB OCCURS 10,
LINE(255),
END OF TAB.
CALL FUNCTION 'WS_UPLOAD'
EXPORTING FILENAME = FILENAME
FILETYPE = 'BIN'
IMPORTING FILELENGTH = FILELENGTH
TABLES DATA_TAB = TAB
EXCEPTIONS CONVERSION_ERROR = 1
FILE_OPEN_ERROR = 2
FILE_READ_ERROR = 3
INVALID_TYPE = 5
NO_BATCH = 6
UNKNOWN_ERROR = 7.
EXPORT %TA FROM TAB %L
FROM FILELENGTH
TO DATABASE ZTFILE(%O) ID 'XLS1' FROM CDATA.
详细内容可以参照EXPORT的帮助。