方法1:文档链接:https://blogs.sap.com/2016/05/12/qr-code-or-2d-bar-code-in-sap/
如果sap 版本是722以上,则可以直接在se73 中选择system bar code 中 创建 qr code 2005即可使用。
唯一的问题是不支持中文
方法2:
https://blogs.sap.com/2014/02/24/%E7%94%A8abap%E7%94%9F%E6%88%90%E4%BA%8C%E7%BB%B4%E7%A0%81/
Create Program to Download the QR Code as BMP (image File)
Write the below code in the SE38 Program. This Program can download the QR Code as image (.bmp format) on your presentation system.
*YOTQR starts
*&———————————————————————*
*& Report YOTQR2 this program dirctly print BMP file of any barcode
*&
*&———————————————————————*
*&
*&
*&———————————————————————*
REPORT YOTQR.
PARAMETERS: barcode like tfo05-tdbarcode default ‘ZQRCODE’,
barcdata(50) type c lower case default ‘1234567890’,
filename type string LOWER CASE default ‘d:\1.bmp’.
DATA:errmsg(80) TYPE c,
bc_cmd LIKE itcoo,
bp_cmd LIKE itcoo,
bitmapsize TYPE i,
bitmap2_size TYPE i,
w TYPE i,
h TYPE i,
bitmap LIKE rspolpbi OCCURS 10 WITH HEADER LINE,
bitmap2 LIKE rspolpbi OCCURS 10 WITH HEADER LINE,
l_bitmap TYPE xstring,
otf LIKE itcoo OCCURS 10 WITH HEADER LINE.
PERFORM get_otf_bc_cmd IN PROGRAM sapmssco
USING barcode
barcdata
bc_cmd.
CHECK sy-subrc = 0.
bp_cmd-tdprintcom = ‘BP’.
PERFORM get_otf_bp_cmd IN PROGRAM sapmssco
USING barcode
bp_cmd-tdprintpar.
CHECK sy-subrc = 0.
PERFORM renderbarcode IN PROGRAM sapmssco
TABLES bitmap
USING bc_cmd
bp_cmd
barcdata
bitmapsize
w
h
errmsg.
CHECK sy-subrc = 0.
perform bitmap2otf IN PROGRAM sapmssco
tables bitmap
otf
using bitmapsize
w
h.
data length type i.
data hex type xstring.
data bitmap3 type xstring.
FIELD-SYMBOLS
clear: hex, bitmap3.
loop at otf.
length = otf-tdprintpar+2(2).
assign otf-tdprintpar+4(length) to
hex =
concatenate bitmap3 hex into bitmap3 in BYTE MODE.
endloop.
* convert from old format to new format
hex = ‘FFFFFFFF01010000’.
CONCATENATE bitmap3(8) hex bitmap3+8 into bitmap3 in BYTE MODE.
clear hex.
shift hex right by 90 places in BYTE MODE.
CONCATENATE bitmap3(42) hex bitmap3+42 into bitmap3 in BYTE MODE.
data bitmap4 type SBDST_CONTENT.
CALL FUNCTION ‘SCMS_XSTRING_TO_BINARY’
EXPORTING
buffer = bitmap3 ” xstring
TABLES
binary_tab = bitmap4.
data bitmap4_size type i.
bitmap4_size = xstrlen( bitmap3 ).
CALL FUNCTION ‘SAPSCRIPT_CONVERT_BITMAP’
EXPORTING
OLD_FORMAT = ‘BDS’
NEW_FORMAT = ‘BMP’
BITMAP_FILE_BYTECOUNT_IN = bitmap4_size
IMPORTING
BITMAP_FILE_BYTECOUNT = bitmap2_size
TABLES
bitmap_file = bitmap2
BDS_BITMAP_FILE = BITMAP4
EXCEPTIONS
NO_BITMAP_FILE = 1
FORMAT_NOT_SUPPORTED = 2
BITMAP_FILE_NOT_TYPE_X = 3
NO_BMP_FILE = 4
BMPERR_INVALID_FORMAT = 5
BMPERR_NO_COLORTABLE = 6
BMPERR_UNSUP_COMPRESSION = 7
BMPERR_CORRUPT_RLE_DATA = 8
BMPERR_EOF = 9
BDSERR_INVALID_FORMAT = 10
BDSERR_EOF = 11.
CALL METHOD cl_gui_frontend_services=>gui_download
EXPORTING
bin_filesize = bitmap2_size
filename = filename
filetype = ‘BIN’
CHANGING
data_tab = bitmap2[]
EXCEPTIONS
OTHERS = 3.
*YOTQR Ends