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

如何在现有客户敞口金额计算中加入开/关交易标志筛选

敞口计算中加入Open/Close flag筛选逻辑的解决方案

问题背景

我在报表中设置了参数,用于切换展示客户包含或排除已结清交易的敞口金额,但无法将Open/Close flag(开/关标志)融入现有计算逻辑。原计算客户敞口的公式如下:

ifnull(
sum(
IF 
{ FIXED [Customer], [Deal], [Schedule]:
COUNTD([Buyback])} > 0
then 
{ FIXED [Customer], [Deal], [Schedule]:
AVG(ifnull([Exposure],0))}
 
ELSE 0
END
)
,0)

修改后的公式(含Open/Close flag筛选)

假设:

  • 参数名为[Include Closed Deals](布尔型:勾选=包含已结清交易,不勾选=排除已结清交易)
  • [Open/Close flag]字段取值为'Open'(未结清)或'Closed'(已结清)

修改后的计算逻辑如下:

ifnull(
sum(
IF 
    // 先处理Open/Close flag的筛选条件
    (
        [Include Closed Deals] = TRUE() 
        OR [Open/Close flag] = 'Open'
    )
    // 保留原有的Buyback判断逻辑
    AND { FIXED [Customer], [Deal], [Schedule]: COUNTD([Buyback])} > 0
then 
    { FIXED [Customer], [Deal], [Schedule]: AVG(ifnull([Exposure],0))}
ELSE 0
END
)
,0)

逻辑说明

  1. 筛选层:通过参数和标志字段联动控制纳入计算的交易范围
    • 当参数勾选(包含已结清):所有交易都进入后续计算
    • 当参数未勾选(排除已结清):仅保留[Open/Close flag]为'Open'的未结清交易
  2. 原有逻辑保留:仅当[Customer], [Deal], [Schedule]分组下的Buyback计数大于0时,才取该分组的平均Exposure,否则计为0
  3. 空值处理:最终用sum汇总结果,ifnull确保空值返回0

如果你的参数类型、标志字段取值不同,只需对应调整判断条件即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.18 17:55:00