Foxtable(狐表)用户栏目专家坐堂 → 表事件命令求精简


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

主题:表事件命令求精简

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


加好友 发短信
等级:二尾狐 帖子:514 积分:3247 威望:0 精华:0 注册:2015/4/22 16:20:00
表事件命令求精简  发帖心情 Post By:2015/7/24 16:36:00 [只看该作者]

If e.DataCol.Name = "乐理程度" Then
    If e.NewValue Is Nothing Then
        e.DataRow("乐理费") = Nothing
    Else
        Dim dr3  As  DataRow
        dr3 =  DataTables("课类分类表").Find("科目 = '" & e.DataRow("乐理程度") & "'")
        If dr3 IsNot Nothing Then
            e.DataRow("乐理费") = dr3("课时费")

        End If
    End If
End If

If e.DataCol.Name = "课程" Then
    If e.NewValue Is Nothing Then
        e.DataRow("课时费") = Nothing
    Else
        Dim dr1  As  DataRow
        dr1 =  DataTables("课类分类表").Find("科目 = '" & e.DataRow("课程") & "'")
        If dr1 IsNot Nothing Then
            e.DataRow("课时费") = dr1("课时费")

        End If
    End If
End If


If e.DataCol.Name = "陪练等级" Then
    If e.NewValue Is Nothing Then
        e.DataRow("陪练等级") = Nothing
    Else
        Dim dr2  As  DataRow
        dr2 =  DataTables("课类分类表").Find("科目 = '" & e.DataRow("陪练等级") & "'")
        If dr2 IsNot Nothing Then
            e.DataRow("陪练费") = dr2("课时费")
                        End If
    End If
End If

Select Case e.DataCol.Name
    Case "新加课时"
            e.DataRow("培训新缴") = e.DataRow("课时费") * e.DataRow("新加课时")

            e.DataRow("剩余课时") = e.DataRow("剩余课时") + e.DataRow("新加课时")
            e.DataRow("学费余额") = e.DataRow("培训新缴") + e.DataRow("学费余额")


                End  Select

Select Case e.DataCol.Name
    Case "新加乐理"
        e.DataRow("乐理新缴") = e.DataRow("乐理费") * e.DataRow("新加乐理")

        e.DataRow("乐理课时") = e.DataRow("乐理课时") + e.DataRow("新加乐理")
        e.DataRow("乐理学费余额") = e.DataRow("乐理学费余额") + e.DataRow("乐理新缴")

    End  Select

 Select Case e.DataCol.Name
        Case "新加陪练"
                e.DataRow("陪练新缴") = e.DataRow("陪练费") * e.DataRow("新加陪练")

                e.DataRow("陪练课时") = e.DataRow("陪练课时") + e.DataRow("新加陪练")
                e.DataRow("陪练费余额") = e.DataRow("陪练新缴") + e.DataRow("陪练费余额")

        End  Select


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


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

 你写的代码已经是最优的代码了,这样写逻辑也清晰一些。

 

 你不同列,有不同的处理,就这样写代码,不会影响效率。


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


加好友 发短信
等级:二尾狐 帖子:514 积分:3247 威望:0 精华:0 注册:2015/4/22 16:20:00
  发帖心情 Post By:2015/7/24 18:18:00 [只看该作者]

谢谢大师指点


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


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

 代码没问题。要想提高,请先去看完视频教程

 

http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&Id=67187

 


 回到顶部