Foxtable(狐表)用户栏目专家坐堂 → 将集合数据填充到姓名列,重复填充2000多行,什么原因?


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

主题:将集合数据填充到姓名列,重复填充2000多行,什么原因?

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


加好友 发短信
等级:五尾狐 帖子:1099 积分:8494 威望:0 精华:0 注册:2012/7/10 9:09:00
  发帖心情 Post By:2020/1/7 10:40:00 [只看该作者]

好的,谢谢


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


加好友 发短信
等级:五尾狐 帖子:1099 积分:8494 威望:0 精华:0 注册:2012/7/10 9:09:00
  发帖心情 Post By:2020/1/7 10:45:00 [只看该作者]

可以的,但能不能点一次生成数据后,如果再点,已生成数据的不再生成,能否?

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


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

Dim Vals As List(of String)
Vals = DataTables("值班排班表").GetValues("处级带班_姓名")
For Each name As String In DataTables("值班排班表").GetValues("科级带班_姓名")
    If Vals.Contains(name) = False Then vals.Add(name)
Next
For Each name As String In DataTables("值班排班表").GetValues("值班人员_姓名")
    If Vals.Contains(name) = False Then vals.Add(name)
Next
Dim dr As DataRow
For Each name As String In vals
dr = DataTables("补助测试表").find("姓名='" & name & "'")
if dr is nothing then
    dr = DataTables("补助测试表").AddNew
    dr("姓名") = name
    dr("次数") = DataTables("值班排班表").GetValues("值班日期|处级带班_姓名","处级带班_姓名='" & name & "'").Count + DataTables("值班排班表").GetValues("值班日期|科级带班_姓名","科级带班_姓名='" & name & "'").Count + DataTables("值班排班表").GetValues("值班日期|值班人员_姓名","值班人员_姓名='" & name & "'").Count
end if
Next

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


加好友 发短信
等级:五尾狐 帖子:1099 积分:8494 威望:0 精华:0 注册:2012/7/10 9:09:00
  发帖心情 Post By:2020/1/7 10:53:00 [只看该作者]

太棒了,谢谢,专家就是专家,太厉害了,谢谢

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


加好友 发短信
等级:五尾狐 帖子:1099 积分:8494 威望:0 精华:0 注册:2012/7/10 9:09:00
  发帖心情 Post By:2020/1/7 11:03:00 [只看该作者]

有点蓝,年度、节假日名称、值班日期 怎么引用 ,谢谢

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


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

使用find函数通过姓名查表然后取值:http://www.foxtable.com/webhelp/topics/0396.htm

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


加好友 发短信
等级:五尾狐 帖子:1099 积分:8494 威望:0 精华:0 注册:2012/7/10 9:09:00
  发帖心情 Post By:2020/1/7 11:11:00 [只看该作者]

我试试,谢谢


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


加好友 发短信
等级:五尾狐 帖子:1099 积分:8494 威望:0 精华:0 注册:2012/7/10 9:09:00
  发帖心情 Post By:2020/1/7 11:32:00 [只看该作者]

有点蓝,我搞不好,麻烦你帮我写一下,谢谢 

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


加好友 发短信
等级:五尾狐 帖子:1099 积分:8494 威望:0 精华:0 注册:2012/7/10 9:09:00
  发帖心情 Post By:2020/1/7 11:35:00 [只看该作者]

If e.DataCol.Name = "姓名" Then
    If
 e.NewValue Is Nothing Then
        e.
DataRow("年度") = Nothing
        e.
DataRow("节假日名称") = Nothing
        e.
DataRow("值班日期") = Nothing
       
 
    Else
        Dim
 dr As DataRow
        dr = 
DataTables("值班排班表").Find("[姓名] = '" & e.NewValue & "'")
        If
 dr IsNot Nothing 
            e.
DataRow("年度") = dr("年度")
            e.
DataRow("节假日名称") = dr("节假日名称")
            e.
DataRow("值班日期") = dr("值班日期")
          
End If
    End
 If
End If


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


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

看懂find是干嘛用的,学会怎么使用find,而不是抄代码,下面红色部分都是类似的用法

Dim Vals As List(of String)
Vals = DataTables("值班排班表").GetValues("处级带班_姓名")
For Each name As String In DataTables("值班排班表").GetValues("科级带班_姓名")
    If Vals.Contains(name) = False Then vals.Add(name)
Next
For Each name As String In DataTables("值班排班表").GetValues("值班人员_姓名")
    If Vals.Contains(name) = False Then vals.Add(name)
Next
Dim dr As DataRow
For Each name As String In vals
dr = DataTables("补助测试表").find("姓名='" & name & "'")
if dr is nothing then
    dr = DataTables("补助测试表").AddNew
    dr("姓名") = name
    dr("次数") = DataTables("值班排班表").GetValues("值班日期|处级带班_姓名","处级带班_姓名='" & name & "'").Count + DataTables("值班排班表").GetValues("值班日期|科级带班_姓名","科级带班_姓名='" & name & "'").Count + DataTables("值班排班表").GetValues("值班日期|值班人员_姓名","值班人员_姓名='" & name & "'").Count
    dim dr2 as datarow = DataTables("值班排班表").find("姓名='" & name & "'")
if dr2 isnot nothing then
    dr("年度") = dr2 ("年度")
end if
end if
Next

 回到顶部
总数 26 上一页 1 2 3 下一页