以文本方式查看主题

-  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=142777)

--  作者:狐表(小白)
--  发布时间:2019/11/6 8:06:00
--  如何实现多个查询表分页显示
老师,你好!有三个SQL数据库视图生成的查询表,如何实现在统一窗口不同面板中分页?并利用计时器来循环执行控制三个表自动执行翻页,请详细说明。谢谢!
--  作者:有点蓝
--  发布时间:2019/11/6 9:01:00
--  
添加不同的窗口表,sqlquery类型,绑定不同的视图就行了。至于计时器的用法,之前不是已经实现了吗
--  作者:狐表(小白)
--  发布时间:2019/11/6 9:19:00
--  
afterload  和  按钮“下一页”执行报错,不存在“****”的datatable。这个两个地方要怎么修改?谢谢!
--  作者:有点蓝
--  发布时间:2019/11/6 10:06:00
--  
代码?代码?代码?
--  作者:狐表(小白)
--  发布时间:2019/11/6 10:15:00
--  
查询表1(今日计划明细)生成语句:
SELECT *  F ROM [KB_今日未完明细]


窗口(看板)afterload代码:
With DataTables("今日计划明细")
    .LoadFilter = "" \'清除加载条件
    .LoadPage = 0 \'加载第一页
    .LoadTop = 6 \'每页6行
    .Load()
    e.Form.Controls("TextBox").Value = 1 & "/" & .TotalPages
End With


计时器代码:
Dim bn As WinForm.Button = e.Form.Controls("Button7")
If bn.Name = "" Then
    bn.PerformClick()
Else
    bn.PerformClick()
End If

按钮(“button7”)“下一页”代码”:
With DataTables("今日计划明细")
If .LoadPage < .TotalPages - 1
.LoadPage = .LoadPage  + 1
Else
.LoadPage = 0
End If
.Load()
e.Form.Controls("TextBox5").Value = (.LoadPage + 1) & "/" & .TotalPages
End With

上次用的access数据做的测试没有问题了,导入实际SQL数据应用发现要修改。麻烦老师了,边学边实践问题多。
[此贴子已经被作者于2019/11/6 10:16:12编辑过]

--  作者:有点蓝
--  发布时间:2019/11/6 10:33:00
--  
看看:http://www.foxtable.com/webhelp/topics/1907.htm

SQLTable不仅会生成一个Table,还会生成一个DataTable,名称都是:

窗口名称_控件名称

例如窗口1中插入了一个名为Table1的Table,类型为SQLTable,那么窗口打开后,可以分别通过:

Tables("窗口1_Table1")
DataTables
("窗口1_Table1")

来引用其生成的Table和DataTable,这些对象在打开窗口时自动生成,在关闭窗口后将自动删除


--  作者:狐表(小白)
--  发布时间:2019/11/6 11:40:00
--  
afterload代码:
Tables("看板_Table1").Fill ("Select [单线别],[订单编号],[产品型号],[数量] Fr om [KB_今日计划明细]","zzkb",True)
With DataTables("看板_Table1").LoadFilter = ""   ‘清除加载条件
DataTables("看板_Table1").LoadPage = 0      ‘加载第一页
DataTables("看板_Table1").LoadTop = 6        ‘每页6行
DataTables("看板_Table1").Load()
e.Form.Controls("TextBox5").Value = 1 & "/" & .Totalpages           
End With
 
红色部分代码怎么写可以在控件(“textbox5”)显示当前第几页/共几页?谢谢!
[此贴子已经被作者于2019/11/6 11:40:58编辑过]

--  作者:有点蓝
--  发布时间:2019/11/6 11:54:00
--  
e.Form.Controls("TextBox5").Value = "" & 1 & "/" & .Totalpages  ......
--  作者:狐表(小白)
--  发布时间:2019/11/6 14:28:00
--  

老师,代码更改后不报错,但是“textbox5”显示的结果:第1页/共-1页,什么问题?

afterload代码:
Tables("看板_Table1").Fill ("Select [单线别],[订单编号],[产品型号],[数量] Fr om [KB_今日计划明细]","zzkb",True)
With DataTables("看板_Table1").LoadFilter = ""   ‘清除加载条件
DataTables("看板_Table1")
.LoadPage = 0      ‘加载第一页
.LoadTop = 6        ‘每页6行
.Load()
e.Form.Controls("TextBox5").Value = "" & 1 & "/" & .Totalpages           
End With

“下一页”按钮“button7”的代码需要更改吗?
With DataTables("看板_Table1")
    If .LoadPage < .TotalPages - 1
        .LoadPage = .LoadPage  + 1
    Else
        .LoadPage = 0
    End If
    .Load()
    e.Form.Controls("TextBox").Value = "第" & 1 & "页/共" & .Totalpages
End With

谢谢!
   

--  作者:有点蓝
--  发布时间:2019/11/6 14:46:00
--  
应该是表格没有数据吧