B/S下如何分页?

52Domino 2004-08-11 08:28:39
RT
...全文
207 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
yaorong 2004-08-12
  • 打赏
  • 举报
回复
'****************************************
'*那些值应该都是在那个form里记录着的,这段代码应该是一个Queryopen的代理写在某个表单,比如这里的,
'*我想应该是在showboarddetail里的
'*v_view,应该是用于显示文档的一个视图
'*v_keysort 应该是记录该视图的分类标识,即是哪个board的,v_rowsperpage,指每页的行数,就是每页显示的文档数
'*v_dispage,用来显示那样一个条条的,即"现在是第1页 [2] [3] [4] [5] 共有93页 首页 尾页 "
'*v_gopage,可能这里是个直接跳转到第几页的意思,但clpclub似乎没用这个东西
'*v_pagenum 总共的页数
'****************************************


Sub Initialize
Dim s As New NotesSession
Dim doc As NotesDocument
Set doc=s.DocumentContext
Dim db As NotesDatabase
Set db=s.CurrentDatabase
Dim view As NotesView
Set view=db.GetView(doc.v_view(0))
If view Is Nothing Then
Msgbox "view is Nothing!"
Goto bz
End If
Dim viewdc As NotesViewEntryCollection
If doc.v_keysort(0)<>"" Then
Set viewdc=view.GetAllEntriesBykey(doc.v_keysort(0))
Else
Set viewdc=view.AllEntries
End If
Dim numdoc,rowsperpage As Integer
numdoc=viewdc.count
rowsperpage=Val(doc.v_rowsperpage(0))
If (numdoc Mod rowsperpage)=0 Then
doc.v_pagenum=numdoc/rowsperpage
Else
doc.v_pagenum=Int(numdoc/rowsperpage)+1
End If
Dim start As Variant
start=Evaluate({@middle(query_string;"start=";"&")},doc)
If start(0)<>"" Then
doc.v_currentpage=Int(Val(start(0))/rowsperpage)+1
Else
doc.v_currentpage="1"
start(0)="1"
End If
Dim item As NotesItem
Set item=doc.GetFirstItem("v_dispage")
If Cstr(doc.v_gopage(0))<>"" Then
start(0)=(doc.v_gopage(0)-1)*rowsperpage+1
End If
For i=Int(Val(start(0))/rowsperpage)-4 To Int(Val(start(0))/rowsperpage)+4
If i>=0 Then
If i>=doc.v_pagenum(0) Then
Exit For
End If
If i=Int(Val(start(0))/rowsperpage) Then
Call item.AppendToTextList("当前第"+Cstr(i+1)+"页")
Else
Call item.AppendToTextList("[[<a href="+doc.form(0)+"?openform&start="+Cstr((i)*rowsperpage+1)+"&count="+Cstr(rowsperpage)+">"+Cstr(i+1)+"</a>]]")
End If
End If
Next
bz:
Print {<body onload=window.navigate("}+doc.form(0)+{?openform&start=}+start(0)+{&count=}+Cstr(rowsperpage)+{")>}
Print {</body>}
End Sub
destiny0714 2004-08-11
  • 打赏
  • 举报
回复
嵌入试图可以写现成的公式进行分页,要是用代理做就要自己写了。
sufeiya 2004-08-11
  • 打赏
  • 举报
回复
你是用视图显示还是代理打印

535

社区成员

发帖
与我相关
我的任务
社区描述
企业开发 Exchange Server
社区管理员
  • 消息协作社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧