Foxtable(狐表)用户栏目专家坐堂 → [求助]帮忙看一下 下面的代码 每行是什么意思


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

主题:[求助]帮忙看一下 下面的代码 每行是什么意思

帅哥哟,离线,有人找我吗?
菜鸟入门狐表
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:20 积分:246 威望:0 精华:0 注册:2018/3/13 11:44:00
[求助]帮忙看一下 下面的代码 每行是什么意思  发帖心情 Post By:2018/3/21 1:44:00 [只看该作者]

能用下面的代码自动添加数据,当然删除也是自动.
我其实对下面的代码基本不知道什么意思 
麻烦老师些能我说一下每行代码是什么意思 谢谢 


Select Case e.DataCol.name
    Case "车牌号"
        Dim dr As DataRow = DataTables("违章通知").Find("车牌号 = '" & e.OldValue & "'")
        If dr Is Nothing Then 
            dr = DataTables("违章通知").AddNew()
            dr("车牌号") = e.DataRow("车牌号")
            dr("客户姓名") = e.DataRow("客户姓名")
          Else
            dr("车牌号") = e.DataRow("车牌号")
        End If
    Case "车牌号","客户姓名"
        Dim dr As DataRow = DataTables("违章通知").Find("车牌号 = '" & e.DataRow("车牌号") & "'")
        If dr IsNot Nothing Then
            dr(e.DataCol.Name) = e.DataRow(e.DataCol.Name)
        End If
End Select

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/3/21 9:10:00 [只看该作者]

把帮助文档->开发指南,先看一次。

 

http://www.foxtable.com/webhelp/scr/1592.htm

 


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


加好友 发短信
等级:五尾狐 帖子:1105 积分:8967 威望:0 精华:0 注册:2014/10/25 11:24:00
  发帖心情 Post By:2018/3/21 9:39:00 [只看该作者]

Select Case e.DataCol.name  'Select Case词句,后面的e.DataCol.name指变量,此语句翻译的通俗一点就是:对当前数据发生变化的列名称进行后续操作
    Case "车牌号" ‘如果当前变化的列名是 车牌号
        Dim dr As DataRow = DataTables("违章通知").Find("车牌号 = '" & e.OldValue & "'") ’定义一个变量名为dr的行,此行是通过Find查找而来,查找的表是违章通知,查找的条件是车牌号等于未修改前的车牌号
        If dr Is Nothing Then  ‘如果没找到此行,也就是说明这个违章通知表中没前你目前录入的车牌号,这时执行下面三行代码
            dr = DataTables("违章通知").AddNew() 
            dr("车牌号") = e.DataRow("车牌号")
            dr("客户姓名") = e.DataRow("客户姓名")
          Else ’如果找到了,就执行下面的一行代码
            dr("车牌号") = e.DataRow("车牌号") 
        End If
    Case "车牌号","客户姓名" ‘如果当前变化的列名是 车牌号或客户姓名
        Dim dr As DataRow = DataTables("违章通知").Find("车牌号 = '" & e.DataRow("车牌号") & "'")
        If dr IsNot Nothing Then
            dr(e.DataCol.Name) = e.DataRow(e.DataCol.Name)
        End If
End Select

代码的意思我是写了,但你这个用法我感觉是错的,你说明下你想实现怎样的功能,这个代码又是在哪个表的什么表事件中

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


加好友 发短信
等级:婴狐 帖子:20 积分:246 威望:0 精华:0 注册:2018/3/13 11:44:00
  发帖心情 Post By:2018/3/21 9:57:00 [只看该作者]

我现在有二张表  一张表是车辆信息  一张是违章通知  


我想在车辆信息表中添加一辆车的时候   违章通知里面相应的列自动添加数据  并且不能删除

代码是在车辆信息中的 DataColChanged事件中

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


加好友 发短信
等级:五尾狐 帖子:1105 积分:8967 威望:0 精华:0 注册:2014/10/25 11:24:00
  发帖心情 Post By:2018/3/21 10:01:00 [只看该作者]

车辆信息表的作用与违章通知表的作用分别是什么,我感觉你设计的思路有问题,帮你实现与讲解这个代码很简单,但我没明白你想实现什么功能

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/3/21 10:06:00 [只看该作者]

以下是引用菜鸟入门狐表在2018/3/21 9:57:00的发言:
我现在有二张表  一张表是车辆信息  一张是违章通知  


我想在车辆信息表中添加一辆车的时候   违章通知里面相应的列自动添加数据  并且不能删除

代码是在车辆信息中的 DataColChanged事件中

 

代码没问题,3楼有代码的解释,如果还是无法理解,先看看2楼,把开发基础先学习一下。

 

或者是看视频教程 http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&Id=67187

 


 回到顶部