SuperAPI AI 工具集

bitrix-documentgenerator

办公与效率

查看项目

更新于 10-15 17:30

技能介绍

用途:在 Bitrix 环境中基于模板生成 DOCX/PDF 文档。仅适用于 Bitrix24 版本(云端与本地部署),安装需要 humanresources 模块,在“站点管理”中不存在;PDF/JPG 转换需要 transformer 模块和文档服务器。基线:main 23.0+;验证版本:documentgenerator 26.200.100、main 26.800.0。

主要能力与规则:

  • 模板与占位符:支持占位符、修饰符、表格、图片,并可从代码创建模板,详见 rules/templates.md。
  • 自定义数据:可定义自有实体的提供者类、字段、列表及注册,详见 rules/providers.md。
  • 生成流程:生成 DOCX/PDF、编号、存储、删除、事件,详见 rules/generation.md。
  • 权限与接口:模块权限、角色、模板访问、REST、UI 组件,详见 rules/access-rest.md。
  • CRM 文档(发票、交易)使用 CRM 自带提供者:bitrix24-crm。

必要用法与不变量:

  • Loader::requireModule('documentgenerator'),代码位于自有模块的 /local/modules/ 下,由该模块 id 注册提供者。
  • 模板 MODULE_ID 必须等于一个已安装模块,否则提供者被静默忽略。
  • 在调用 getFields() / Document::createByTemplate() 之前先调用 Template::setSourceType(),并检查 getSourceType()。
  • 显式检查权限:UserPermissions、模板访问、Document::hasAccess();加载与创建本身不检查权限,用户 0 可通过数据检查。
  • 文件引用使用 b_documentgenerator_file.ID(FILE_ID、PDF_ID),用 FileTable::getBFileId() 转换。
  • PDF 为异步:使用 getFile(false) 生成或忽略转换错误,并响应 onDocumentTransformationComplete。