WPS AirScript脚本合集(九):多维表格点击按钮即刻生成草料二维码
一、草料二维码
1.1 平台展示
首先认识一下草料二维码这个平台。指路👉跳转草料二维码平台https://cli.im/,然后登录帐号进入后台;
这里讲解的是静态码,不是活码哦~
点击新建标签样式,在跳转页面里可以选择自己喜欢的样式进行制作,这里就直接使用已经制作好的标签来演示咯。
1.2 标签样式细节
先来看看具体的样式细节,对应的标签logo与背景大家自行上传图片和调整样式,二维码设置也可以自定义。
这里就重点来看下编辑字段,内容如下:
点击“可变内容管理”,内容字段使用情况如下:
二维码编码内容,是指扫描后看到的内容;
标题1显示未插入,主要是因为标题一无可变内容,所以该文本没有使用;
标题2被删除了,同样也是未插入;
图片字段有使用到,本名字段使用的是文本3,外文名字段使用的是文本4,出生日期字段使用的是文本5,代表作字段使用的是文本6,职业字段使用的是文本7
大家需要关注对应的字段使用的文本序号哦,后面接口测试和脚本编写有大用场😜
1.3 API接口
我们需要调用API进行制作,先来看下一些基本参数信息,点击“调用API制作”按钮。
记住样式编号是D6以及对应的API KEY,这里不做动态加签,选择关闭。
那如何调用草料二维码API制作标签呢?我们来学习下官方给的接口文档,点击“查看API接口文档”按钮。
前面是基本的功能说明,重点看下接口调用说明:
1、基本的URL是 https://open-api.cli.im/cli-open-platform-service/v1/labelStyle/createWithKey;
2、请求方式是GET;
3、对应的请求参数如下;
cliT是标签样式编号;
cliD对应二维码动态内容,也就是刚刚看到的二维码编码内容;
API KEY是用户帐号API KEY;
此教程不做动态加签,所以sign参数可以不用传;
return_file是返回的图片类型;
cliF是文本字段,cliF1对应第1个文本,cliF2对应第2个文本,以此类推;
cliP是图片字段,同样道理,cliP1对应第1张图片,cliP2对应第2张图片。
接口文档后面的案例大家自行观看学习下,这里就不展开讲解了。
二、APIFOX接口调用演示
2.1 环境设置
在编写脚本前,我们先来测试下草料二维码API接口的请求情况,这里就使用API FOX平台进行演示。
目前是在体验环境下进行接口调试,体验环境的前置URL设置的是https。
2.2 接口请求参数填写
在GET请求后面补充完整的草料二维码API调用的URL,前面草料二维码官方接口文档有给出具体地址。
我们结合标签样式字段设置内容和平台接口文档请求参数来对应看下:
cliT是指样式编号;
cliD是二维码动态内容;
api_key是用户帐号API KEY;
cliP1是图片,这里传入对应图片的网络地址;
cliF1和cliF2虽然没有插入文本可变内容,但是参数依然要传,可以传空值;
cliF3、cliF4、cliF5、cliF6、cliF7对应传输第3、4、5、6、7个文本参数。
填写的参数名需要标签样式字段设置和平台接口文档请求参数对应正确。
2.3 接口响应定义
因为接口返回的是一张图片,所以响应定义要改为XML的PNG格式。
2.4 接口请求测试
点击发送看下返回响应,校验响应显示200,表示成功。
参数值为本名的显示在本名字段,参数值为外文名的显示在外文名字段,目前看参数传入正确。
如果我们不传入cliF1和cliF2,会怎么样呢,让我们来试试看,结果显示如下:
参数值为出生日期的显示在本名字段,参数值为代表作的显示在外文名字段,内容显示顺序错乱。
这是因为不传入cliF1和cliF2后,cliF3作为第1个文本参数传入,cliF4作为第2个文本参数传入,而cliF5、6、7作为第3、4、5个文本参数传入。
由于样式没有使用插入第1个和第2个文本字段,所以即使传入参数也不会显示。
而cliF5作为第3个文本参数传入,被本名字段使用,所以出现在本名的后面。
一共有7个文本字段,但只传入5个文本参数,所以职业和代表作参数值为空,没有内容显示。
所以第1个文本和第2个文本虽然未使用,但还是要传参数的。
额外说明一点,我们这里点击发送,调用API进行创建标签,对应的在草料二维码平台也可以看到具体的标签样式哦~
三、多维表自动化流程制作
3.1 多维表格数据表字段设置
草料二维码标签API接口参数中标签编号是固定的,apikey也是,其余cliD和cliP、cliF1...都是可变的,数据表可以建立对应的字段,具体设置如下:
数据表名:SVT员工工牌
字段设置:
字段名称:cliD二维码编码内容 - 字段类型:文本 - 禁止录入重复值:否 - 默认值:无
字段名称:cliP1图片 - 字段类型:图片和附件 -显示样式:已缩略图样式显示 - 图片上传方式:无需勾选 仅可通过移动端拍摄上传
字段名称:cliF3本名 - 字段类型:文本 - 禁止录入重复值:否 - 默认值:无
字段名称:cliF4外文名 - 字段类型:文本 - 禁止录入重复值:否 - 默认值:无
字段名称:cliF7职业 - 字段类型:文本 - 禁止录入重复值:否 - 默认值:无
字段名称:cliF5出生日期 - 字段类型:文本 - 禁止录入重复值:否 - 默认值:无
字段名称:cliF6代表作 - 字段类型:文本 - 禁止录入重复值:否 - 默认值:无
字段名称:点击生成 - 字段类型:按钮 - 执行操作:点击按钮时,触发执行AirScript脚本 - 执行成功的提示:ψ(`∇´)ψ请查收员工工牌 - 按钮名称:点击按钮 - 按钮颜色:蓝色
字段名称:员工工牌 - 字段类型:图片和附件 -显示样式:已缩略图样式显示 - 图片上传方式:无需勾选 仅可通过移动端拍摄上传
3.2 AirScript脚本说明
具体的AirScript脚本内容如下:
const recordid = Context.argv.recordid || Application.Selection.GetSelectionRecordIds()[0][0]
console.log(recordid)
let cliT = "D6"
let cliD =Application.Sheets("SVT员工工牌").RecordRange(recordid,"@cliD二维码编码内容").Value
let cliP1 = Application.Sheets("SVT员工工牌").RecordRange(recordid, "@cliP1图片").Value.Value[0].ThumbnailsUrl
console.log(cliP1)
let cliF3=Application.Sheets("SVT员工工牌").RecordRange(recordid,"@cliF3本名").Value
let cliF4=Application.Sheets("SVT员工工牌").RecordRange(recordid,"@cliF4外文名").Value
let cliF7=Application.Sheets("SVT员工工牌").RecordRange(recordid,"@cliF7职业").Value
let cliF5=Application.Sheets("SVT员工工牌").RecordRange(recordid,"@cliF5出生日期").Value
let cliF6=Application.Sheets("SVT员工工牌").RecordRange(recordid,"@cliF6代表作").Value
let url = `https://open-api.cli.im/cli-open-platform-service/v1/labelStyle/createWithKey?api_key=用户帐号APIKEY自行修改&cliT=${cliT}&cliD=${cliD}&cliP1=${cliP1}&cliF1=0&cliF2=0&cliF3=${cliF3}&cliF4=${cliF4}&cliF5=${cliF5}&cliF6=${cliF6}&cliF7=${cliF7}`;
console.log(url)
const fileList = []
fileList.push({fileData:url, fileName:`${cliF3}.png`})
console.log(fileList)
Application.Sheets("SVT员工工牌").RecordRange(recordid,"@员工工牌").Value = DBCellValue(fileList)
console.log(DBCellValue(fileList))
代码可以结合WPS开放平台的开发指南(指路https://open.wps.cn/documents/app-integration-dev/guide/self-app/summary.html)进行理解,大家可以根据实际应用情况进行修改;
AirScript脚本在脚本编辑器内运行输出结果如下:
3.3 自动化流程设置
自动化流程设置如下,在第2步执行AirScript脚本需设置传入参数 行记录ID
最后来看下使用效果,点击按钮一键生成二维码标签,同时草料二维码平台也生成了对应的标签。
流程演示视频可跳转文章链接https://mp.weixin.qq.com/s/sROfxoiQ5bD5rDe3gpCqdg进行观看~