Skip to main content

限制和排错

自定义逻辑写错时,通常是关键字大小写、标签不存在、范围简写、括号或字符串引号导致的。

先检查这 6 件事

问题正确写法
关键字写成大写ifthenshow
范围简写Q1~Q5,不要写 Q1~5
字符串没加引号"优秀"
判断相等用单等号==
括号没闭合AND(Q1A1,Q2A1)
标签写错以右侧预览区标签为准

当前实现限制

  • if ... then validate ... 不建议使用
  • if ... then assignment ... 不建议使用
  • branch from/to 使用 DSL 标签或 END,不要写内部变量
  • mutexshufflerandom show 可能出现在提示里,但不建议作为正式规则使用
  • 范围写法必须两端完整,例如 Q1A1~Q1A4

条件赋值怎么写

不要写:

if Q1A1 then assignment Q2 with 100

建议写:

assignment Q2 with IF(Q1A1,100,"")

条件校验怎么写

不要写:

if Q1A1 then validate Q2 with IF(Q2>100,"不能超过100","")

建议写:

validate Q2 with IF(AND(Q1A1,Q2>100),"不能超过100","")

排错步骤

1. 先只保留一条规则

把其他规则前面加 # 注释掉,只验证当前规则。

2. 先验证条件

把复杂条件拆简单,例如先测:

if Q1A1 then show Q2

确认没问题后,再加 ANDOR

3. 再验证动作

先用 show Q2 这类最简单动作确认条件能触发,再换成 branchassignmentvalidate

4. 最后完整预览

用不同答案覆盖所有分支,尤其是跳转和提前结束规则。