以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]求教如何查询后台数据?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=109733)

--  作者:静听枫雨
--  发布时间:2017/11/18 9:54:00
--  [求助]求教如何查询后台数据?
我做了一个分页,每页显示25条,查询时,只能查当前页的内容,查不了所有数据。

Tables("纸张设置").ApplyFilter = False
Dim Filter As String
Dim ComboBox1 As String =  e.Form.Controls("ComboBox1").text
If ComboBox1  > "" Then
    Filter &= iif(Filter > "",  " and  " ,"") & " 纸张名称 like \'%" & ComboBox1  & "%\'"
End If
Tables("纸张设置").Filter = Filter

这是我的查询代码,要改为后台查询,请问如何改?

--  作者:有点蓝
--  发布时间:2017/11/18 10:06:00
--  
这样做和分页是有冲突的

……
dataTables("纸张设置").loadFilter = Filter
dataTables("纸张设置").load

--  作者:静听枫雨
--  发布时间:2017/11/18 10:11:00
--  
谢谢版主,还有一个问题,就是添加的时候,ID重复,ID会接着第一页的最后一个往后走,而不是跟着后台数据的ID走
--  作者:有点蓝
--  发布时间:2017/11/18 10:38:00
--  
代码?实例?
--  作者:有点蓝
--  发布时间:2017/11/18 10:39:00
--  
http://www.foxtable.com/webhelp/scr/2902.htm
--  作者:静听枫雨
--  发布时间:2017/11/18 10:55:00
--  
就是 我加载了一页 25条记录,然后我要向这个表添加数据时,是接着25条记录后面的ID添加,而不是从后台数据的最后ID添加,这个要怎么改, 添加的代码就是 Tables("纸张设置").AddNew()
--  作者:静听枫雨
--  发布时间:2017/11/18 10:58:00
--  
因为他在当前页面添加数据,所以ID就跟后台的ID重复了
--  作者:有点蓝
--  发布时间:2017/11/18 11:00:00
--  
贴出完整代码啊
--  作者:静听枫雨
--  发布时间:2017/11/18 11:52:00
--  


    With DataTables("纸张设置")
        .LoadFilter = "" \'一定要清除加载条件
        .LoadTop = 25
        .LoadPage = 0
        .Load()
    End With
    With DataTables("客户表")
        .LoadFilter = "" \'一定要清除加载条件
        .LoadTop = 25
        .LoadPage = 0
        .Load()
    End With

 

 

Dim bh As String = "KH"  & Format(Date.Today,"yyMMdd") \'取得客户编号的8位前缀
If e.DataRow("客户ID").StartsWith(bh) = False \'如果客户编号的前8位不符
    Dim max As String
    Dim idx As Integer
    max = e.DataTable.Compute("Max(客户ID)","客户ID like \'" & BH & "*\'") \'取得该天的最大客户编号
    If max > "" Then \'如果存在最大客户编号
        idx = CInt(max.Substring(8,2)) + 1 \'获得最大客户编号的后三位顺序号,并加1
    Else
        idx = 1 \'否则顺序号等于1
    End If
    e.DataRow("客户ID") = bh &  Format(idx,"00")
End If

 

 

ID会重复。

[此贴子已经被作者于2017/11/18 11:53:09编辑过]

--  作者:有点蓝
--  发布时间:2017/11/18 11:55:00
--  
max = e.DataTable.SqlCompute("Max(客户ID)","客户ID like \'" & BH & "%\'")