以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  fill 后的条件加载(用sqlload)。。。  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=49526)

--  作者:fubblyc
--  发布时间:2014/4/19 14:06:00
--  fill 后的条件加载(用sqlload)。。。

各位老师好,我用fill查询表后  ,做了下面的条件加载,但是没有按条件加载,还是全部加载了。不知是怎么错了。。。。

 

  sql = " "
    sql+ = "  " 
\'MessageBox.Show(sql)
Tables("售后录入关联VIP行为信息_售后录入关联VIP行为信息").Fill(sql,"VIP数据", True)

Dim dt3 As DataTable = DataTables("售后录入关联VIP行为信息_售后录入关联VIP行为信息")
    With Tables("售后录入_售后录入")
        If .Current Is Nothing Then

            dt3.loadFilter = "[_Identify] Is Null"
            dt3.sqlload(sql)

        Else

            dt3.loadFilter = "VIP卡号 = \'" & .Current("店员填写_VIP卡号") & "\'"
            dt3.sqlload(sql)

        End If
    End With


--  作者:Bin
--  发布时间:2014/4/19 14:08:00
--  
sqlload 是根据SQL加载数据.  和LoadFilter无关

设置LoadFilter应该直接LOad


--  作者:fubblyc
--  发布时间:2014/4/19 15:13:00
--  

哦,谢谢Bin老师,我这样改了,可以实现:

 

Dim Filter As String
With Tables("售后录入_售后录入")
    If .Current Is Nothing Then
        Filter = "[_Identify] Is Null"
    Else
        Filter = "VIP卡号 = \'" & .Current("店员填写_VIP卡号") & "\'"
    End If
End With

sql = "  "
sql+ = " As a  where " & Filter

Tables("售后录入关联VIP行为信息_售后录入关联VIP行为信息").Fill(sql,"VIP数据", True)