我在javascript中有这个代码,它有条件地为数据表着色。我想在SSRS报告中使用相同优先级的相同颜色条件;所以“被拒绝”(蓝色)优先于“已过期”(红色)。
蓝色:拒绝了
黄:待定
红色:过期
橙色:警告
批准:白色
空:白色,除非被拒绝然后是蓝色,即使它是空的。
if (status == '1')
{
return 'rejected';
}
else if (status == '3')
{
return 'pending';
}
else if (status == '5')
{
if (celldate < currentdate)
{
return 'expired';
}
else if (celldate < warningdate && celldate > currentdate)
{
return 'warning';
}
else
{
return 'approved';
}
}
else
{
return 'null';
};
}
=iif(Fields!LICAPPRSTATUSID.Value="1","Blue",
iif(Fields!LICAPPRSTATUSID.Value="3","Yellow",
iif(Fields!EXPIRATIONDATE.Value < Today, "Red",
iif(Fields!EXPIRATIONDATE.Value < DateAdd("d",30,Today) and Fields!EXPIRATIONDATE.Value > Today, "Orange",
iif(IsNothing(Fields!EXPIRATIONDATE.Value),"White","White")))))
答案 0 :(得分:0)
我会用SWITCH做到这一点:
SWITCH
(
Fields!LICAPPRSTATUSID.Value="1","Blue",
Fields!LICAPPRSTATUSID.Value="3","Yellow",
Fields!LICAPPRSTATUSID.Value="5",
SWITCH
(
Fields!EXPIRATIONDATE.Value < Today, "Red",
Fields!EXPIRATIONDATE.Value < DateAdd("d",30,Today) and Fields!EXPIRATIONDATE.Value > Today, "Orange",
IsNothing(Fields!EXPIRATIONDATE.Value),"White"
)
)
请注意,上述代码是“最佳猜测”,基于您的SSRS代码中的变量如何映射到您的javascript中的变量。
您的javascript逻辑中的案例是否代表所有案例?如果没有,你可能会想要一个默认值。请记住,与评估为true的FIRST条件关联的值将是表达式返回的值。