以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]表复制  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=104034)

--  作者:lejunwin456
--  发布时间:2017/7/21 15:07:00
--  [求助]表复制
依次打开窗口设计——查询,在查询窗口中,通过筛选时间并点击“查询”按钮可以查询出表A的数据。

表A和表B的字段结构一直,现在需要在点击查询的同时将查询的结果复制给表B。如果表B有值先清空表再复制。

--  作者:lejunwin456
--  发布时间:2017/7/21 15:08:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.rar


--  作者:lejunwin456
--  发布时间:2017/7/21 15:13:00
--  
求助!
--  作者:有点甜
--  发布时间:2017/7/21 15:46:00
--  

Dim kaishi As WinForm.DateTimePicker = e.Form.Controls("DateTimePicker1")
Dim jieshu As WinForm.DateTimePicker = e.Form.Controls("DateTimePicker2")
Dim filter As String = "1=1"
If kaishi.text > "" Then
    filter &= " and 接收时段 >= #" & kaishi.Text & "#"
End If
If jieshu.text > "" Then
    filter &= " and 接收时段 <=#" & jieshu.Text & "#"
End If
Tables("表A").Filter = filter

DataTables("表B").DataRows.Clear
For Each dr1 As Row In Tables("表A").rows
    Dim dr2 As DataRow = DataTables("表B").AddNew()
    For Each dc As DataCol In DataTables("表A").DataCols
        dr2(dc.Name) = dr1(dc.name)
    Next
Next


--  作者:lejunwin456
--  发布时间:2017/7/21 16:32:00
--  
还有2个问题,

1、按照上述格式,真实环境中,表A同步到表B后,日期时间值发生了变化,如上
图片点击可在新窗口打开查看此主题相关图片如下:qq图片20170721162602.png
图片点击可在新窗口打开查看
图:

2、表B新增字段“耗时”,耗时字段值为\'操作时段\'减去\'接收时段\'的差值并换算出小时数

请大神指点下!

--  作者:lejunwin456
--  发布时间:2017/7/21 16:56:00
--  
求助
--  作者:lejunwin456
--  发布时间:2017/7/21 17:03:00
--  
第一个问题是字段类型的问题 已解决  因为表A是字符型 表B改成字符型即可  现在的问题是表B如何转换两列并计算出时间差值
--  作者:有点甜
--  发布时间:2017/7/21 17:27:00
--  

表B的DataColChanged事件

 

Select Case e.DataCol.Name
    Case "接收时段","操作时段"
        Dim dr As DataRow = e.DataRow
        If dr.IsNull("接收时段") OrElse dr.IsNull("操作时段") Then
            dr("耗时") = Nothing
        Else
            Dim tp As TimeSpan = dr("完成日期") - dr("开始日期")
            dr("耗时") = tp.TotalHours
        End If
End Select

[此贴子已经被作者于2017/7/21 17:27:14编辑过]

--  作者:lejunwin456
--  发布时间:2017/7/21 17:35:00
--  
.NET Framework 版本:2.0.50727.8669
Foxtable 版本:2017.6.12.1
错误所在事件:表,临时表A,DataColChanged
详细错误信息:
调用的目标发生了异常。
从字符串“2017-07-21 17:30:05”到类型“Double”的转换无效。
输入字符串的格式不正确。


--  作者:lejunwin456
--  发布时间:2017/7/21 17:37:00
--  
点击查询 A表复制到B表时  b表报错了 耗时字段无值  其他值可以过来