如何在Workshop中传递scenario id参数至Ontology action?
解决Workshop模块中Scenario ID传递与Writeback数据集存储问题
获取Scenario ID的有效途径
- 在Workshop的Scenario上下文环境中,直接使用内置变量
scenario.id即可获取当前Scenario的ID。这个变量在所有绑定到Scenario的组件、动作逻辑里都能直接访问,无需手动从模块传递。 - 如果是调用Ontology Action,只要Action的触发上下文是当前Scenario,就能直接引用
scenario.id作为参数传入。
绕过"Apply to Scenario"限制实现Writeback存储
- 先创建一个Ontology Action,定义输入参数:包含
scenarioId(类型需与你的Writeback数据集ID字段匹配),以及需要存储的各类属性字段。 - 在Workshop模块中触发该Action时,从当前Scenario上下文传入
scenario.id作为scenarioId参数,同时传入要保存的属性值。 - 在Action逻辑中直接操作Writeback数据集:要么基于
scenarioId创建新的关联记录,要么通过scenarioId匹配现有记录执行更新操作。 - 前提:确保你的Writeback数据集已配置与Scenario关联的字段(比如
scenario_id),保证Action能精准关联到对应Scenario的记录。
验证与调试技巧
- 在Workshop中添加临时文本组件,绑定
scenario.id,确认能正常显示ID值,验证上下文有效性。 - 在Ontology Action中添加日志步骤,输出传入的
scenarioId和属性值,便于排查存储失败问题。 - 检查Writeback数据集的权限配置,确保Workshop模块所属角色拥有该数据集的读写权限。
内容的提问来源于stack exchange,提问作者Monsta
相关产品推荐
相关产品推荐

