【轉載】 SAP 列印二維碼 QR Code or 2D Bar Code in SAP
S4 不需要打NOTE,測試通過。
https://blogs.sap.com/2016/05/12/qr-code-or-2d-bar-code-in-sap/
Step 1: Upgrade the Kernel if Required
Log in to the SAP >> SAP Easy Access Screen >> System Menu >> Status
Now, Click on the component to check the SAP_BASIS release 731
Close the pop-up dialog and click on the arrow button. The Kernel Version Should be 321 or superior. If it is not then ask your Basis Team to upgrade it.
Step 2: Implement SAP Note 2029824
Ask the Developer to implement the note
2029824 – Support for QR code and data matrix bar code
Step 3: SAP Script Font Maintenance
After successful implementation of the SAP Note. Go to Transaction SE73.
Click on System Bar Code option and Click on Change.
Click on Create(F5).
Click on New (new Barcode Technology)
Define the Name and Description of the Bar code.
Select Bar Code Symbology as “QR Code 2005” and Click OK. Select Alignment as “Normal”
Choose Mode, Module Size, Error Correction Level (Refer the SAP note 2030263 for further information)
Mode:
A – AUTOMATIC
N – NUMERIC
L – ALPHANUMERIC
B – BYTE_LATIN1
K – KANJI
U – BYTE_UTF8
1 – FNC1_POS1 (FNC1 in first position)
2 – FNC1_POS2 (FNC1 in second position)
Module Size: Numeric User Entry
Error Correction Level:
L – 7 % Error Correction capability
M – 15% Error Correction capability
Q – 25% Error Correction capability
H – 30% Error Correction capability
Save the Bar Code Definition. Select the same and Test.
Step 4: 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 <fs> type x.
clear: hex, bitmap3.
loop at otf.
length = otf-tdprintpar+2(2).
assign otf-tdprintpar+4(length) to <fs> casting.
hex = <fs>(length).
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
Step 5: Create Smartstyle for QR Code
Define your Smartstyle as below screenshots
Define the QR Code in Character Format as below Screenshot
Step 6: Use SmartStyle in SmartForm
Define the smartstyle in the form attributes as per the below screenshot
Define Text as below screenshots. Caution: keep the <c1> (small letters) not <C1> (capital Letters) otherwise QR code will not get Printed)
in this example, I’ve used material Number to be encoded in QR Code.
Test The SmartForm
We can use the same procedure to include the QR code on your SmartForms.
This Bar Code can encode up to 255 characters (it is the limit).But, I think, 255 characters enough.
Using this you can shrink the size of your label. You can encode the address information as QR Code and save the space on the form for more details and many more.
相關文章
- QR Code二維碼
- 使用ABAP建立QR Code(二維碼)
- 使用ABAP程式碼生成二維碼(QR Code)
- Python 生成條形碼、二維碼 (Code 128、EAN-13、QR code等)Python
- SAP Tcode for Maintain Tax Code - FTXPAI
- 什麼是 SAP Spartacus UI 的 code deprecationUI
- SAP 物料主資料裡的commodity code
- SAP ABAP CGLIB(Code Generation Library)的模擬實現CGLib
- SAP ABAP應用伺服器的HTTP響應狀態碼(Status Code)伺服器HTTP
- 兩種找出SAP UI Code List配置位置的小技巧UI
- Code Runner for VS Code,下載量突破 3000 萬!
- SAP ABAP關鍵字語法圖和ABAP程式碼自動生成工具Code Composer
- SAP MM T-code MD04的使用,是有前提的!
- Amazing QR!一款 Python 二維碼生成器!Python
- 如何手動下載並安裝 Visual Studio Code 的 SAP Fiori tools - Extension Pack 擴充套件套件
- 按需載入(code spliting)
- 簡單易用的二維碼掃描工具:QR Capture for MacAPTMac
- 【轉載】傳送SAP附件到 WEBSERVICE介面(二進位制)Web
- JavaScript Source Code對映引起的一個SAP C4C程式碼除錯問題JavaScriptC程式除錯
- 使用 Visual Studio Code SQLite 擴充套件來瀏覽 SAP CAP 資料庫SQLite套件資料庫
- 【轉載】【EF Core】Code first 之使用新資料庫資料庫
- Code128編碼
- 如何在SAP WebClient UI裡建立柱狀圖(bar chart)WebclientUI
- 小巧實用的二維碼製作生成工具:QR Creator PRO Mac版Mac
- 列印SAP Spartacus generic link指向的url
- VS Code 中的增強 code CLI
- 標量碼與向量碼(Scalar code & Vector code)及一些後續知識
- SAP freelancer接SAP專案應有底線思維
- Code Runner for VS Code,下載量突破 4000 萬!支援超過50種語言
- code ReviewView
- pycharm最新code碼,分享給大家PyCharm
- 程式碼整潔之道 clean code
- VS Code除錯C程式碼除錯C程式
- 在 Visual Studio Code (VS Code) 中設定
- 二分搜尋樹系列之[特性及完整原始碼-code]原始碼
- 二分搜尋樹系列之「特性及完整原始碼-code」原始碼
- VS Code外掛開發介紹(二)
- 逆向基礎 Finding important/interesting stuff in the code (二)ImportREST