日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

SAP二维码固定大小

發布時間:2024/1/18 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SAP二维码固定大小 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

引言

ABAP SMARTFORMS打印二維碼步驟參照此鏈接
如果讀者使用SAP內置的QECODE2005,遇到了因二維碼內容變化而導致二維碼大小變化的問題,這篇博客提供的方法僅供參考,如果有更好的方法歡迎留言補充。

解決方案

我的做法是首先計算出二維碼所放置內容的最大字符長度,如果當前所需放置長度不足最大字符長度,則使用空格補全至最大長度。
也就是說,如果我需要輸出二維碼的字符長度有:20,10,30,25,那么最大字符長度就是30,其余不滿足條件的用空格補足至30。
之所以用空格而不用別的字符,是因為掃描二維碼時只有空格在以下情況下會被忽略

  • 如果有10個空格在其他字符的最前面或者最后面,這10個空格會被忽略而無法被掃描出
  • 如果空格在中間,那么這10個空格只會被掃描出1個

所以我們使用空格在輸出字符的最前面或者最后面的方法是可行的,但是SAP系統是不能在字符后面加空格的(我試了很多方法都不行,只能在兩個字符中間或者字符前面),所以我在輸出字符的最前面補足了空格,以達到控制二維碼內容長度的目的。

問題示例

這是我最開始沒有用空格補足至72個字符長度的效果,可以看到兩個二維碼大小是不一致的。
第一個二維碼字符長度是31(D3#2000000000004/A4002021060010)
第二個二維碼字符長度是18(D3#3000000000003/1)

解決代碼

現在使用如下代碼對字符進行空格補全

DATA lv_len TYPE I. DATA: LV_SERNR LIKE GS_DATA-SERNR,LV_MATNR LIKE GS_DATA-MATNR. * 如果有前導零,會影響strlen的計數長度,要清空前導零,這里因為太占篇幅就沒有加上*計算當前輸出內容總長度lv_len = strlen( LV_MATNR ).lv_len = lv_len + strlen( LV_SERNR ).*拼接最后二維碼輸出的內容gv_data = 'D3#' && LV_MATNR && '/' && LV_SERNR.*我的情況下最多字符數=前綴+序列號+ '/ '+物料號 = 3 + 18 + 1 + 40 = 72DO ( 72 - lv_len - 4 ) TIMES."在字符最前面加空格補全至最大長度,string和char用以下方法都可以加空格CONCATENATE '' gv_data INTO gv_data SEPARATED BY ' '.ENDDO.

此時再在smartforms輸出后的效果如下,可以看見兩個二維碼掃描出來的內容長度是不一致的,但二維碼大小是相同的


后記------二維碼寬高和位置問題

至此,二維碼固定大小的問題得到了解決,但是此時還有兩個問題就是二維碼的寬高沒辦法設置定值,而且二維碼的位置也很奇怪。

二維碼寬高問題

二維碼寬高無法被直接設置成定值(我到處都找遍了也沒找到設置的方法,如果有請評論區留言分享),所以我只能用以下的方法進行估算寬高,這一步的前提是你的二維碼內容長度已經固定了
二維碼的寬高可以通過SE73的系統條形碼中二維碼的Modsize和Corrlev(容錯級別,二維碼產生部分污損,仍能被掃描出來的級別,級別越高二維碼越復雜)兩個屬性共同控制大小,建議多改動嘗試,找到一個合適的大小,可以在smartforms里畫一個定長的正方形,進行比對。
Tips:如果容錯級別設置成H,最嚴格的那一種,那么ModSize不宜太小,否則可能無法被掃描設備(如手機)掃描出來,如果ModeSize一定要設置的小一些,那么就選擇低級別的容錯級別

二維碼位置問題

這個位置也很難設置,像之前所展示的圖片中所示,二維碼到處跑,就不在我們給他塞的窗口里面,這一步的操作建議先完成上兩步
如果要修改他的位置,可以在smartforms的style當中,修改段落格式的左右邊距和行間距,慢慢調整至合適的效果

這是最后的成品圖,孩子已經很努力的在調整了,給我點個贊再走吧qaq

總結

以上是生活随笔為你收集整理的SAP二维码固定大小的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。