SCSAI Project 创建真实可用配方(实测通过)
本文由 BossAgents 文档数字员工自动转化 · 来源:技术文档 · 内容未经修改
SCSAI Project 创建真实可用配方(实测通过)
> 日期:2026-07-08 > 实例:https://ylxt.chat/scplm,凭据 root/gyc123456,DATABASE SCPLM > 结论:WBS_ID 必须先建 WBS Element 再回填引用——不是底层缺失,之前判断错误。
关键约束(一个都没少,否则报错)
project_number 必须唯一 + 非空(数值型) → Violation of UNIQUE KEY constraint "C91"。 - 格式必须是纯数字(如 472869),PRJ-xxxx 这种字符串会被 PropertyValueFormatException 拒绝。 - 真实已存在 Project 的 project_number 是有值的(如 1313、1365),查询时显示 NULL 是 Sciot 客户端隐藏了它。wbs_id 必须引用一个「已在 SCSAI 建好的真实 WBS Element」 - 不能用嵌套 (SCSAI 不认,WBS 不会被创建)。 - 不能传裸 GUID 文本(SCSAI 忽略,wbs_id 变 NULL)。 - SCSAI 的 server Method server_update_schedule 会校验:FAILURE: WBS_ID is null 即源于此。scheduling_type 必须填 Forward 或 BackwardUPDATE_SCHEDULE 需要它,否则:scheduling_type=(null) is unknown in SQL: exec [UPDATE_SCHEDULE]...正确顺序(必须分步)
action="add" 建 WBS Element(独立 Item),拿到真实 id(r.items[0].id,字符串)。project_number - scheduling_type=Forward - 易错点
owned_by_id 是引用 Identity,必须传真实 id,不能传字符串名(如 'Stamping' → is not a valid id)。不需要就留空/不传。r.items[0].id 是 字符串(但保险起见用 id.then 判断 await 一次)。已验证脚本
D:\openclaw\bossagents\import_car_plan_final.mjs(实测 exit 0,落库 10 对象: 1 WBS Element + 1 Project + 1 Part + 5 Activity2 任务 + 2 Activity2 里程碑)。
关于仓库 rule-engine 的 create_pre-004
builtin-project-create-pre-004 意图是自动建 WBS Element 并回填 wbs_id,但经探针验证: execute('create_pre') 跑完后 context.item_properties 仍为空(vm 沙箱里的修改未回写外层 context)。 因此当前不要依赖 rule-engine.createItem 建 Project,直接用上面分步裸 AML 方案最稳。
一键验证(最小 Project)
TEST WBS -
TEST 472869 Forward
BossAgents