
表单引擎三大设计范式出品驰骋低代码 BPM / CCFlow文档版本2026-06依据代码Vue3/src、CCFlow/Components/BP.En30、CCFlow/Components/BP.WF在线演示http://ccflow.org代码下载http://ccflow.org驰骋低代码的划分标准与主张本文所阐述的「表单三大设计范式」划分标准出自驰骋低代码 BPM 团队的技术归纳与产品主张并非业界唯一分类方式但经二十年 CCFlow/JFlow 工程实践反复验证。驰骋认为企业软件中的「表单」问题本质是如何把数据结构变成可交互的界面。三十年来业界围绕这一问题形成了三种典型路径——我们把它们归纳为范式规则载体驰骋产品映射基于文件.html、.jsp、.aspx等页面/模板文件嵌入式表单、开发者表单、VSTO 模板等补充能力基于数据库元数据表字段、布局、扩展逻辑低代码表单五类设计器基于规则实体类EnMap、ORM 元数据高代码表单Search / EnOnly / Group 三组件驰骋的核心主张可以概括为三句话同一道题多个解——三种范式都能完成表单的采集、校验、存储与展现没有绝对的对错只有角度与立场不同。双轨并行而非二选一——驰骋表单引擎同时提供「低代码表单」基于数据库与「高代码表单」基于规则按场景选用、混搭共存。统一 ORM 底座——无论低代码还是高代码字段语义均源自BP.En30的Map/Attr体系降低范式切换成本。下文从区别、对比、应用场景、适用人群、优缺点五个维度逐一展开三种范式并说明驰骋的具体落地方式。一、三种范式概览同一道题三种解法表单功能需求录入 · 校验 · 存储 · 展现基于文件生成 .html/.jsp/.aspx基于数据库设计器 → 元数据表 → 解析器基于规则实体 EnMap → 解析组件页面文件即表单驰骋低代码表单驰骋高代码表单如同一道数学题可以有代数解、几何解与图解法表单实现也有三条成熟路径。选型取决于谁维护、变更多不多、逻辑有多复杂、是否需要多端统一——而非哪种范式「更先进」。二、范式一基于文件的表单2.1 核心机制这是传统、也是最直觉的解决方案由数据模型驱动通过代码生成器或手工编写产出.html、.jsp、.aspx等格式的页面文件文件内容包含列表列定义、表单字段标签、输入控件及页面脚本。数据模型表结构 → 生成器 / 手工编码 → 页面文件 → Web 容器 → 浏览器渲染每个表单对应一份或一组文件。修改布局或字段通常意味着改文件、重新部署。2.2 从自身角度看优缺点优点说明性能直接无运行时元数据解析页面即最终产物首屏与交互延迟可控技术栈成熟与 Servlet、ASP.NET、PHP 等宿主框架天然契合人才储备充足版式自由度极高HTML/CSS/JS 或 Office 模板可任意排版不受设计器控件集限制离线/本地能力强VSTO 等方案可调用本机 Office适合复杂排版与公式计算投资保护已有 JSP/ASPX 页面可直接复用无需推倒重来缺点说明变更成本高字段增删改需动文件、走发布流程难以「配置即生效」多端维护负担PC 与移动端往往需两套文件或额外适配层逻辑分散难治理级联、显隐等交互散落在页面脚本中跨表单复用困难业务人员无法自助依赖开发团队实施周期长响应业务变化慢与流程引擎耦合紧每个节点若独立页面版本管理与权限统一成本高2.3 应用环境表单结构极少变更一次开发长期使用企业已有大量JSP/ASP.NET/PHP遗留页面需平滑接入 BPM版式要求极高需借助Word/Excel排版与公式公文、报表、合同对运行时元数据解析有性能敏感要求愿以维护成本换取执行效率团队以传统 Web 开发为主尚未引入低代码平台。2.4 适用人群角色匹配度Java/.NET 传统 Web 开发工程师★★★★★有 Office 宏/VSTO 经验的实施顾问★★★★☆业务分析师 / 流程管理员★☆☆☆☆零基础业务人员★☆☆☆☆2.5 在驰骋体系中的位置驰骋主路径已演进为「数据库元数据 规则代码」双轨但文件范式作为补充能力保留能力FrmType说明嵌入式表单Url 3节点绑定外部 URL第三方页面即表单开发者表单Develop 8HTML 模板存Sys_MapData.HtmlTemplateFileVSTO Excel / Word6/61Office 文件为模板本地程序加载展现代码锚点Vue3/src/WF/Admin/EnumLab.ts→FrmType枚举。三、范式二基于数据库的表单驰骋低代码表单3.1 核心机制通过可视化设计器将表单描述写入数据库运行时由通用解析器读取元数据动态渲染 PC 端、移动端、列表查询与表单填写界面。驰骋低代码表单遵循四步链路梳理规则 → 定义规则设计器 → 存储规则数据库 → 解析规则解析器表单元素 vs 交互逻辑驰骋将「用户看到什么」与「控件如何联动」明确拆分概念含义存储位置示例表单元素用户可见的控件Sys_MapAttr文本框、单选、多选、附件、子表、图标、日期、评分……交互逻辑控件之间的行为规则Sys_MapExt下拉框级联、单选控制显隐、自动计算、Pop 弹窗选值……表单元素类型见FoolFormDesigner/props/database/DatabaseFormItem.ts的DBEnums枚举交互逻辑在设计器属性面板配置如GPE_ActiveDDL级联联动、GPE_AutoFull自动计算。元数据表结构节选表名职责代码模块Sys_MapData表单主档ID、名称、类型、存储表BP.WFSys_MapAttr表单元素定义BP.En30Sys_GroupField分组 / 页签 / 章节BP.WFSys_MapDtl子表从表BP.WFSys_MapExt交互逻辑扩展BP.En30Sys_FrmAttachment附件控件BP.WF解析器在不同场景统一加载上述元数据场景解析入口PC 表单填写WF_CCForm.cs 前端表单组件移动端CCMobile对应组件列表查询SearchBill.vue等单据列表从表编辑MapDtl 经典表单 / 表格模式3.2 从自身角度看优缺点优点说明业务人员可自助拖拽设计器即可增删字段、调布局无需编译发布一份元数据多端复用同一套MapAttr驱动 PC、移动、列表避免重复维护元素与逻辑分离控件归MapAttr联动归MapExt结构清晰、便于治理与 BPM 深度集成流程节点、单据、权限、附件开箱即用实施交付快标准 CRUD 表单可在数小时内完成配置上线导入导出可迁移元数据可打包在不同环境间迁移缺点说明版式受设计器约束极端自由排版不如纯 HTML/Office 灵活复杂逻辑有天花板超复杂算法、外部系统集成更适合高代码运行时解析开销相较静态页面多一层元数据读取与组装版本管理偏库表精细 diff 不如 Git 管理代码直观可辅以导入导出设计器学习成本业务人员需理解元素、逻辑、从表等概念3.3 应用环境流程审批表单、业务单据字段与布局频繁调整需业务人员参与多端统一同一表单在 PC 与移动端同步展现标准化录入场景请假、报销、采购、维修单等 CRUD 为主实施型项目交付周期紧顾问现场配置即可验收需要与驰骋流程引擎、单据引擎、组织结构联动的内置场景。3.4 适用人群角色匹配度业务分析师 / 流程管理员★★★★★BPM 实施顾问★★★★★企业信息化管理员★★★★☆前端开发工程师做扩展配置★★★☆☆仅需写复杂算法的后端架构师★★☆☆☆3.5 驰骋低代码表单五类设计器驰骋低代码表单针对五类典型应用场景提供专用设计器入口为GPN_NewFrm新建表单向导序号设计器FrmType应用场景代码路径1经典表单设计器0FoolForm常规流程表单、单据拖拽、栅栏格、丰富控件Vue3/src/WF/Admin/FoolFormDesigner2开发者表单设计器8Develop复杂 HTML 排版富文本随心所欲HtmlTemplateFile存储3章节表单设计器10ChapterFrm合同、申报书、操作手册等章—节—内容大文档Vue3/src/WF/Admin/ChapterFrmDesigner4VSTO Excel 设计器6VSTOForExcel复杂计算、保持 Excel 样式与公式DesignerVSTO5VSTO Word 设计器61VSTOForWord公文、合同等 Word 版式文档DesignerVSTO五类设计器共性设计成果落入数据库或关联模板存储运行时由平台解析器统一加载。经典表单特点GPE_FrmType字段可拖拽排序、栅栏格布局、文本属性可切换为单选/多选/附件/地图等丰富控件。章节表单结构一个分组即「章」每个字段默认为大块文本即「节」适合层次化文档填报。四、范式三基于规则的表单驰骋高代码表单4.1 核心机制不再将字段逐条写入数据库而是在代码中声明实体规则借助 ORM 的Map/Attr体系定义物理表、主键、字段属性查询条件、列表列、隐藏条件主从关系、分组、权限UAC生命周期钩子beforeInsert/beforeUpdate等任意业务逻辑。驰骋高代码表单三步链路梳理规则 → 定义规则.ts / .cs 实体类 → 解析规则Search / EnOnly / Group无独立「存储到元数据表」环节——规则载体是代码仓库中的实体类文件。示例Student.ts官方演示实体Vue3/src/App/Demo/Student.ts展示了声明式写法exportclassStudentextendsEntityNoName{publicoverridegetEnMap(){constmapnewMap(Demo_Student,学生);map.AddGroupAttr(基本字段);map.AddTBStringPK(No,null,编号,true,true,4,4,80);map.AddTBString(Name,null,名称,true,false,0,200,80);map.AddImgAth(AthICon,头像,true,false,3);map.AddGroupAttr(枚举);map.AddRadioBtn(XB,0,性别,true,true,XB,0女1男2未知);map.AddCheckbox(Interest,,爱好,true,true,,0音乐1编程...);map.AddDDLEntities(BanJiNo,null,班级外键,newBanJi(),true);map.AddSearchAttr(XB,150);map.AddSearchHidden(BanJiNo,in,001,003,004);returnmap;}overrideasyncbeforeInsert():Promiseboolean{this.RecNoWebUser.No;this.RecNameWebUser.Name;returntrue;}}实体类即「表单说明书」AddTBString定义字段AddSearchAttr定义查询列beforeInsert承载任意复杂逻辑。4.2 从自身角度看优缺点优点说明逻辑表达无上限TypeScript/C# 可写任意算法、API 集成、复杂校验Git 版本管理实体类随代码仓库演进diff、分支、Code Review 成熟一份实体多种视图同一EnMap驱动 Search / EnOnly / GroupORM 多态类型安全与 IDE 支持补全、重构、静态检查提升长期维护效率与低代码共享 ORM 语义Map.AddTBString与Sys_MapAttr字段语义一致可互转适合平台级功能组织结构、权限、系统配置等核心模块的首选缺点说明业务人员无法直接改字段调整需开发改代码、编译发布实施响应慢于低代码简单 CRUD 用高代码反而过度工程化前端 UI 受解析组件约束布局自由度低于手写 Vue 页面学习曲线需掌握 ORM、EnMapAPI、实体生命周期变更生效需发布不像设计器配置可即时生效4.3 应用环境系统管理、组织结构、权限配置等核心平台功能逻辑复杂、算法密集的业务定价引擎、合规校验、多系统对接长期演进、需严格版本管理的主数据模块统计分析、分组报表类页面Group 组件开发团队有TypeScript/C#能力追求代码即文档的工程文化。4.4 适用人群角色匹配度全栈 / 前端开发工程师★★★★★平台架构师 / 技术负责人★★★★★有 ORM 经验的后端工程师★★★★☆BPM 实施顾问做标准配置★★☆☆☆零基础业务人员★☆☆☆☆4.5 驰骋高代码表单三个解析组件同一实体类如TS.Demo.Student通过三个固定组件覆盖三类应用场景焦点字段钻取实体类 EnMapTS.Demo.StudentSearch.vue列表查询EnOnly.vue单卡编辑Group.vue分组分析组件路径应用场景适用人群调用方式Search.vueVue3/src/WF/Comm/Search.vue多条件查询 结果列表焦点字段打开详情业务用户日常检索GloComm.UrlSearch(TS.Demo.Student)EnOnly.vueVue3/src/WF/Comm/EnOnly.vue单条新增/编辑/查看分组、从表、附件业务用户录入维护GloComm.UrlEnOnly(TS.Demo.Student, 001)Group.vueVue3/src/WF/Comm/Group.vue按维度分组汇总、统计分析管理人员分析决策GloComm.UrlGroup(TS.Demo.Student)Search.vue结合EnCfg配置查询列、关键字、日期段、外键筛选是主数据列表默认入口。EnOnly.vue读取EnMap分组与字段支持页签/分组栏、从表嵌入、字段联动显隐UIkeyRef、工具栏方法。Group.vue在 Search 能力上增加分组维度适合分类汇总与统计钻取。后端 ORM 支撑CCFlow/Components/BP.En30提供Entity、Map、Attr、UAC、RefMethod等核心能力CCFlow/Components/BP.WF提供流程与表单服务集成。五、三种范式横向对比5.1 核心维度对比维度基于文件基于数据库低代码基于规则高代码规则载体.html/.jsp/.aspx/ Office 模板Sys_MapAttr等元数据表.ts/.cs实体EnMap定义方式生成器 / 手工编码可视化设计器拖拽代码声明Map.AddXXX变更生效改文件 部署设计器保存通常即时生效改代码 编译发布多端支持需多套文件或适配一份元数据解析器适配一份实体三组件适配复杂逻辑页面脚本分散MapExt 事件配置任意 TS/C# 代码版式自由度最高受设计器控件集约束受解析组件布局约束驰骋产品嵌入式 / VSTO / 开发者表单低代码表单五类设计器高代码表单三组件5.2 应用场景对比场景推荐范式理由流程审批、标准单据录入基于数据库业务可自助调字段实施快合同 / 项目申报大文档基于数据库章节表单章—节结构天然匹配复杂 Excel 计算报表基于数据库VSTO Excel复用 Office 公式与样式已有 JSP/ASP 遗留系统基于文件嵌入式保护投资URL 接入即可系统管理、组织权限基于规则逻辑复杂需 Git 管理主数据维护 列表查询基于规则Search EnOnly一份实体两种视图统计分析、分组报表基于规则Group与 Search 共用实体定义超复杂业务算法基于规则代码表达无上限5.3 适用人群对比人群基于文件基于数据库基于规则传统 Web 开发工程师主力辅助可转型BPM 实施顾问接遗留主力扩展开发业务分析师 / 流程管理员不参与主力不参与全栈 / 平台开发工程师接遗留配置扩展主力企业信息化管理员不参与主力不参与5.4 优缺点一句话总结范式一句话基于文件性能与版式最强变更与治理最弱——适合稳定、遗留、Office 重度场景基于数据库自助与交付最强复杂逻辑有天花板——适合流程表单、标准单据、实施型项目基于规则灵活与工程化最强业务自助最弱——适合平台功能、复杂逻辑、长期演进模块六、驰骋表单引擎双轨实现驰骋并非在三种范式中「押注其一」而是将基于数据库与基于规则作为主力双轨基于文件作为补充能力统一在BP.En30ORM 底座之上。┌─────────────────────────────────────────────────────────────┐ │ 驰骋表单引擎CCFlow │ ├──────────────────────────┬──────────────────────────────────┤ │ 低代码表单基于数据库 │ 高代码表单基于规则 │ │ 五类设计器 │ 三个解析组件 │ │ → 元数据入库 │ → 实体 EnMap 在代码中 │ │ → WF_CCForm 解析 │ → Search / EnOnly / Group │ ├──────────────────────────┴──────────────────────────────────┤ │ 补充嵌入式 / 开发者 HTML / VSTO基于文件 │ ├─────────────────────────────────────────────────────────────┤ │ 统一底座BP.En30 ORM BP.WF 工作流/表单服务 Vue3/src │ └─────────────────────────────────────────────────────────────┘低代码轨道GPN_NewFrm选择设计器 → 元数据写入Sys_MapData/Sys_MapAttr/Sys_MapExt→WF_CCForm与前端组件解析 → PC/移动/列表展现。高代码轨道编写Student.ts等实体类 →Search.vue/EnOnly.vue/Group.vue读取EnMap→ 列表/详情/分析展现。混搭示例流程节点用低代码经典表单采集审批数据后台主数据用高代码Student实体维护——同一平台、同一 ORM 语义不同范式各展所长。七、结语立场不同解法不同表单实现的三大范式——基于文件、基于数据库、基于规则——是驰骋低代码 BPM 对三十年企业软件实践的技术归纳。它们解决的是同一个问题让数据可靠地流入业务系统并以合适的形态呈现给用户它们代表不同的立场谁维护表单、变更有多频繁、逻辑有多复杂它们没有绝对优劣如同同一道题有多个解选型取决于角度而非道德高低。驰骋的主张是在同一引擎内提供低代码与高代码双轨按场景自由切换而不必更换平台。五类设计器赋能业务与实施三个解析组件赋能开发统一 ORM 底座降低范式切换成本——这是驰骋低代码 BPM 表单引擎的核心竞争力。附录关键代码索引主题路径表单类型枚举Vue3/src/WF/Admin/EnumLab.ts→FrmType新建表单向导五类设计器Vue3/src/WF/Admin/FrmLogic/GPN_NewFrm.ts经典表单设计器Vue3/src/WF/Admin/FoolFormDesigner/章节表单设计器Vue3/src/WF/Admin/ChapterFrmDesigner/表单元素类型FoolFormDesigner/props/database/DatabaseFormItem.ts高代码演示实体Vue3/src/App/Demo/Student.tsSearch / EnOnly / GroupVue3/src/WF/Comm/URL 封装Vue3/src/WF/Comm/GloComm.ts后端表单解析CCFlow/Components/BP.WF/HttpHandler/WF_CCForm.csORM 核心CCFlow/Components/BP.En30/高代码开发详解doc/低代码部分/面向模式编程思想-的高代码开发.md驰骋低代码 BPM · CCFlow 工作流引擎代码下载与在线演示http://ccflow.org