本文阅读时长:约 3 分钟
自动计算
自动计算用于读取 eCRF 中已有字段的值,按照预设公式生成结果,并写入指定的计算字段。它适合处理可以明确表达为公式的派生数据,例如体重指数、量表总分或单位换算结果。
自动计算不会判断结果是否合理,也不会因结果异常而生成质疑。需要检查计算结果或其他数据关系时,应另外配置逻辑核查。
规则组成
在 项目设置 → eCRF设计 → 自动计算 中,规则随当前方案版本管理。每条规则由计算目标、输入数据和公式共同组成。
| 配置项 | 说明 |
|---|---|
| 名称 | 用于识别规则;未填写时,系统根据计算字段生成名称,例如“计算‘BMI’” |
| 计算字段 | 用于保存计算结果的目标字段 |
| 输入变量 | 公式引用的来源字段 |
| 公式 | 使用输入变量计算目标值的表达式 |
| 作用范围 | 规则适用的表单和事件范围 |
选定计算字段后,页面才会显示输入变量和公式配置。计算字段需要同时满足以下条件:数据类型为“整数”或“小数”,交互类型为“数字输入框”。设计表单时,应先确定结果需要的数值类型和精度,再选择相应字段作为计算目标。
计算过程
自动计算的基本数据流如下:输入字段提供原始值,公式使用这些值完成运算,结果写入计算字段。来源字段发生变化时,系统按当前适用规则重新计算结果。
以体重指数(BMI)为例,可以将体重和身高设置为输入变量,将 BMI 字段设置为计算字段。若身高以米为单位,计算关系为:
BMI = 体重(kg) ÷ 身高(m) ÷ 身高(m)
实际公式必须与项目字段的单位保持一致。若身高字段使用厘米,不能直接套用以上关系;应先在公式中完成单位换算。量表总分也应先明确缺失项、跳题和不适用项的处理规则,再配置求和公式。
自动计算会依据输入值生成结果,但不能判断录入单位是否正确。配置和测试时应同时核对字段单位、数据类型、空值处理和计算精度。
规则列表与失效状态
自动计算列表显示编号、名称、表单、计算字段、作用范围和操作。页面支持按表单筛选、按名称查找,也可以使用“只看失效”集中查看失效规则。
当计算字段、输入字段或其所在表单发生变化,导致原有公式无法继续执行时,规则会被标记为失效。此时应检查计算字段、输入变量、公式和作用范围,并根据当前方案重新配置或删除规则。
具备查看项目方案设计权限的成员可以查看规则;新建、修改和删除规则需要编辑项目方案设计权限。修订版本中新建的自动计算会显示“新建”标记,便于识别本次方案变更。
配置示例
以下示例展示常见用途。实际字段名称、单位、精度和空值处理方式应以研究方案为准。
| 场景 | 输入变量 | 计算字段 | 配置重点 |
|---|---|---|---|
| 体重指数 | 身高、体重 | BMI | 确认身高和体重单位,验证小数精度 |
| 量表总分 | 各题得分 | 总分 | 明确缺失项、跳题和不适用项是否参与计算 |
| 单位换算 | 原单位数值 | 换算后数值 | 在公式中写明换算关系,并检查整数或小数类型 |
同一个结果字段只应承载一种明确的计算含义。若不同事件或表单采用不同公式,应分别确认规则的作用范围,避免将不适用的输入值带入计算。
测试与方案版本
自动计算属于 eCRF 方案版本的一部分。设计规则后,应先将方案保存为草稿,并在测试环境覆盖以下情况:
- 输入变量均有正常值时,结果是否正确。
- 输入值为边界值、小数或零时,结果是否符合预期。
- 输入字段为空或选择空值类型时,系统表现是否符合项目约定。
- 修改任一输入字段后,计算结果是否同步更新。
- 公式结果超出计算字段允许范围时,能否被相应的字段约束或逻辑核查发现。
方案发布后,自动计算才用于相应的生产数据。新版本发布后,中心和既有研究参与者不会自动切换版本;完成方案更新与研究参与者方案升级后,系统会按目标版本重新计算相关数据。有关版本发布、数据迁移和升级限制,见eCRF 设计的版本化。