2

我需要帮助阅读这个包含多个布尔表达式的令人困惑的派生列表达式。

我尝试过多种阅读方式,但不确定哪一种是正确的。

ISNULL(ContractNumber) ? (ISNULL(PaidLossAmount) 
&& ISNULL(CaseReserveAmount)) ? NULL(DT_CY) : 
(ISNULL(PaidLossAmount) ? 0 : PaidLossAmount) + (ISNULL(CaseReserveAmount) 
? 0 : CaseReserveAmount) : PaidLossAmount

有人可以建议如何阅读这个表达吗?谢谢你的建议!

4

1 回答 1

2

这是 [Logical test] 格式的嵌套 if then else 吗?[如果为真,请执行此操作]:[如果为假,请执行此操作]

这是格式化的版本。

ISNULL(ContractNumber) 
     ?(ISNULL(PaidLossAmount) && ISNULL(CaseReserveAmount)) 
              ?NULL(DT_CY) 
              : (ISNULL(PaidLossAmount) 
                            ? 0 
                            : PaidLossAmount) 
                 + (ISNULL(CaseReserveAmount) 
                            ? 0 
                            : CaseReserveAmount) 
     : PaidLossAmount

这是一个决策树:

在此处输入图像描述

于 2019-07-01T17:32:57.270 回答