Foxtable(狐表)用户栏目专家坐堂 → [求助]关于将表2中的日期按条件自动填入到表1的特定列


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

主题:[求助]关于将表2中的日期按条件自动填入到表1的特定列

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


加好友 发短信
等级:童狐 帖子:253 积分:2573 威望:0 精华:0 注册:2016/8/8 9:50:00
[求助]关于将表2中的日期按条件自动填入到表1的特定列  发帖心情 Post By:2017/3/6 14:55:00 [只看该作者]

 老师,请教问题:

有两个表:表1有编号,第一入库日期,第二入库日期,第三入库日期;表2有编号,日期和是否入库
我想:如果表2中"是否入库"列出现“入库”,就将对应的日期按前后顺序填入到表1中第一入库日期,第二入库日期,第三……

我写的代码如下:
Sel ect Case e.DataCol.Name
    Case "编号","是否入库"
        Dim dr As DataRow
        Dim pr1,pr2,pr3 As DataRow
        dr = DataTables("表1").Find("[编号] = '" & e.DataRow("编号") & "'" )
        pr1 = DataTables("表2").Find("[编号] = '" & e.DataRow("编号") & "'" And "[是否入库] Like '入库'","日期")
        pr2 = DataTables("表2").Find("[编号] = '" & e.DataRow("编号") & "'" And "[是否入库] Like '入库'","日期",1)
        pr3 = DataTables("表2").Find("[编号] = '" & e.DataRow("编号") & "'" And "[是否入库] Like '入库'","日期",2)
        If dr Is Nothing Then
            dr = DataTables("表1").AddNew()
        End If
            dr("编号") = e.DataRow("编号")
        If dr IsNot Nothing Then
            If pr1 IsNot Nothing Then
                dr("第一入库日期") = pr1("日期")
                dr("第二入库日期") = pr2("日期")
                dr("第三入库日期") = pr3("日期")
            Else
                dr("第一入库日期") = Nothing
                dr("第二入库日期") = Nothing
                dr("第三入库日期") = Nothing
            End If
        End If
End Sel ect

结果出错,请老师指点!
[此贴子已经被作者于2017/3/6 14:54:52编辑过]

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


加好友 发短信
等级:童狐 帖子:253 积分:2573 威望:0 精华:0 注册:2016/8/8 9:50:00
  发帖心情 Post By:2017/3/6 15:03:00 [只看该作者]

上传附件

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


加好友 发短信
等级:童狐 帖子:253 积分:2573 威望:0 精华:0 注册:2016/8/8 9:50:00
  发帖心情 Post By:2017/3/6 15:05:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目2.table


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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/3/6 15:40:00 [只看该作者]

Select Case e.DataCol.Name
    Case "编号","是否入库"
        Dim dr As DataRow
        dr = DataTables("表1").Find("[编号] = '" & e.DataRow("编号") & "'" )
        Dim drs = DataTables("表2").Select("[编号] = '" & e.DataRow("编号") & "' And [是否入库] Like '%入库%'","日期")
       
        If dr Is Nothing Then
            dr = DataTables("表1").AddNew()
        End If
        dr("编号") = e.DataRow("编号")
       
        If drs.count > 0 Then
            dr("第一入库日期") = drs(0)("日期")
        Else
            dr("第一入库日期") = Nothing
           
        End If
        If drs.count > 1 Then
            dr("第二入库日期") = drs(1)("日期")
        Else
            dr("第二入库日期") = Nothing
        End If
        If drs.count > 2 Then
            dr("第三入库日期") = drs(2)("日期")
        Else
            dr("第三入库日期") = Nothing
        End If
End Select

 回到顶部
客人(219.239.*.*)
  5楼


  发帖心情 Post By:2017/3/6 16:07:00 [只看该作者]

 谢谢老师,解决了!

 回到顶部