嗨,云店,社区,
这篇博文是和我的同事Rabindra Prasad一起起草的,关于GST印度电子发票的二维码显示在脚本和智能窗体上,因为许多开发人员在显示正确的二维码方面面临问题。
请按照以下步骤按预期显示。
在大多数情况下,现有表格将被修改以适应二维码和其他IRN细节。本博客旨在满足上述要求。
第1步:
借助basis实施以下SAP注释:
2880604–GST India:非集成解决方案的IRN数据字典活动
第2步:
成功实施注释并从NIC门户更新J ig; u INVREFNUM表中的IRN详细信息后,请在中创建智能样式SE73获取二维码。
a.选择系统条形码,点击"更改"按钮。
b.点击"创建"按钮。
点击"新建"并按照以下步骤操作。
在这里我们可以根据需要调整模块大小。
点击"确定"并保存在您的TR中。如下图所示:
创建二维码样式。
注意:SE73中创建的二维码将独立于客户端。
步骤3:
挑战:
NIC门户提供的签名二维码通常超过900个字符,智能表单或脚本无法在表单中的单个文本变量中容纳整个二维码字符串,因为它具有可容纳255个字符。
解决方案:
智能表格:
1。将您的二维码字符串分隔为字符串类型的多个变量。
示例:
二维码1字符串类型,qr\ U code2类型字符串,qr\ U code3类型字符串,qr\ U code4类型字符串,大数据局,LVU迭代类型i,i型lv\ U计数,世界人工智能,lv\U余数\U字符类型i.
lv\U迭代=lv\U计数DIV 255。lv\u迭代=lv\u迭代+1。lv\u remains\u char=lv\u count MOD 255。执行lvu迭代次数。病例sy指数。当1。如果lvu迭代方程1。qr\U code1=ls\U irn\U数据签名\U qrcode+0(LV\U余数\U字符)。否则。qr\U编码1=ls\U irn\U数据签名\U qrcode+0(255)。结束。当2。如果lvu迭代方程2。qr\U代码2=ls\U irn\U数据签名\U qrcode+255(LV\U余数\U字符)。否则。qr\U编码2=ls\U irn\U数据签名\U qrcode+255(255)。结束。当3。如果lvu迭代公式3。qr\U代码3=ls\U irn\U数据签名\U qrcode+510(LV\U余数\U字符)。否则。qr\U编码3=ls\U irn\U数据签名\U qrcode+510(255)。结束。当你4岁的时候。如果lvu迭代方程4。qr\U编码4=ls\U irn\U数据签名\U qrcode+765(LV\U余数\U字符)。结束。ENDCASE.ENDDO.
通过您的驱动程序将这些变量传递给您的智能窗体或获取二维码并在您的智能窗体中应用上述逻辑。
名称:ZQRCODE
3。使用Tcode创建标准文本:SO10
注意:SO10文本依赖于客户端。
4.在智能窗体布局中创建2X2 CM的窗口,并在常规属性选项卡中提供创建的SO10文本,如下:
文本名称:ZQRCODE
5。在"输出选项"页签中,保持您的样式。
样式:ZQRCODE
激活您的逻辑,QRCODE将按预期打印。
*-----------------------------------------*
脚本
1。编写与上述相同的隔离逻辑,全民淘客,并调整驱动程序。
2。根据您的要求制作2X2 CM的窗户。
3。创建二维码段落格式:
4。为二维码创建字符格式,并提供系统条形码,系统条形码以Tcode:SE73
5创建。编写脚本逻辑如下:
激活你的逻辑,二维码将按预期打印。
C结论:-
通过这篇文章,我们提供了将大字符串分隔为小字符串的过程,以及在现有SAP脚本和SAP智能表单上适当采取的操作,以显示可读的QR代码。
还确保QR代码独立于客户端,因此它将在连接中反映相同的内容测试客户端也是如此,云服务器怎么用,SO10文本依赖于客户端,因此您需要在测试客户端中单独创建。
如果这解决了您的问题,请随时发表评论,如果需要任何帮助,请告诉我们。
如果您觉得这篇博文有用,请不要忘记奖励积分。