Foxtable(狐表)用户栏目专家坐堂 → 在分页集合版面动态添加的表如何继承基本表的表结构


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

主题:在分页集合版面动态添加的表如何继承基本表的表结构

美女呀,离线,留言给我吧!
采菊东篱下
  101楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1881 积分:10368 威望:0 精华:0 注册:2019/4/6 8:45:00
  发帖心情 Post By:2020/9/3 16:32:00 [只看该作者]

我在全局表的编辑行及添加行都加入这代码了,都不执行!
If Forms("主窗口").Controls("基本信息录入") = True Then
    Select Case Forms("主窗口").Controls("基本信息录入").Col.name
        Case "棋赛名称","编号","姓名","性别","单位","手机号码","身份","缺赛轮号","团体赛或个人赛","所属团体或个人分组","备注"
            Forms("主窗口").Controls("基本信息录入").Row("操作人姓名") = User.Name & " " & Date.Now
    End Select
End If

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


加好友 发短信
等级:超级版主 帖子:106199 积分:540118 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/9/3 17:22:00 [只看该作者]

这段代码从头错到尾,不知所云。

 回到顶部
美女呀,离线,留言给我吧!
采菊东篱下
  103楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1881 积分:10368 威望:0 精华:0 注册:2019/4/6 8:45:00
  发帖心情 Post By:2020/9/3 23:12:00 [只看该作者]

If Tables.Contains("基本信息录入") = True Then
    Select Case Forms("主窗口").Controls("基本信息录入").Table.Col.name
        Case "棋赛名称","编号","姓名","性别","单位","手机号码","身份","缺赛轮号","团体赛或个人赛","所属团体或个人分组","备注"
            Forms("主窗口").Controls("基本信息录入").Table.Row("操作人姓名") = User.Name & " " & Date.Now
    End Select
End If
这样写吗?可依然不执行。

 回到顶部
美女呀,离线,留言给我吧!
采菊东篱下
  104楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1881 积分:10368 威望:0 精华:0 注册:2019/4/6 8:45:00
  发帖心情 Post By:2020/9/3 23:19:00 [只看该作者]

这段代码在表AfterEdit事件上执行是已实现了记录操作人、录入或修改时间:
Select Case e.Col.name
    Case "日期","棋赛名称","桌号","姓名","编号","性别","积分","第几轮比赛"
        e.Row("操作人姓名") = User.Name & " " & Date.Now
End Select
但来到动态窗口就怎么改都错了。
图片点击可在新窗口打开查看此主题相关图片如下:qq图片20200903231616.png
图片点击可在新窗口打开查看

 回到顶部
美女呀,离线,留言给我吧!
采菊东篱下
  105楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1881 积分:10368 威望:0 精华:0 注册:2019/4/6 8:45:00
  发帖心情 Post By:2020/9/3 23:22:00 [只看该作者]

先判断动态表是否存在,如果存在,有录入或修改的行显示操作人姓名、修改时间。
[此贴子已经被作者于2020/9/4 9:39:35编辑过]

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


加好友 发短信
等级:超级版主 帖子:106199 积分:540118 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/9/4 9:32:00 [只看该作者]

代码放到全局表表AfterEdit事件

if e.table.name = "主窗口_基本信息录入"
Select Case e.Col.name
    Case "日期","棋赛名称","桌号","姓名","编号","性别","积分","第几轮比赛"
        e.Row("操作人姓名") = User.Name & " " & Date.Now
End Select
end if

创建控件的地方
tbl = Forms("主窗口").CreateSQLTable("基本信息录入","Select * Fro m {基本信息} Where [棋赛名称] Is Null","")
tbl.table.datatable.GlobalHandler.AfterEdit = True


 回到顶部
美女呀,离线,留言给我吧!
采菊东篱下
  107楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1881 积分:10368 威望:0 精华:0 注册:2019/4/6 8:45:00
  发帖心情 Post By:2020/9/4 9:38:00 [只看该作者]

刚看了一下全局表事件ValidateEdit事件下面的说明,它能用e参数,那么直接写成这样,能保存,但没效果。
Select Case e.Col.name
Case "棋赛名称","编号","姓名","性别","单位","手机号码","身份","缺赛轮号","团体赛或个人赛","所属团体或个人分组","备注"
e.Row("操作人姓名") = User.Name & " " & Date.Now
End Select

 回到顶部
美女呀,离线,留言给我吧!
采菊东篱下
  108楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1881 积分:10368 威望:0 精华:0 注册:2019/4/6 8:45:00
  发帖心情 Post By:2020/9/4 10:54:00 [只看该作者]

已安你写的代码这样做了,基本信息录入表依然没操作人和时间显示。
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:象棋排赛202094.foxdb


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


加好友 发短信
等级:超级版主 帖子:106199 积分:540118 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/9/4 10:59:00 [只看该作者]

AfterEdit事件,不是ValidateEdit事件,不要闭着眼睛用

 回到顶部
美女呀,离线,留言给我吧!
采菊东篱下
  110楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1881 积分:10368 威望:0 精华:0 注册:2019/4/6 8:45:00
  发帖心情 Post By:2020/9/4 11:21:00 [只看该作者]

把代码改到全局表事件的
AfterEdit事件中了

此主题相关图片如下:qq图片20200904111606.png
按此在新窗口浏览图片
注识了这代码才不报错,但不生成操作人、时间显示。
tbl.Table.DataTable.GlobalHandler.AfterEdit = True
[此贴子已经被作者于2020/9/4 11:24:25编辑过]

 回到顶部