SuperAPI AI 工具集

informat-expression

办公与效率

查看项目

更新于 10-16 08:49

技能介绍

用途:把自然语言规则转换成 Informat / 织信平台可执行的 UEL 表达式,适用于审批条件、流转条件、实例名称表达式、自动完成条件、字段公式、表单/仪表盘/API 返回值中的表达式,以及类似“请给我一个 ${...} 规则”的请求,也可用于判断某需求该用表达式还是脚本。若需要脚本代码、自动化 JavaScript 或平台脚本逻辑,应改用 informat-script。

使用方式:按顺序阅读 references/expression-rules.md、references/expression-boundaries.md、references/expression-sdk.md、references/expression-examples.md;需要完整函数定义、User./Date. 边缘能力或 DSL 细节时再查 ../../sources/informat.expression.md;需要示例资产时查 ../../examples/generated_expressions/。输出默认先给最终表达式,必要时补一句适用说明或 DSL 替代写法;用户要求示例资产或存档位置时补充相关文件路径;无法实现时单独列出原因并建议改用脚本;要求多个候选时给出多个合法版本并说明差异。

主要约束:表达式必须用 ${} 包裹,${} 外为普通字符串不会执行;字符串拼接只能用 String.concat(...),不能用 +;数组只能用 Array.of(...),禁止数组字面量;禁止 JavaScript 风格的 .map/.filter/.reduce、箭头函数和对象字面量推导;可使用来源文档明确存在的 DSL 函数,如 Array.map(list, key)、Array.filter(list, key, value)、Array.join(...);只能使用来源资料中已知的对象和函数;除法需考虑除数为 0 抛异常;保留关键字不能误用为标识符;Date.datePart(..., 'month') 中 1 月对应 0,day_of_week 中星期日对应 0。

限制:遇到复杂流程控制、复杂副作用、多步编排、需要 JS 循环或高阶函数、需要来源资料中不存在的函数、需要数组或对象字面量完成核心逻辑、无法确认对象或函数是否存在时,应停止硬写表达式,说明边界并建议改用脚本。输出前需自检 ${} 完整性、是否误用 JS 语法、拼接是否误用 +、数组是否误用字面量、是否误用 JS 高阶函数、除数为 0 风险及月份/星期 0 基取值是否正确。