-- 作者:黄训良
-- 发布时间:2015/5/30 1:33:00
--
看了,表述不太清楚,思路:
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
|