以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  循环查找到集合  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=126262)

--  作者:cd_tdh
--  发布时间:2018/10/17 16:50:00
--  循环查找到集合

老师,有没循环查找数据库的写法啊?

想做个待办事项,应为表多,都是没加载的,怎么去循环查找?


--  作者:有点甜
--  发布时间:2018/10/17 17:10:00
--  

参考

 

http://www.foxtable.com/webhelp/scr/1943.htm

 


--  作者:cd_tdh
--  发布时间:2018/10/18 11:20:00
--  

老师,换了种方式,更新状态没执行呢?麻烦看看。

    \'添加到待办事项
    If e.DataCol.Name = "审批状态"
        If e.DataRow("审批状态") <> "已审批完成"  AndAlso e.DataRow("审批状态") <> ""  Then
            Dim nma() As String = {"审批状态","ID"} \'A表数据来源列
            Dim nmb() As String = {"审批状态","ID"} \'B表数据接收列
            Dim dr As DataRow = DataTables("待办事项").SQLFind("ID = \'" & e.DataRow("ID") & "\'")
            If dr Is Nothing Then  \'如果没有找到
                dr=DataTables("待办事项").AddNew()
                dr("表名") = CurrentTable.Name
                For i As Integer = 0 To nma.Length - 1
                    dr(nmb(i)) = e.DataRow(nma(i))
                Next
            Else
                Select  Case e.DataCol.Name
                    Case  "表名","ID","审批状态"
                        Dim Filter As String = "ID = \'" & e.DataRow("ID") & "\'"
                        Dim drs  As  List(Of DataRow) =  DataTables("待办事项").Select(Filter)
                        For Each ds  As  DataRow  In drs
                            ds(e.DataCol.Name) = e.NewValue
                        Next
                    End  Select
                End If
            Else
                DataTables("待办事项").sqlDeletefor("ID = \'" & e.DataRow("ID") & "\'")
                DataTables("待办事项").load
            End If
        End If

 


--  作者:有点甜
--  发布时间:2018/10/18 11:35:00
--  
\'添加到待办事项
Select  Case e.DataCol.Name
    Case  "表名","ID","审批状态"
        If e.DataRow("审批状态") <> "已审批完成"  AndAlso e.DataRow("审批状态") <> ""  Then
            Dim nma() As String = {"审批状态","ID"} \'A表数据来源列
            Dim nmb() As String = {"审批状态","ID"} \'B表数据接收列
            Dim dr As DataRow = DataTables("待办事项").SQLFind("ID = \'" & e.DataRow("ID") & "\'")
            If dr Is Nothing Then  \'如果没有找到
                dr=DataTables("待办事项").AddNew()
                dr("表名") = CurrentTable.Name
                For i As Integer = 0 To nma.Length - 1
                    dr(nmb(i)) = e.DataRow(nma(i))
                Next
            Else
                Dim Filter As String = "ID = \'" & e.DataRow("ID") & "\'"
                Dim drs  As  List(Of DataRow) =  DataTables("待办事项").Select(Filter)
                For Each ds  As  DataRow  In drs
                    ds(e.DataCol.Name) = e.NewValue
                Next
            End If
        Else
            DataTables("待办事项").sqlDeletefor("ID = \'" & e.DataRow("ID") & "\'")
            DataTables("待办事项").load
        End If
End Select

--  作者:cd_tdh
--  发布时间:2018/10/18 11:44:00
--  

谢谢

[此贴子已经被作者于2018/10/18 11:45:02编辑过]