Foxtable(狐表)用户栏目专家坐堂 → 根据用户等级和消费金额的折扣


  共有2993人关注过本帖树形打印复制链接

主题:根据用户等级和消费金额的折扣

帅哥哟,离线,有人找我吗?
long086
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:298 积分:2605 威望:0 精华:0 注册:2013/5/22 7:16:00
根据用户等级和消费金额的折扣  发帖心情 Post By:2015/5/10 23:13:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:根据用户等级和消费金额的折扣.table

请问根据用户等级不同,和消费的金额不同,折扣不同,自动计算出折扣后的金额,怎么做,请高人指点。

 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/5/10 23:31:00 [只看该作者]

    

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:根据用户等级和消费金额的折扣.table


 回到顶部
帅哥哟,离线,有人找我吗?
sjx71
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:469 积分:4545 威望:0 精华:0 注册:2013/5/22 15:32:00
  发帖心情 Post By:2015/5/11 0:15:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:折扣价.table


 回到顶部
帅哥哟,离线,有人找我吗?
long086
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:298 积分:2605 威望:0 精华:0 注册:2013/5/22 7:16:00
  发帖心情 Post By:2015/5/11 17:57:00 [只看该作者]

感谢指导

 回到顶部
帅哥哟,离线,有人找我吗?
long086
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:298 积分:2605 威望:0 精华:0 注册:2013/5/22 7:16:00
  发帖心情 Post By:2015/5/13 9:07:00 [只看该作者]

以下是引用sjx71在2015/5/11 0:15:00的发言:
 下载信息  [文件大小:288.0 KB  下载次数:37]
图片点击可在新窗口打开查看点击浏览该文件:折扣价.table

感谢指点,新手入门,能否解释下面的代码意思,谢谢

Select Case e.DataCol.Name
    Case "价格","客户等级"
        Dim dr As DataRow
        dr = DataTables("折扣").find("客户等级 = '" & e.DataRow("客户等级") & "'")
        If dr IsNot Nothing Then
            If e.DataRow("价格") > 1000 Then
                e.DataRow("折扣后") = e.DataRow("价格") * dr("折扣一")
            Else
                e.DataRow("折扣后") = e.DataRow("价格") * dr("折扣二")
            End If
        End If
End Select


 回到顶部
帅哥哟,离线,有人找我吗?
long086
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:298 积分:2605 威望:0 精华:0 注册:2013/5/22 7:16:00
  发帖心情 Post By:2015/5/13 9:09:00 [只看该作者]

以下是引用大红袍在2015/5/10 23:31:00的发言:

    

 下载信息  [文件大小:292.0 KB  下载次数:7]
图片点击可在新窗口打开查看点击浏览该文件:根据用户等级和消费金额的折扣.table

感谢指点,新手入门,能否解释下面的代码意思,谢谢

 

Select Case e.DataCol.Name
    Case "价格", "客户等级"
        Dim fdr As DataRow = DataTables("表B").Find("金额 < " & e.DataRow("价格") & " and 客户等级 = '" & e.DataRow("客户等级") & "'", "金额 desc")
        If fdr IsNot Nothing Then
            e.DataRow("折扣后") = fdr("折扣") / 100 * e.DataRow("价格")
        Else
            e.DataRow("折扣后") = e.DataRow("价格")
        End If
End Select


 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2015/5/13 9:10:00 [只看该作者]

Select Case e.DataCol.Name
    Case "价格","客户等级"    '判断触发的列名
        Dim dr As DataRow
        dr = DataTables("折扣").find("客户等级 = '" & e.DataRow("客户等级") & "'")  '折扣表找到客户等级等于当前行客户等级的行
        If dr IsNot Nothing Then  '判断DR不是空也就是确认有找到行
            If e.DataRow("价格") > 1000 Then  '判断一下当前行的价格是否大于1000
                e.DataRow("折扣后") = e.DataRow("价格") * dr("折扣一")   '是的话折扣后等于 价格*找到的行的折扣一
            Else
                e.DataRow("折扣后") = e.DataRow("价格") * dr("折扣二")    '否则,也就是小于1000   *找到行的折扣二
            End If
        End If
End Select

 回到顶部