Excel上传失败,在剪切板有大量信息。是否保存其内容...

问题点

在导入 Excel 数据到 SAP 的时候,某些时刻系统会出现如下的弹窗。

  1. 上载 excel 文件时,您会收到错误:"剪贴板上有大量信息。XXX",Microsoft Office Excel 的弹出窗口显示以下信息:

剪贴板上存在大量信息。是否保留其内容,以便此后粘贴到其他程序中?

  • 要将其保存到剪贴板以便稍后粘贴,请单击"是"按钮。
  • 要从剪贴板中删除并释放内存,请单击"否"。

  1. 用于上载 excel 文件的功能模块为 "ALSM_EXCEL_TO_INTERNAL_TABLE"。

英文搜索:There is a large amount of the information on the clipboard. Do you want to be able to paste this information into another program later?

  • To save it on the Clipboard so that you can paste it later , click YES
  • To delete it from Clipboard and free memory, Click,NO.

主要原因是 SAP 的函数模块:ALSM_EXCEL_TO_INTERNAL_TABLE,这个函数模块在上传记录高于 9999 时,就会报这个错误。

解决方案

您想要在 SAP 中上载 excel 数据,并从 Microsoft Office Excel 获取剪贴板信息弹出窗口。弹出窗口是 Microsoft Excel 的一项功能。

官方的解决方法如下:

  1. 如果不再需要剪贴板,可以按"否"删除剪贴板。

  2. 关于功能模块 ALSM_EXCEL_TO_INTERNAL_TABLE,请仔细阅读附加的 SAP Note 933420,其中说明了该功能模块未释放供客户使用。

  3. 文本文件的解决方法:可以使用 GUI_UPLOAD。

  4. 联系您当地的 SAP 顾问,讨论您的业务应用场景和可能的解决方案

在实际测试中,可以通过以下方案进行逐个尝试:

方法一:使用注册表

ActiveClipboard (ACB) : Office 的一项功能,允许存储先前的副本,以便以后粘贴不同的先前副本。通常只有在向用户显示剪贴板任务窗格时,该功能才可用。您可以通过禁用自动收集来禁用导致问题最多的功能。

使用注册表禁用自动收集功能:

HKEY_CURRENT_USER\Software\Microsoft\Office\16.0\Common\General\ (REG_DWORD): AcbControl VALUE: (enter as hexadecimal) 80000000

注意:在设置 AcbControl 之前,必须关闭所有 Office 应用程序(包括 Outlook 等),任务管理器中没有正在运行的实例。否则,当这些应用程序关闭时,它们会将密钥写回到这些应用程序启动时的状态。

方法二:关闭 Excel 剪贴板收集功能

方法三:通过调试功能去执行

在调用这个函数模块的后面打个断点,然后按 F8 执行,也能成功读取 Excel 数据:

方法四:更改代码,遇到读取为空,重复读取

ini 复制代码
 "Clear Clipboard  
 DO 10 TIMES.    
     CLEAR excel_tab.    
     cl_gui_frontend_services=>clipboard_export( 
         IMPORTING data = excel_tab 
         CHANGING rc = ld_rc ) .    
      CLEAR excel_tab.    
      
      cl_gui_frontend_services=>clipboard_import( 
          IMPORTING data = excel_tab ). "read clipboard    
          
       IF excel_tab IS INITIAL.      
           EXIT .    
        ENDIF.    
        
        WAIT UP TO 1 SECONDS.  
   ENDDO.

方法五:ABAP2XLSX 开源项目

这里不多过于介绍,后面会有一篇专门的文章。

参考链接:

相关推荐
毕业设计制作和分享25 分钟前
springboot150基于springboot的贸易行业crm系统
java·vue.js·spring boot·后端·毕业设计·mybatis
你的人类朋友5 小时前
【Node】认识multer库
前端·javascript·后端
lang201509286 小时前
Spring Boot 官方文档精解:构建与依赖管理
java·spring boot·后端
why技术7 小时前
从18w到1600w播放量,我的一点思考。
java·前端·后端
间彧7 小时前
Redis Cluster vs Sentinel模式区别
后端
间彧7 小时前
🛡️ 构建高可用缓存架构:Redis集群与Caffeine多级缓存实战
后端
间彧7 小时前
构建本地缓存(如Caffeine)+ 分布式缓存(如Redis集群)的二级缓存架构
后端
程序猿DD9 小时前
Java 25 中的 6 个新特性解读
java·后端
稻草猫.9 小时前
文件 IO
java·笔记·后端·java-ee·idea
掘金码甲哥9 小时前
有关CORS跨域访问,这事没完
后端