以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 这个数据运用如何实现? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=130371) |
||||
-- 作者:18651810926 -- 发布时间:2019/1/20 12:30:00 -- 这个数据运用如何实现? 此主题相关图片如下:000000000001.png 大神,想实现这个功能,代码应该如何写啊? 例如表2中的工号18的课程时长引用表1中工号18的总课程时长(两个课程时长的合计数),表1中的课程时长按不同工号合计,哪怕是再加新数据,也会自动变化。
此主题相关图片如下:0000000000002.png [此贴子已经被作者于2019/1/20 12:32:24编辑过]
|
||||
-- 作者:18651810926 -- 发布时间:2019/1/20 14:23:00 -- 谁知道如何实现啊,给点建议啊,谢谢 |
||||
-- 作者:y2287958 -- 发布时间:2019/1/20 17:28:00 -- 直接上个实例不好吗 |
||||
-- 作者:rjh4078 -- 发布时间:2019/1/20 19:19:00 -- 表1 datacolchanged事件中 select e.datacol.name case "工号",“课程时长” dim dr as datarow=datatables("表2").find("工号=’" & e.datarow("工号") & “‘”) if dr isnot nothing then dr("授课时长")=e.datatable.Compute("sum(课程时长)",“工号=‘” & e.datarow("工号") & "\'") endif end select 然后重置下表1工号列或课程时长列 |
||||
-- 作者:18651810926 -- 发布时间:2019/1/20 19:34:00 -- 谢谢,真的搞定了,我再研究一下代码,学习学习 |
||||
-- 作者:18651810926 -- 发布时间:2019/1/21 9:45:00 -- 每次重置工号,就会再次添加重复数据,怎么破? Case "工号" Dim dr As DataRow = DataTables("学员资料").Find("姓名= \'" & e.OldValue & "\'") If dr Is Nothing Then dr = DataTables("学员资料").AddNew() dr("姓名") = e.DataRow("姓名") dr("工号") = e.DataRow("工号") dr("性别") = e.DataRow("性别") dr("生日") = e.DataRow("生日") dr("年龄") = e.DataRow("年龄") dr("司龄") = e.DataRow("司龄") dr("部门") = e.DataRow("部门") dr("岗位") = e.DataRow("岗位") dr("职级") = e.DataRow("职级") dr("学历") = e.DataRow("学历") dr("电话") = e.DataRow("电话") dr("工作状态") = e.DataRow("工作状态") dr("转正日期") = e.DataRow("转正日期") Else dr("工号") = e.DataRow("工号") End If Case "性别","工号","生日","年龄","司龄","部门","岗位","职级","学历","电话","工作状态","转正日期" Dim dr As DataRow = DataTables("学员资料").Find("工号= \'" & e.DataRow("工号") & "\'") If dr IsNot Nothing Then dr(e.DataCol.Name) = e.DataRow(e.DataCol.Name) End If End Select
|
||||
-- 作者:有点甜 -- 发布时间:2019/1/21 10:39:00 --
这段代码没问题,做个例子发上来测试。
|
||||
-- 作者:18651810926 -- 发布时间:2019/1/21 10:48:00 --
|
||||
-- 作者:有点甜 -- 发布时间:2019/1/21 11:06:00 -- 改成
Dim dr As DataRow = DataTables("学员资料").Find("工号= \'" & e.OldValue & "\'") |