SuperAPI AI 工具集

form-creator

通用与其它

查看项目

更新于 10-15 20:33

技能介绍

用途:在 Datex Studio 分支上创建或修改表单(configurationTypeId=5,文件名以 -form.json 结尾)。表单是输入收集组件,收集用户数据,可选承载“先校验再执行”的工作流,关闭时通过 outParams 把载荷交还调用方,通常由网格、hub 或其他表单以模态/抽屉对话框打开。

主要能力:按参考文档构建表单 JSON 主体,包含 toolbar、fieldsets(含每个字段的 controlConfig)、flows(每个 executeCodeConfig 步骤带 code 字符串)以及 inParams/outParams/vars 模式;处理声明式字符串槽的 TypeScript 表达式编码、声明式与命令式初始化、对话框打开、校验后门控确认、确认与取消区分等。

使用方式:表单编写走 dxs configuration 通用 CRUD,没有 dxs form 子命令,也不支持字段级补丁,需整体构建或获取后提取 JSON 主体再推送。新建:先构建 body.json,再执行 dxs configuration validate form -b <branchId> -D body.json,然后 dxs configuration upsert form -b <branchId> -D body.json。修改:先 dxs configuration get form <configId> -b <branchId> -O envelope.json,再用 jq .json envelope.json > body.json 提取内层主体,编辑后校验并 upsert。往返时必须先提取内层 .json,不能把 envelope.json 直接送入 upsert,否则会静默破坏配置内容。

适用场景:临时输入收集、创建型对话框、配置提示(如日程、选项集)并把值返回调用方;若需求是单实体查看/编辑应改用 editor-creator,多记录表格视图应改用 grid-creator。

限制:分支 ID 需用户确认,不可假设;vars 中写入的每个 $form.vars.<id> 必须在 vars[] 声明,$form.<flowName>() 调用必须有对应 flow;vars/inParams/outParams 中不能使用 $types.<Package>.e_<enum>,参数层只用基本类型;每个 controlConfig 的兄弟 *Config 键需显式置 null;表单代码通过 $flows.<Package>.<fn> 调用函数,CRUD 经 $apis.<Package>.FootprintApi.extendedActions.<action_name>,不直接调用 action。其余细节暂未提供。