SAP ABAP EXCEL 下载模板并导入(数据批导)
文章目录
前言
在业务中我们经常会使用 EXCEL 导入手工数据到 SAP
为简化各业务操作做数据准备
例如:主数据的创建、采购申请、采购订单的创建、销售订单的创建、会计凭证的创建等等
流程大致如下:
- 上传 EXCEL 模板到 SAP
- 用户下载 EXCEL 模板
- 用户填充好数据后导入 SAP
上传 EXCEL 模板
下载 EXCEL 模板的前提是已经将模板存入了系统中
一般我们通过事务码SMW0
将模板上传到系统
执行事务码 SMW0 后选中 “WebRFC应用程序的二进制数据” 点击执行后填写所要上传的包
执行后点击 “新建” => 输入对象名称和描述后 => 上传模板文件
下载 EXCEL 模板
定义屏幕
SELECTION-SCREEN FUNCTION KEY 1.
这是在屏幕的执行按钮后的位置添加一个功能按钮
同理也可以是 FUNCTION KEY 2, 3 …
初始化设置
TABLES: sscrfields.
INITIALIZATION.
` sscrfields-functxt_01 = '模板下载'.
在INITIALIZATION
事件中给sscrfields-functxt_01赋值就是给上述添加的功能按钮设置按钮文本
这样用户能更好地使用我们的功能
点击按钮后触发下载功能
当用户点击屏幕功能按钮 “模板下载” 的时候 我们需要用户选择文件的保存路径并执行从模板库下载模板的功能
也就是在 sscrfields-ucomm EQ 'FC01'
时弹出文件保存框,提示用户选择保存路径
后执行下载功能
我们调用FM 'GUI_FILE_SAVE_DIALOG'
获取用户填入的文件保存路径以及用户选择的“保存”或“取消”功能
当用户选择“保存”时 执行下载功能
AT SELECTION-SCREEN.
DATA: gv_name TYPE string,
gv_file TYPE string,
gv_user_action TYPE i.
IF sscrfields-ucomm EQ 'FC01'.
gv_name = '下载模板'.
CALL FUNCTION 'GUI_FILE_SAVE_DIALOG'