以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]这段代码问题在哪里?(已解决)  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=31827)

--  作者:yyzlxc
--  发布时间:2013/4/21 12:58:00
--  [求助]这段代码问题在哪里?(已解决)

两个按钮的区别,加载单位的按钮里增加了Load语句(最后7行代码),在按加载全部按钮时,运行正常。在按加载单位按钮时,提示"至少一个参数没有被指定",并终止运行,问题在哪里?请各位老师指教,谢谢!!

说明,因为是简化案例,代码的结构是按项目的需要来设定,还有很多数据的。


Dim dw As String
dw = e.Form.Controls("ComboBox1").Value
\'生成临时表1
Dim dtb As New DataTableBuilder("临时表1")
dtb.AddDef("编号", Gettype(String), 16)
dtb.AddDef("姓名", Gettype(String), 16)
dtb.Build()
MainTable= Tables("临时表1")
\'加载全部名单
DataTables("临时表1").Fill("Select [_Identify],编号,姓名 From {a}",False)
\'生成临时表2
Dim g As new OuterTableBuilder
g.TableName = "临时表2"
g.SelectString = "Select [_Identify],编号,单位 From {b}"
g.Build
Tables("临时表2").AutoSizeCols()
\'增加列
Dim t As Table = Tables("临时表1")
t.DataTable.DataCols.Add("单位",Gettype(String),16)
\'填充单位
For Each dr As DataRow In DataTables("临时表1").DataRows
    Dim pr1 As DataRow
    If dr.IsNull("编号") Then
        dr("单位") = Nothing
    Else
        pr1 = DataTables("临时表2").Find("编号 = \'" & dr("编号") & "\'")
        If pr1 IsNot Nothing Then
            dr("单位") = pr1("单位")
        Else
            dr("单位") = Nothing
        End If
    End If
Next
\'加载单位名单
If dw <> "" Then
    DataTables("临时表1").LoadFilter = "单位 = \'"& dw &"\'"
    DataTables("临时表1").Load
Else
    DataTables("临时表1").LoadFilter = ""
    DataTables("临时表1").Load
End If
DataTables("临时表1").Save()

 

 

 下载信息  [文件大小:   下载次数: ]
点击浏览该文件:管理项目3.foxdb

[此贴子已经被作者于2013-4-21 14:47:21编辑过]

--  作者:唐尸三摆手
--  发布时间:2013/4/21 14:03:00
--  
楼主,临时表怎么能load呢,明明是个临时表嘛。
--  作者:yyzlxc
--  发布时间:2013/4/21 14:47:00
--  

谢谢唐老师的指教,用 Tables("临时表1").Filter = "单位 = \'"& dw &"\'"来替换load,可以实现目的。再次感谢唐老师!!