You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

BO Webi技术问题:按订单分组算平均周转时间遇#MULTIVALUE错误

解决订单分组后计算平均周转时间的#MULTIVALUE错误

问题描述

尝试将检验订单按类别分组并计算每组的平均周转时间,但表格中出现#MULTIVALUE错误,需要解决方法。

主查询

主查询截图

用到的公式

检验订单分组公式

=If [Primary Orderable Item Mnemonic] InList ("Complete Blood Count w/Diff Auto";"Complete Blood Count w/o Diff";"Prothrombin Time w/INR";"PTT";"APTT";"Partial Thromboplastin Time") Then "Hematology" ElseIf [Primary Orderable Item Mnemonic] InList ("CMP";"Comprehensive Metabolic Profile";"BNP";"Creatinine") Then "Chemistry" Else "Other"

订单到完成时间差(分钟)公式

=TimeBetween([Order Date & Time];[Completed Date & Time];MinutePeriod)

订单到完成时间(MM)公式

=If [Time Diff (Order to Completed)] >= 0 And Not(IsNull([Order Date & Time])) Then [Time Diff (Order to Completed)]

目标需求

想要生成如下汇总表,展示每组的平均周转时间:
目标汇总表示例

使用的平均计算公式:

=Average([Order to Completed (MM)])

解决建议

  • 清理维度字段:汇总表中只保留检验订单分组这一个维度,移除所有未聚合的明细字段(如订单ID、具体检验项目名称等),避免同一分组下返回多个离散值。
  • 校验时间记录唯一性:确认每个订单对应的[Order Date & Time]和[Completed Date & Time]是一对一关联,不存在单个订单多条时间记录的情况,否则会导致时间差计算返回多值。
  • 调整平均计算逻辑:若[Order to Completed (MM)]为维度属性,改用聚合嵌套公式,如=Average(Max([Order to Completed (MM)])),先对每个订单取唯一时间值再计算分组平均。
  • 优化时间过滤公式:在[订单到完成时间(MM)]的公式中加入聚合函数,确保单个订单只返回一个值,例如:
    =If [Time Diff (Order to Completed)] >= 0 And Not(IsNull([Order Date & Time])) Then Max([Time Diff (Order to Completed)])
    

内容的提问来源于stack exchange,提问作者jsisock79

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.28 20:13:21