Skip to content

通过脚本将excel转换为pdf

背景

目前数据表有一个附件字段为excel文件,需要通过点击按钮将附件字段转换为pdf文件并且上传到对应字段中。

实现原理

通过脚本informat.storage.convertFormat(sourcePath,targetPath,setting)接口将Excel转换为pdf后,
把转换后的文件上传保存至对应数据表字段路径中。

参考文档:文档格式转换

实现步骤

我们现在可以通过以下方式实现该功能:

  • 在表单内创建调用自动化按钮 img_2.png
  • 在自动化中创建代码片段步骤
  • 最后点击转换后验证上架结果

实现代码

javascript
const record = automatic.getVar('record');

const pdfFileId = informat.utils.randomUUID().replaceAll('-', '') +'.pdf';

const filePath = informat.storage.getFilePath('tab', 'pdf', pdfFileId);
informat.storage.convertFormat(
    record.excel.path, filePath,
    {
        'fileType': 'xlsx',
        'outputtype': 'pdf',
        'title': 'example.pdf',
    }
);
// 定义附件对象
const targetAttachment = {
    id: pdfFileId,
    name: 'example.pdf',
    path: filePath
}
// 更新pdf附件字段
informat.table.update('tab', {id: record.id, pdf: targetAttachment});

总结

通过以上示例,可以简单通过少量参数配置将Excel转换为Pdf。
根据以上的示例还可以进行延伸,将excel转换为png、将docx文件转换为pdf等。