以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]请教一个代码问题(又要麻烦各位啦)  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=38545)

--  作者:paniwangji
--  发布时间:2013/7/31 16:39:00
--  [求助]请教一个代码问题(又要麻烦各位啦)

先上图....


图片点击可在新窗口打开查看此主题相关图片如下:qq图片20130731162316.jpg
图片点击可在新窗口打开查看
图1


图片点击可在新窗口打开查看此主题相关图片如下:qq图片20130731162435.jpg
图片点击可在新窗口打开查看
图2

图一是主表

图二是临时表

 

我目前已经实现的功能是:图一窗口中点击可以打开如图二这样的临时窗口,之后输入一些数据,然后点击‘一键导入’可以将图二表中的数据按照姓名导入主表中,这个功能已经实现了。目前的问题是如果临时表中的姓名输入错误就不好办了。

请问,能不能实现,当点击‘一键导入’时,先检查临时表的姓名列和主表的姓名列是否能对应上,如果有输入错误的姓名就弹出提示“*** 不在主表姓名列中!”。

谢谢。

 

先附上目前我‘一键导入’的代码(新手啊):

Dim c As Integer = 0
For Each dr2 As DataRow In DataTables("临时表").DataRows
    For Each dr1 As DataRow In DataTables("主表").Select("[月份] = \'" & _qjDate & "\'")
        If dr2("姓名") = dr1("姓名") And dr1("月份") = _qjDate Then
            dr1("奖励_项目调整")+ = dr2("奖励_项目调整")
            dr1("奖励_房租补")+ = dr2("奖励_房租补")
            dr1("奖励_报销")+ = dr2("奖励_报销")
            dr1("奖励_项目奖励")+ = dr2("奖励_项目奖励")
            dr1("奖励_年终奖励")+ = dr2("奖励_年终奖励")
            dr1("奖励_其他")+ = dr2("奖励_其他")
            dr1("奖励_其他奖励备注") = dr2("奖励_其他奖励备注")
            dr1("处罚_考勤处罚")+ = dr2("处罚_考勤处罚")
            dr1("处罚_项目处罚")+ = dr2("处罚_项目处罚")
            dr1("处罚_违纪处罚")+ = dr2("处罚_违纪处罚")
            c = c + 1
        End If
    Next
Next
DataTables("考勤表").Save
MessageBox.show("保存成功!共计导入:" & c & "条数据!")

 


--  作者:Bin
--  发布时间:2013/7/31 16:45:00
--  
上例子吧
--  作者:lsy
--  发布时间:2013/7/31 16:47:00
--  

新手有新招数,老手有老糊涂。

行不行,还得实例测试,才有定论。


--  作者:paniwangji
--  发布时间:2013/7/31 17:05:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:例子.table

刚做了一个小例子,刚刚忘了说了,还有一个月份列。看例子应该能明白,不符合月份的名字也要提示。谢谢
--  作者:Bin
--  发布时间:2013/7/31 17:19:00
--  
例子没看懂是什么情况啊,也没见有导入啊?
--  作者:lsy
--  发布时间:2013/7/31 18:00:00
--  

换个思路:

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:副表录入.table

[此贴子已经被作者于2013-7-31 18:00:43编辑过]

--  作者:paniwangji
--  发布时间:2013/7/31 19:57:00
--  

不好意思,刚刚回来。

我的例子的意思是这样的:

打开窗口1----新增记录----输入姓名 补助信息等----然后点一键导入 ----如果输入的姓名在主表的姓名列中可以找到则导入补助信息,否则提示哪个姓名有问题。

 

lsy:可能我没有说清,不是要在主表增加记录,而是根据姓名 覆盖原有记录。

[此贴子已经被作者于2013-7-31 19:59:31编辑过]

--  作者:有点甜
--  发布时间:2013/7/31 20:58:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:例子.table


--  作者:lsy
--  发布时间:2013/7/31 21:18:00
--  

即使如你所言,也只是修改原记录,直接在主表或副表修改,何必绕弯费事呢?


--  作者:paniwangji
--  发布时间:2013/7/31 22:34:00
--  

因为这个是给别人做的,而且使用的时候主表的姓名列会很多,而需要修改的人名可能就几个,所以找起来会比较麻烦,故此才想到这样。