如何用postman进行批量操作
业务场景:
有些时候,我们会需要批量的将SAP B1系统中的几千条的数据删除或者取消单据,这个时候,一条条去操作,指定是到猴年马月了。SAP Business One本身提供了DTW这个工具,但是这个更新,可以操作新增、更新数据,不能删除和取消数据,所以当想要删除和取消数据的时候,就没办法了。
解决方案:
SAP Business One在10.0之后,SqlServer版本也提供了Service Layer接口,我们可以通过postman批量进行操作了。
1、打开postman,从官网自己下载postman即可。
2、在postman当中,新建一个的Blank collection,然后可以将其进行重命名。记得新建一个变量,我这里给命名了Code,所有的操作一定要记得save保存一下。
3、然后添加接口信息,选择刚刚新添加的Blank collection后面的三个点,选择Add request。
PS:最起码需要有俩接口,一个是SAP的登录接口,一个是要需要或者删除的接口。具体接口信息可以从SAP网站里面查询(Service Layer API Reference);也可以从自己的服务器里查询,只要安装了Service Layer服务(https:IP//:50000/Service%20Layer%20API%20Reference.html)
4、将对应的登录接口加进去,登录接口地址,使用POST方法,在Body里加进去对应的登录信息。
CompanyDB | SAP的账套 |
Password | SAP的账套的登录密码 |
UserName | SAP的账套的登录用户 |
Language | 语言中文是15,加了之后后续的一些报错可以以中文展示 |
5、然后试着登录一下,将登录成功的状态记录一下,然后放到Scripts里,比如这个登录是200OK,那就200放到status(200)里,这里做为后面判定接口是否执行成功的依据。操作完成了一定记得save一下。
6、从接口文档里查询对应的删除接口,比如我要删除物料主数据,这里显示需要使用delete,然后加主键。
7、我们在postman里将这个方法放进去。这个地方需要输入对应的变量,用{{}}大括号给括起来,SAP接口文档里显示需要用单引号,所以我们也记得要用单引号。这个Scripts里的内容我已经测试了是204,所以我就直接填写了,别的接口,需要自己先用一条数据测试下,看看成功的状态是多少。
8、这个时候需要用Excel整理一份待删除的数据,只需要整理主键就可以了。Excel中的列名,要和变量名一致。比如有以下几条数据需要删除,然后另存为CSV的格式。
Code |
Z00003 |
Z00004 |
Z00005 |
Z00006 |
9、然后在postman当中,run一下。
10、选择对应的文件,然后运行。
11、然后就会显示对应的结果,这个结果的判定,就是咱们上面每个接口里录入的Scripts的status。
备注:操作每一步,一定要Save一下。