domino设计表单和页面 联系客服

发布时间 : 星期六 文章domino设计表单和页面更新完毕开始阅读

文档时,Web客户机将显示引用的文档。例如:下面的$$Return公式显示Lotus日本站点的主页。

\3.1.18 定制搜索表单

可定制“网络域搜索”表单以满足组织的需要。用于“网络域搜索”的表单有SearchForm、SeachResults、ResultEntry和DetailedResultEntry,它们位于“目录(R5.0)”模板中。要定制表单,可基于模板创建数据库,或将表单拷贝并粘贴到网络域目录中(此网络域目录在用于“网络域搜索”的Domino服务器上)。

如果定制在Web上使用的搜索表单,请参考下表。表中列出了Search Query表单上使用的URL命令,以便通过SearchDomainURL进行最初的搜索。这些命令也用于结果页面上,以供结果表单上的按钮和热点使用。例如:在最初的搜索表单上,可以指定&SearchOrder=2。SearchOrder域在结果页面中的值将等于2。结果表单上的“下一个”按钮可使用此域值来搜索下一页面或通过指定其他的域值进行重新设置。

虽然可为某些域指定TRUE和FALSE两种域值,但这些域值进入结果页面时均为1或0。

表3-5

URL命令 描述 缺省值 Query 搜索字符串 无 SearchMax 总共能返回项目的最大数目;0=无 不受限制 SearchWv 包括单词变量:TRUE(或1)TRUE 或FALSE(或0) SearchOrder 1 1=按相关性 2=按日期升序 3=按日期降序 SearchThesaurus 使用同义词:TRUE(或1)或FALSE FALSE(或0) (R5搜索引擎忽略此选项) 续 表 SearchFuzzy 使用模糊搜索:TRUE(或1)FALSE 或FALSE(或0) SearchEntry 用于每个结果项目的表单名称 “ResultEntry” Start 开始文档以翻开书页;0=未翻开0 书页 Count 返回翻开书页的页数;0=未翻开0 书页 Scope 0 搜索范围: 1=限于Notes数据库 2=限于文件系统 0=都包括 如果正在定制用于Notes客户机的搜索表单,则需要使用FTDomainSearch成员函数。

3.1.18.1 定制搜索结果表单

搜索结果可使用SearchResults表单、ResultEntry和DetailedResultEntry表单来显示。SearchResults表单定义每个结果页面的布局。ResultEntry和DetailedResultEntry表单定义页面中单个结果的格式,并且返回的每个结果均重复此格式。在Web中,可以通过SearchEntry域/参数指定此表单的名称。下面是用于ResultEntry和DetailedResultEntry表单的域。

表3-6

域名 描述 DSCreationTime 文档的创建时间 DSModifiedTime 文档的修改时间 DSURL 指向文档的URL DSDBTitle 数据库标题 DSDocSummary 文档摘要 DSDocTitle 文档标题 DSDocAuthor 文档作者 DSScore 相关得分 DSSServer 用于索引文档的服务器名称 DSType “0”表示Notes文档,“1”表示外部文档或文件系统文档 可用希望的任何名称命名结果表单,然后在SearchDomain URL中指定选定的名称或将名称指定给FTDomainSearch LotusScript呼叫。如果没有在URL中命名一个表单,Web将查找名为$$SearchDomainTemplate的表单。

3.1.18.2 如何使用SearchResults和ResultEntry/DetailedResultEntry表单

将此LotusScript附加到搜索表单上供Notes客户机使用的“搜索”操作热点的click事件中。呼叫结果表单和结果项目表单的名称的行以粗体显示。

Sub Click(Source As Button) Dim s As New NotesSession Dim db As NotesDatabase Dim w As New NotesUIWorkspace Dim uidoc As NotesUIDocument Dim q As String Dim l As Integer Dim d As Integer Dim sort As String

Dim stype As Integer Dim useint As Integer Dim rtype As String Dim rformname As String Set db=s.CurrentDatabase Set uidoc = w.currentdocument uidoc.refresh Set doc=uidoc.Document q=doc.query(0) l=doc.resultlimit(0) d=doc.MaxDisplay(0) sort = doc.sort(0) usestr = doc.use sscope=doc.searchscope rtype=doc.GetItemValue(\ If rtype = \

rformname=\ Else rformname=\ End If Select Case sort Case \ stype = FT_SCORES Case \ stype = FT_DATE_ASC Case \ stype = FT_DATE_DES End Select Forall values In usestr If values = \ If values = \ End Forall Forall values In sscope If values = \TABASE If values = \ End Forall

On Error Resume Next If db.isopen Then If Err <> 0 Then Messagebox STR_DBOPEN_ERROR Err = 0 Exit Sub End If Set srdoc = db.ftdomainsearch(q, l, stype,useint, 0,d,rformname) If Err <> 0 Then Messagebox STR_FTERROR_PREFIX & Error$, 0 , STR_ERROR Err=0 Exit Sub End If srdoc.Form=\ Call w.EditDocument(False, srdoc, True) End If End Sub

提示 必须在“表单属性”框中选择“产生所有域的HTML”选项,这样当数据库在Web浏览器和服务器之间传递时可保存域值。 3.1.18.3 为页面结果使用导航按钮

为了能在结果页面中来回导航,可将按钮或热点添加到SearchResults表单中。使用“下一个”或“前一个”按钮而用到的域列在下面的表格中。在Notes客户机上,按钮应该重新调用具有校正过参数的LotusScript FTDomainSearch函数。在Web上,按钮应该被用于构造新的SearchDomain URL以取得新的结果。

注释 在搜索结果表单中,如果使用可编辑域,请选择“数据库属性”中的选项“Web访问:当生成页面时使用JavaScript”。如果选择了此选项,则在click事件中计算附加到按钮或热点的URL;如果未选择此选项,则装入页面时计算URL。

表3-7 查询 使用的搜索字符串 Start 起始文档编号 Count 此页面要求的结果数 Hits 此页面返回的实际结果数(可能小于Count的值) TotalHits 搜索找到的采样总数 SearchMax 总共返回的项目的最大数目;0=没有限制