Visual Basic - 使用 OrElse 在 IIF 中嵌套 IF
Visual Basic - Nested IF in IIF with OrElse
我在 Visual Basic 中有一个来自 SQL Report Builder 的表达式,我正在尝试修改。我正在加快所有事情的速度 SQL 因为这对我来说是全新的,而且我仍在学习正确的结构和语法。
我想做的是修改表达式以从 DonationAmount 获取输出并查看它是否 >= 到 10,如果它 <10 那么我想要填充“10”而不是较小的数量。这是代码:
=Iif(
Fields!ndpPP.Value = 1,
"",
Iif(
Fields!IsCP.Value = 1,
"Text 1 " & Iif(
Fields!IsS.Value OrElse
Fields!IsProbation.Value OrElse
Fields!UnfilteredRateTypeID.Value = 9
OrElse Fields!UnfilteredRateTypeID.Value = 10,
"",
" " & Format(Fields!DonationAmount.Value, "C0") & ""
) & " Text 3",
"Text 2 " & Iif(
Fields!IsS.Value OrElse
Fields!IsProbation.Value OrElse
Fields!UnfilteredRateTypeID.Value = 9 OrElse
Fields!UnfilteredRateTypeID.Value = 10,
"",
" " & Format(Fields!DonationAmount.Value, "C0") & ""
) & " Text 4"
)
)
这应该有效(一旦将其整合到表达式的其余部分)
Iif(Fields!DonationAmount.Value < 10, 10, Fields!DonationAmount.Value)
您可以修改
的输出
Format(Fields!DonationAmount.Value, "C0")
类似于
Format(math.Max(Fields!DonationAmount.Value, 10), "C0")
这将打印值或 10,以较大者为准
我在 Visual Basic 中有一个来自 SQL Report Builder 的表达式,我正在尝试修改。我正在加快所有事情的速度 SQL 因为这对我来说是全新的,而且我仍在学习正确的结构和语法。
我想做的是修改表达式以从 DonationAmount 获取输出并查看它是否 >= 到 10,如果它 <10 那么我想要填充“10”而不是较小的数量。这是代码:
=Iif(
Fields!ndpPP.Value = 1,
"",
Iif(
Fields!IsCP.Value = 1,
"Text 1 " & Iif(
Fields!IsS.Value OrElse
Fields!IsProbation.Value OrElse
Fields!UnfilteredRateTypeID.Value = 9
OrElse Fields!UnfilteredRateTypeID.Value = 10,
"",
" " & Format(Fields!DonationAmount.Value, "C0") & ""
) & " Text 3",
"Text 2 " & Iif(
Fields!IsS.Value OrElse
Fields!IsProbation.Value OrElse
Fields!UnfilteredRateTypeID.Value = 9 OrElse
Fields!UnfilteredRateTypeID.Value = 10,
"",
" " & Format(Fields!DonationAmount.Value, "C0") & ""
) & " Text 4"
)
)
这应该有效(一旦将其整合到表达式的其余部分)
Iif(Fields!DonationAmount.Value < 10, 10, Fields!DonationAmount.Value)
您可以修改
的输出Format(Fields!DonationAmount.Value, "C0")
类似于
Format(math.Max(Fields!DonationAmount.Value, 10), "C0")
这将打印值或 10,以较大者为准