Foxtable(狐表)用户栏目专家坐堂 → [求助]如何将查询到内容选择部分保存到另表中


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

主题:[求助]如何将查询到内容选择部分保存到另表中

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/4/8 14:28:00 [只看该作者]

If e.Row.Checked  Then
    Dim cs1() As String = {"项目编号","报告编号","标准","检测项目","检测方法"}
    Dim cs2() As String = {"项目编号","报告编号","标准","检测项目","检测方法"}
    Dim fdr As DataRow = DataTables("T_Item").find("项目编号 = '" & e.Row("项目编号") & "' and 报告编号 = '" & e.Row("报告编号") & "'")
    If fdr Is Nothing Then
        fdr = Tables("T_Report.T_Item").addnew.DataRow
    End If
    For i As Integer = 0 To cs1.Length - 1
        fdr(cs1(i)) = e.Row(cs2(i))
    Next
End If


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


加好友 发短信
等级:一尾狐 帖子:485 积分:4075 威望:0 精华:0 注册:2015/12/16 8:22:00
  发帖心情 Post By:2016/4/8 14:36:00 [只看该作者]

之前我已经依照这个修改过了,但他提醒在表M_ItemNo是不存在“报告编号”

但是Dim fdr As DataRow = DataTables("T_Item").find("项目编号 = '" & e.Row("项目编号") & "' and 报告编号 = '" & e.Row("报告编号") & "'")
代码也是在T_Item中find项目编号和报告编号不存在的时候新增;
图片点击可在新窗口打开查看此主题相关图片如下:8.png
图片点击可在新窗口打开查看

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/4/8 15:33:00 [只看该作者]

 既然你用两个列比较,那么这两个列你两个表都必须有啊。

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


加好友 发短信
等级:一尾狐 帖子:485 积分:4075 威望:0 精华:0 注册:2015/12/16 8:22:00
  发帖心情 Post By:2016/4/8 16:38:00 [只看该作者]

老师,改变思路,针对明细保存的时候进行列重复的判定,若重复将提醒:

For Each dr As Row In Tables("T_Item").Rows
Dim fdr As DataRow = DataTables("T_Item").Find("报告编号 = '" & dr("报告编号") & "'" And "项目编号 = '" & dr("项目编号") & "'")
If fdr IsNot Nothing Then
     MessageBox.Show("已经存在相同项目!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
    e.Cancel = True
    Else
    DataTables("T_Item").save
End If
Next

但好像只能针对报告编号进行判定,应如何修改?并且提醒的时候对话框只提醒一次并且将重复项目列出;
[此贴子已经被作者于2016/4/8 16:40:02编辑过]

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/4/8 17:06:00 [只看该作者]

Dim str As String = ""
For Each dr As Row In Tables("T_Item").Rows
    Dim fdr As DataRow = DataTables("T_Item").Find("报告编号 = '" & dr("报告编号") & "' And 项目编号 = '" & dr("项目编号") & "'")
    If fdr IsNot Nothing Then
        str &= fdr("报告编号") & " " & dr("项目编号") & "|"
    Else
        DataTables("T_Item").save
    End If
Next
If str > "" Then
    MessageBox.Show("已经存在相同项目!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
    MessageBox.Show(str.trim("|"),"提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
End If

 回到顶部
总数 15 上一页 1 2