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


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

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

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


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

保存后基本信息的数据被替代了!且很多空行!




[此贴子已经被作者于2020/9/1 21:27:21编辑过]

 回到顶部
帅哥,在线噢!
有点蓝
  52楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


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

如果要判断所有列为空,看43楼

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


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

Dim t As Table = Forms("主窗口").Controls("基本信息录入").Table
Dim Filter As String = "1=1"
For Each dc As Col In t.Cols
    Filter = Filter & " And " & dc.Name & " Is Not Null"
Next
t.Filter  = Filter 

Dim nr As DataRow
For Each dr As Row In t.rows
    For Each c2 As Col In t.Cols
        nr = DataTables("基本信息").AddNew()
        nr(c2.Name) = dr(c2.Name)
    Next
Next
DataTables("基本信息").Save()
DataTables("基本信息").Load
安照这代码执行,基本信息录入数据全消失了,所有行都被删除了!基本信息表并没有取得任何数据,录入失败,白做!
[此贴子已经被作者于2020/9/1 22:44:04编辑过]

 回到顶部
帅哥,在线噢!
有点蓝
  54楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


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

说明这些行每行都至少有一个列是空的,不符合条件。再说这个只是做筛选,数据还在的

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


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

肯定有空列,而且不止一列,说明这代码无法实现录入。

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


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

缺赛轮号、备注两列有数据就录进去,没数据就为空。

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


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

其实单据也一样,如进、出仓单据,一般都有备注栏方便人说明,备注栏不一定有数据,但缺之不行,有就保存到数据库后台,没就为空,这些都是企业必要的要求。

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


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

在基本信息录入里数据已经消失了,这是临时表,没后台数据,消失了就等于没了,要重新录入,白干!

 回到顶部
帅哥,在线噢!
有点蓝
  59楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


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

到现在如果连筛选的原理还搞不懂,不仅仅白干,也白学了。

如果只是判断某几列是否为空,而不是所有列,参考
Dim dt As DataTable = Forms("主窗口").Controls("基本信息录入").Table.DataTable
    For Each dr As DataRow In dt.Select("[姓名] Is Not null and 列1 is not null and 列2 .........")
        For Each c2 As Col In Forms("主窗口").Controls("基本信息").Cols
            For Each c1 As DataCol In dt.DataCols
                Dim nr As DataRow = DataTables("基本信息").AddNew()
      nr(c2.Name) = dr(c2.Name)
            Next
        Next
    Next
DataTables("基本信息").Load ‘load前会自动保存

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


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

我要求的是行不能为空不是列不能为空,之所以定义列,是因为只有列属性里有name,我要用它获取位置,昨晚执行了你这段代码后在基本信息表中确定不见添加任何数据,刚重启后才见昨天录入的人数,录入数据要重启后才见不方便,代码中不是已有
DataTables("基本信息").Save()
DataTables("基本信息").Load
代码吗?似乎不应重启才见。

[此贴子已经被作者于2020/9/2 11:58:44编辑过]

 回到顶部
总数 123 上一页 1 2 3 4 5 6 7 8 9 10 下一页 ..13