以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  DataColChanged里,能按多值字段条件查找并给值吗? 应该如何实现呢?或者要实现这功能,有更好的架构吗?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=79722)

--  作者:jinxilin
--  发布时间:2016/1/7 21:44:00
--  DataColChanged里,能按多值字段条件查找并给值吗? 应该如何实现呢?或者要实现这功能,有更好的架构吗?

DataColChanged里,能按多值字段条件查找并给值吗? 应该如何实现呢?

如下图,有2个表,表B是对应不同批次证书不同的信息内容,

在表A中,根据客户下单选择的产品,对应不同证书批次自动给出证书信息内容, 应该如何实现呢?

代码不知道如何写,



Select Case e.DataCol.Name


       Case "确认发布"

            If e.DataRow("确认发布") = True  Then  \'当点击确定要发布证书信息内容时


                Dim count As Integer =  DataTables("表B").SqlCompute("count(证书批次)", "证书批次 = \'" & e.DataRow("证书批次") & "\'" ) 

 \'表A与表B证书批次查找对应内容,能查到时


                If count >= 1 Then

                    

                Else

                    

                End If


            End If


End Select


------------------------------


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


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



[此贴子已经被作者于2016/1/7 21:52:17编辑过]

--  作者:大红袍
--  发布时间:2016/1/7 21:58:00
--  
Select Case e.DataCol.Name
    Case "确认发布"
        If e.DataRow("确认发布") = True  Then  \'当点击确定要发布证书信息内容时
            Dim fdr As DataRow =  DataTables("表B").sqlfind("证书批次 = \'" & e.DataRow("证书批次") & "\'" )
            Dim str As String = ""
            If fdr IsNot Nothing Then
                For Each s As String In e.DataRow("产品选择").split(",")
                    If DataTables("表B").datacols.Contains(s) Then
                        str &= fdr(s) & ","
                    End If
                Next
                str = str.trim(",")
            End If
            e.DataRow("产品证书") = str
        End If
End Select

--  作者:jinxilin
--  发布时间:2016/1/8 1:02:00
--  
好的,谢谢