利用ejsExcel实现小程序表格套打功能
发布于 5 年前 作者 liaojun 2123 次浏览 来自 分享

由于业务需要,有好多将数据套打在固定表格的场景,之前通过node-xlsx将表单数据导入成excle文件然后导出打印,不过基本无法实现设置excel文件格式,或过于复杂,现在使用ejsExcel,先创建excel模板,然后将表单数据提交到模板后再生成新的文件,即可实现表格套打功能。
#一、创建云函数
具体创建方法这里不再赘述。
##1、安装ejsExcel依赖库
npm install ejsexcel
##2、引入文件
const cloud = require(‘wx-server-sdk’)
const ejsexcel = require(“ejsexcel”);
const fs = require(“fs”);
const util = require(“util”);
const readFileAsync = util.promisify(fs.readFile);
const writeFileAsync = util.promisify(fs.writeFile);
##3、编写业务代码

注意:坑
坑1:readFileAsync不能读取小程序云的数据存储,用了好多方法也没能成功,最后只能将模板文件写入云函数目录中。
坑2:同理writeFileAsync也不能将文件写入小程序云的数据存储,但又不能将生成的文件写入云函数目录,最后用小程序云存储API:uploadFile既然成功了。
#二、编写模板
##1、先设计好模板样式;
##2、编写数据填充

表格可以用<%forRow循环填充,我这里数据项比较少直接定位填充了。
#三、编写表单位提交代码

#**四、下载表格就可以实现文件套打了。

#建议
##1、完善PC端微信小程序,使用其能直接打开excel文件;
##2、增加小程序打印机API,实现直接套打,无需导入文件。

1 回复

请问下,那能否实现用手机微信小程序调用办公一体打印机进行EXCEL文件报表的打印啊?

回到顶部