以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  再问根据用户等级和消费金额的折  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=69086)

--  作者:long086
--  发布时间:2015/5/29 21:57:00
--  再问根据用户等级和消费金额的折
请问根据客户的等级不同,和组别不同,折扣不同的计算,
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:根据用户等级和消费金额的折扣.table


--  作者:黄训良
--  发布时间: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