文章目录
- 前言
- 一、案例介绍/笔者需求
- 二、备份数据
- 三、数据处理转化
- `a.`EXCEL转为TXT注意事项
- `b.`EXCEL转为TXT
- 四、ABAP结合内表更新数据至透明表
- `a.`代码实现
- `b.`断点TXT上传至内表
- `c.`查看上传结果
- 五、总结
前言
这篇文章给大家介绍一下,EXCEL 中的数据如何快速上传插入到 SAP 的透明表当中去。在我们日常开发中可能对透明表的数据有更新删除的这些操作或者是在测试中需要使用透明表中的一些数据,而此时透明表的数据量不够 当我们使用 SE16N 去插入的时候效率比较慢,此时我们就可以将 EXCEL 中的数据上传至透明表。
一、案例介绍/笔者需求
我的这个开发需求是清理过期的透明表数据,因为要测试程序是否能按照需求删除数据,所以当我删了一遍之后 再想测试的时候 数据可能已经 没有了,所以我会先将系统中的透明表的数据备份至 EXCEL 然后当我删除之后我再将备份的数据恢复至透明表,这样就可以来回测 造数据就很方便了。
二、备份数据
这个不多介绍了 直接 se16n 查表 然后右击 直接导入为EXCEL就行了。
三、数据处理转化
首先我们需要将数据贴至 TXT 文件中,因为我们最终是使用 ABAP 结合内表来将数据上传插入到透明表中去的,而断点的时候给内表上传数据只能上传 TXT 文件,所以我们首先要将 EXCEL 贴到 TXT 中。
a.
EXCEL转为TXT注意事项
1.MANDT字段
我们的字段数据量必须和断点查看内表的字段数量一样,从SE16N导出的数据并没MANDT字段,这个字段我们要手动加到 EXCEL 里面去,反正就是断点中的内表有几个字段我们 EXCEL 就要有几列。
2.日期字段
如果有日期字段我们必须转为YYYYMMDD,不能是YYYY/MM/DD或者YYYY.MM.DD,根据编号123456一步一步操作即可。
3.中文字符
如果有中文字符我们必须将 TXT 文件编码格式保存为 ANSI 。 根据编号1234一步一步操作即可。
a.
下面是错误的编码格式上传至内表,可以看到中文字符已经乱码了,但是英文不受影响。
b.
正确的编码格式,上传之后中文字符正常
b.
EXCEL转为TXT
转为TXT的时候我们直接复制粘贴即可,但是不用复制表头。
复制之后直接在 TXT 中粘贴即可,如果有 TXT 有杂乱数据直接 Ctrl+A 全选再粘贴。
四、ABAP结合内表更新数据至透明表
a.
代码实现
代码实现很简单,根据透明表参考声明一个内表,然后再 根据 内表 MODIFY 这个透明表。
b.
断点TXT上传至内表
1.断点位置
在MODIFY的位置打一个断点,然后运行程序,进入断点界面之后双击我们声明的内表。
2.上传txt
根据编号12345一步一步操作
c.
查看上传结果
我们在数据上传至内表之后再执行 F6 的时候可以提前把 SY-SUBRC 的值放出来 再执行 MODIFY 的时候可以查看 SY-SUBRC 是否为 0 如果为 0 那么所有数据就被插入至透明表了。
五、总结
以上就是今天要讲的内容,本文仅仅简单介绍了如何使用EXCEL将大批量数据插入到透明表当中去,感觉笔者讲的好对自己有帮助的还麻烦点个免费的赞赞制作不易谢谢谢谢!!!如果有说错或者不好的地方还望大家提出来见谅。感觉笔者写的好的别忘了关注点赞加评论哦,也欢迎大家一起来讨论。谢谢!