Foxtable(狐表)用户栏目专家坐堂 → 窗口动态生成表的行怎样定义


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

主题:窗口动态生成表的行怎样定义

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


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

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:小区车辆管理(未改前).rar


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


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

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:小区车辆管理(未改前).zip


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


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

你写的代码把点击打开窗口的表设置及生成数据写在窗口AfterLoad事件中,使得打开录入窗口不是空表,我把代码改回缴费情况表DoubleClick事件中,这样就不影响录入表了。但双击缴费情况表行,删行窗口中一行数据,再在窗口中的其它菜单栏中选批量勾选用户,把刚才删除的行勾选确定,补录刚才删除的数据,点保存,缴费情况表原来的数据依存,又新增了一行刚才删除后增加的数据,缴费情况表写了不允许重复录入依然能录入!这样重复多少次操作就重复保存多少行数据!
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:小区车辆管理(0326).rar

密码:888888

[此贴子已经被作者于2021/3/26 15:56:37编辑过]

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


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

项目事件Initialize事件已经开启了
For Each dt As DataTable In DataTables
    dt.GlobalHandler.PrepareEdit = True
Next
For Each dt As DataTable In DataTables
    dt.GlobalHandler.DataColChanging = True
Next

全局表事件DataColChanging事件也写了
'不允许重复录入:
Select Case e.DataCol.name
    Case "车牌号码","单号"
        Dim xh As String
        Dim gg As String
        If e.DataCol.Name= "车牌号码" Then
            xh = e.NewValue
            gg = e.DataRow("单号")
        Else
            gg = e.NewValue
            xh = e.DataRow("车牌号码")
        End If
        If xh > "" AndAlso gg  > "" Then
            Dim dr As DataRow = e.DataRow
            If e.DataTable.Find("车牌号码 = '" & xh & "' And 单号 = '" & gg & "'") IsNot Nothing Then
                MessageBox.Show("已经录入!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
                e.Cancel = True
            End If
        End If
End Select
依然重复录入
[此贴子已经被作者于2021/3/26 22:23:37编辑过]

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


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

看错了,我再细看一下。
[此贴子已经被作者于2021/3/26 19:54:51编辑过]

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


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

如果使用的是sqltable,直接在窗口表事件处理,不需要到全局表事件

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


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

这段代码取消了单号的录入,没取消车牌号码下拉窗口的录入,结果保存后缴费情况表还是添加了一行没单号的数据。
'不允许重复录入:
Select Case e.DataCol.name
    Case "车牌号码","单号"
        Dim xh As String
        Dim gg As String
        If e.DataCol.Name= "车牌号码" Then
            xh = e.NewValue
            gg = e.DataRow("单号")
        Else
            gg = e.NewValue
            xh = e.DataRow("车牌号码")
        End If
        If xh > "" AndAlso gg  > "" Then
            Dim dr As DataRow = e.DataRow
            If e.DataTable.Find("车牌号码 = '" & xh & "' And 单号 = '" & gg & "'") IsNot Nothing Then
                MessageBox.Show("已经录入!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
                e.Cancel = True
            End If
        End If
End Select

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


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

            If e.DataTable.Find("车牌号码 = '" & xh & "' And 单号 = '" & gg & "'") IsNot Nothing Then
                MessageBox.Show("已经录入!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
e.DataRow("车牌号码") = nothing
                e.Cancel = True
            End If

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


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

没用,没有取消车牌号码目录树的录入,还是添加了一行没单号的数据。应在目录树的下拉选项中加代码取消录入。

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


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

在窗口的DataColChanging事件中写入:
'不允许车牌号码重复
If e.DataCol.Name = "车牌号码" Then
    Dim dr As DataRow
    dr = e.DataTable.Find("[车牌号码] = '" & e.NewValue & "'")
    If dr IsNot Nothing Then
        MessageBox.Show("此车牌号码已经录入!")
        e.DataRow("住址_序号") = Nothing
        e.DataRow("住址_巷") = Nothing
        e.DataRow("住址_号") = Nothing
        e.DataRow("住址_房") = Nothing
        e.DataRow("姓名") = Nothing
        e.DataRow("固定电话") = Nothing
        e.DataRow("手机号码") = Nothing
        e.DataRow("备注") = Nothing
        e.DataRow("车牌号码") = Nothing
        e.Cancel = True
    End If
End If

可以了。

 回到顶部
总数 47 上一页 1 2 3 4 5 下一页