需将清洗后的CSV/JSON数据上传至扣子知识库并启用自动更新,复制知识库ID;在工作流中配置Webhook触发器、PDF生成(含Logo)及邮件发送节点,发布后用Webhook URL自动触发全流程。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

你需要把数据库导出的JSON或CSV表格,自动生成带公司Logo和固定格式的PDF报告,并立刻发给客户邮箱——整个过程不想手动点任何按钮,只要数据一就位,PDF就生成、邮件就发出。
准备结构化数据源
确保你的数据已清洗完毕,字段名不含空格和中文标点,例如用 order_id 而非 “订单编号”;CSV必须用UTF-8编码保存,否则后续PDF中会出现乱码。
将数据文件(.csv 或 .json)上传到扣子知识库 → 选择「结构化数据」类型 → 勾选「启用自动更新」→ 点击「保存并同步」。
【知识库ID必须复制留存】 后续流程节点需手动填入该ID,丢失后无法关联数据源。
搭建自动化工作流
进入扣子「工作流」→ 新建空白工作流 → 拖入「定时触发器」或「Webhook触发器」(推荐后者,可由你系统调用)→ 设置触发条件为「当新数据写入知识库时」。
方法一:使用内置PDF生成节点
拖入「PDF生成」节点 → 选择模板类型为「表格型」→ 在「数据源」下拉框中选择你刚创建的知识库 → 点击「预览模板」确认字段映射正确 → 修改页眉文字为“XX公司月度报表” → 勾选「嵌入Logo」并上传PNG格式Logo(尺寸建议300×100像素)。
方法二:用代码节点自定义PDF
拖入「代码节点」→ 语言选Python → 粘贴以下代码片段:
from fpdf import FPDF<br>import json<br>data = json.loads($input.data)<br>pdf = FPDF()<br>pdf.add_page()<br>pdf.set_font("Arial", size=12)<br>for row in data[:5]:<br> pdf.cell(200, 10, txt=str(row), ln=1)<br>output = pdf.output(dest='S').encode('latin1')注意:此方式不支持中文,如需中文请改用reportlab并提前在环境配置中安装对应字体包。
配置邮件发送环节
第一步:在工作流中拖入「邮件发送」节点 → 连接上一步PDF生成节点的输出端口。
第二步:填写收件人字段,支持两种写法:
① 直接填邮箱地址(如 client@xxx.com)
② 引用数据字段(如 $input.email,前提是你的原始数据里有email列)
第三步:主题栏输入「您的报表已生成【{date}】」→ 系统会自动替换{date}为当前日期。
第四步:正文内容可留空,PDF将作为唯一附件发送;若需正文,勾选「启用HTML正文」并插入简短说明文字。
务必点击「测试发送」验证邮箱配置是否生效——首次使用前必须完成SMTP授权,否则所有邮件均被拦截。
发布并获取调用地址
点击右上角「发布」→ 等待状态变为「已启用」→ 复制页面顶部显示的Webhook URL。
将该URL提供给你内部系统的开发同事,让他们在数据入库完成后,用POST请求携带JSON体调用该地址,例如:{"knowledge_base_id": "kb_xxx123", "trigger_data": {"email": "user@test.com"}}
这一步操作起来很简单,直接把这段curl命令粘贴进终端就能触发一次全流程测试:curl -X POST [你的Webhook URL] -H "Content-Type: application/json" -d '{"knowledge_base_id":"kb_xxx123"}'



















