看了,表述不太清楚,思路:
1、先计算哪个条件:星级、价格、等级、分组。
2、按先后顺序写出折扣后列的表达式
例如:
S elect e.DataCol.Name
Case "价格"
If e.DataRow("价格") < 1000
If e.DataRow("客户组") = "普通组"
If e.DataRow("客户等级") = "三星"
e.DataRow("折扣后") = e.DataRow("价格") * 0.95
ElseIf e.DataRow("客户等级") = "四星"
e.DataRow("折扣后") = e.DataRow("价格") * 0.92
ElseIf e.DataRow("客户等级") = "五星"
e.DataRow("折扣后") = e.DataRow("价格") * 0.89
Else
e.DataRow("折扣后") = e.DataRow("价格")
End If
ElseIf e.DataRow("客户组") = "VIP组"
If e.DataRow("客户等级") = "三星"
e.DataRow("折扣后") = e.DataRow("价格") * 0.95
ElseIf e.DataRow("客户等级") = "四星"
e.DataRow("折扣后") = e.DataRow("价格") * 0.92
ElseIf e.DataRow("客户等级") = "五星"
e.DataRow("折扣后") = e.DataRow("价格") * 0.89
Else
e.DataRow("折扣后") = e.DataRow("价格")
End If
End If
Else
If e.DataRow("客户组") = "普通组"
If e.DataRow("客户等级") = "一星"
e.DataRow("折扣后") = e.DataRow("价格") * 95
ElseIf e.DataRow("客户等级") = "二星"
e.DataRow("折扣后") = e.DataRow("价格") * 0.9
ElseIf e.DataRow("客户等级") = "三星"
e.DataRow("折扣后") = e.DataRow("价格") * 0.85
ElseIf e.DataRow("客户等级") = "四星"
e.DataRow("折扣后") = e.DataRow("价格") * 0.8
ElseIf e.DataRow("客户等级") = "五星"
e.DataRow("折扣后") = e.DataRow("价格") * 0.75
End If
ElseIf e.DataRow("客户组") = "VIP组"
If e.DataRow("客户等级") = "三星"
e.DataRow("折扣后") = e.DataRow("价格") * 0.95
ElseIf e.DataRow("客户等级") = "四星"
e.DataRow("折扣后") = e.DataRow("价格") * 0.92
ElseIf e.DataRow("客户等级") = "五星"
e.DataRow("折扣后") = e.DataRow("价格") * 0.89
Else
e.DataRow("折扣后") = e.DataRow("价格") * 0.95
End If
End If
End If
End S elect