Foxtable(狐表)用户栏目专家坐堂 → 查询与赋值并存


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

主题:查询与赋值并存

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


加好友 发短信
等级:三尾狐 帖子:672 积分:7909 威望:0 精华:0 注册:2016/6/11 11:10:00
查询与赋值并存  发帖心情 Post By:2017/10/17 20:47:00 [只看该作者]

Dim l2 As WinForm.CheckedListBox = e.Form.Controls("CheckedListBox2")  ‘计划类型列表
Dim l3 As WinForm.CheckedListBox = e.Form.Controls("CheckedListBox3")  ‘配送公司列表
Dim l5 As WinForm.CheckedListBox = e.Form.Controls("CheckedListBox5")  ‘清单列入月份列表
If e.Form.Controls("TextBox1").text<>"" Then  
    For Each r As Row In Tables("高值耗材病人使用登记表").Rows
        Dim dr As DataRow = DataTables("高值耗材病人使用登记表").Find("配送公司='"& l3.value &"' and 清单列入月份='"& l5.value &"' and 计划类型='"& l2.value &"'" )
        If dr IsNot Nothing Then
            dr("结入月份")=e.Form.Controls("TextBox1").text
        Else
            MessageBox.show("未找到")
        End If
    Next
Else
    MessageBox.show("结入月份无数据")
End If
上面的代码想要实现的功能: 如果TextBox1里面不为空时,则在【高值耗材病人使用登记表】查找符合Find后面括号条件的数据,如果找到则在【结入月份】列填上TextBox1里面的数据。但在执行上面的代码时只在找到第一个符合条件的行填上TextBox1里面的数据,搞了很久不知道哪里出现问题。帮助里面的

Dim lst1 As New List(of DataRow)
Dim
lst2 AS New List(of DataRow)
For Each
dr As DataRow In DataTables("表A").DataRows
If DataTables(
"表A").Find("第二列 = " & dr("第一列")) Is Nothing Then
lst1
.Add(dr)
Else

lst2
.Add(dr)
End If
Next
For Each
dr As DataRow In lst1
dr
("第三列") = True
Next
For Each
dr As DataRow In lst2
dr
("第三列") = False
Next

又看不懂,麻烦老师帮解决一下,谢谢!


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


加好友 发短信
等级:超级版主 帖子:110574 积分:562760 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/10/17 20:59:00 [只看该作者]

Dim l2 As WinForm.CheckedListBox = e.Form.Controls("CheckedListBox2")  '计划类型列表
Dim l3 As WinForm.CheckedListBox = e.Form.Controls("CheckedListBox3")  '配送公司列表
Dim l5 As WinForm.CheckedListBox = e.Form.Controls("CheckedListBox5")  '清单列入月份列表
Dim txt As String = e.Form.Controls("TextBox1").text 
If txt > "" Then
    Dim drs As List(Of  DataRow) = DataTables("高值耗材病人使用登记表").Select("配送公司='"& l3.value &"' and 清单列入月份='"& l5.value &"' and 计划类型='"& l2.value &"'" )
    For Each dr As DataRow In drs
        dr("结入月份") = txt
    Next
Else
    MessageBox.show("结入月份无数据")
End If

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


加好友 发短信
等级:三尾狐 帖子:672 积分:7909 威望:0 精华:0 注册:2016/6/11 11:10:00
  发帖心情 Post By:2017/10/17 21:10:00 [只看该作者]

非常感谢有点蓝老师,按您的代码问题解决了。

 回到顶部