admin
base
com
developer
drivers
ds
enduser
inetcore
inetsrv
iis
intlwb
msmq
published
query
admin
apps
bigtable
cicat
cidso
cifrmcom
cifrmwrk
cindex
ciodm
cipwd
cisvc
common
cursor
daemon
deflang
distrib
expander
fdriver
filters
fsci
h
icommand
ifilter
isearch
kbyacc
keysmith
localize
ntciutil
nullfilt
pch
qperf
query
qutil
redist
restrict
sdk
advquery
chgstate
dhtml
doc
filttst
genlib
htmlprop
ifilter
iisadmin
iissearch
adovbs.inc
advquery.asp
advsqlq.asp
default.htm
deferror.htx
fastq.htm
fastq.htx
fastq.idq
hilight.gif
htxerror.htx
idqerror.htx
ie.gif
install.bat
is2bkgnd.gif
is2foot.inc
is2logo.gif
is2style.css
ixqlang.htm
ixtiphlp.htm
ixtipsql.htm
navbar.htm
qfullhit.htw
qsumrhit.htw
query.asp
query.htm
query.htx
query.idq
rankbtn1.gif
rankbtn2.gif
rankbtn3.gif
rankbtn4.gif
rankbtn5.gif
readme.txt
reserror.htx
sqlqhit.asp
sqlqhit.htm
win2k.gif
qsample
smpfilt
squery
vb
vbadmin
vjquery
dirs
setupqry
sqltext
tdbv1
tokens
txtfilt
web
xpr
buildenv.txt
coding.doc
dirs
user.mk
dirs
project.mk
loc
mergedcomponents
multimedia
net
printscan
public
published
sdktools
shell
termsrv
tools
windows
dirs
makefil0
551 lines
20 KiB
Plaintext
551 lines
20 KiB
Plaintext
<%@ LANGUAGE = VBScript %>
|
|
<% ' Option Explicit %>
|
|
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 3.0//EN" "html.dtd">
|
|
<HTML>
|
|
<HEAD>
|
|
<!--#INCLUDE FILE="adovbs.inc" -->
|
|
|
|
<BODY background="is2bkgnd.gif" OnLoad="SetAll()" LANGUAGE=JavaScript>
|
|
<TITLE>Advanced Indexing Service Search Form</TITLE>
|
|
<LINK REL=STYLESHEET HREF="is2style.css" TYPE="text/css">
|
|
<META NAME="DESCRIPTION" CONTENT="Sample SQL query form for Indexing Service">
|
|
<META NAME="AUTHOR" CONTENT="OLE DB Provider for Indexing Service Team">
|
|
<META NAME="KEYWORDS" CONTENT="sql, query, content, hit">
|
|
<META NAME="SUBJECT" CONTENT="sample form">
|
|
<META NAME="MS.CATEGORY" CONTENT="Internet">
|
|
<META NAME="MS.LOCALE" CONTENT="EN-US">
|
|
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=Windows-1252">
|
|
<%
|
|
Const STAT_BUSY = 0
|
|
Const STAT_ERROR = &H1
|
|
Const STAT_DONE = &H2
|
|
Const STAT_REFRESH = &H3
|
|
Const STAT_PARTIAL_SCOPE = &H8
|
|
Const STAT_NOISE_WORDS = &H10
|
|
Const STAT_CONTENT_OUT_OF_DATE = &H20
|
|
Const STAT_REFRESH_INCOMPLETE = &H40
|
|
Const STAT_CONTENT_QUERY_INCOMPLETE = &H80
|
|
Const STAT_TIME_LIMIT_EXCEEDED = &H100
|
|
|
|
Function GetCiOutOfDate(value)
|
|
GetCiOutOfDate = value And STAT_CONTENT_OUT_OF_DATE
|
|
end Function
|
|
|
|
Function GetCiQueryIncomplete(value)
|
|
GetCiQueryIncomplete = value And STAT_CONTENT_QUERY_INCOMPLETE
|
|
end Function
|
|
|
|
Function GetCiQueryTimedOut(value)
|
|
GetCiQueryTimedOut = value And STAT_TIME_LIMIT_EXCEEDED
|
|
end Function
|
|
|
|
' Customization variables
|
|
DebugFlag = FALSE ' set TRUE for debugging
|
|
UseSessions = FALSE ' set FALSE to disable use of session variables
|
|
RecordsPerPage = 10 ' number of results on a page
|
|
MaxResults = 300 ' total number of results returned
|
|
FormLogo = "is2logo.gif" ' picture at top of page
|
|
|
|
' Hard-code some parameters that could be taken from the form
|
|
' SortBy = " order by rank desc" ' sort order
|
|
|
|
' Set initial conditions
|
|
NewQuery = FALSE
|
|
UseSavedQuery = FALSE
|
|
SearchString = ""
|
|
QueryForm = Request.ServerVariables("PATH_INFO")
|
|
if Request.ServerVariables("REQUEST_METHOD") = "POST" then
|
|
SearchString = Request.Form("SearchString")
|
|
DocAuthorRestriction = Request.Form("DocAuthorRestriction")
|
|
FSRest = Request.Form("FSRest")
|
|
FSRestVal = Request.Form("FSRestVal")
|
|
FSRestOther = Request.Form("FSRestOther")
|
|
FMMod = Request.Form("FMMod")
|
|
FMModDate = Request.Form("FMModDate")
|
|
SortBy = Request.Form("SortBy")
|
|
' NOTE: this will be true only if the button is actually pushed.
|
|
if Request.Form("Action") = "Execute" then
|
|
NewQuery = TRUE
|
|
NextPageNumber = -1
|
|
elseif Request.Form("pg") <> "" then
|
|
NextPageNumber = Request.Form("pg")
|
|
UseSavedQuery = UseSessions
|
|
NewQuery = not UseSessions
|
|
end if
|
|
End if
|
|
%>
|
|
</HEAD>
|
|
|
|
<TABLE>
|
|
<TR><TD><A HREF="http://www.microsoft.com/ntserver/search" target="_top">
|
|
<IMG SRC ="is2logo.gif" border=0 VALIGN=MIDDLE ALIGN="LEFT"></a></TD></TR>
|
|
<TR><TD ALIGN="RIGHT"><H3>Advanced SQL Sample</H3></TD></TR>
|
|
</TABLE>
|
|
|
|
|
|
<SCRIPT LANGUAGE=JavaScript>
|
|
<!--
|
|
function SetAll()
|
|
{
|
|
document.QForm.SearchString.value = "<%=SearchString%>";
|
|
|
|
<%select case FSRest%>
|
|
<%case " > "%>
|
|
document.QForm.FSRest.selectedIndex = 1;
|
|
<%case else%>
|
|
document.QForm.FSRest.selectedIndex = 0;
|
|
<%end select%>
|
|
|
|
<%select case FSRestVal%>
|
|
<%case "any"%>
|
|
document.QForm.FSRestVal.selectedIndex = 0;
|
|
<%case "100"%>
|
|
document.QForm.FSRestVal.selectedIndex = 1;
|
|
<%case "1024"%>
|
|
document.QForm.FSRestVal.selectedIndex = 2;
|
|
<%case "10240"%>
|
|
document.QForm.FSRestVal.selectedIndex = 3;
|
|
<%case "102400"%>
|
|
document.QForm.FSRestVal.selectedIndex = 4;
|
|
<%case "1048576"%>
|
|
document.QForm.FSRestVal.selectedIndex = 5;
|
|
<%case "10485760"%>
|
|
document.QForm.FSRestVal.selectedIndex = 6;
|
|
<%case "104857600"%>
|
|
document.QForm.FSRestVal.selectedIndex = 7;
|
|
<%case "other"%>
|
|
document.QForm.FSRestVal.selectedIndex = 8;
|
|
<%case else%>
|
|
document.QForm.FSRestVal.selectedIndex = 0;
|
|
<%end select%>
|
|
|
|
document.QForm.FSRestOther.value = "<%=FSRestOther%>";
|
|
|
|
<%select case FMMod%>
|
|
<%case "any"%>
|
|
document.QForm.FMMod.selectedIndex = 0;
|
|
<%case "DATEADD(minute, -10, GETGMTDATE())"%>
|
|
document.QForm.FMMod.selectedIndex = 1;
|
|
<%case "DATEADD(hour, -1, GETGMTDATE())"%>
|
|
document.QForm.FMMod.selectedIndex = 2;
|
|
<%case "DATEADD(day, -1, GETGMTDATE())"%>
|
|
document.QForm.FMMod.selectedIndex = 3;
|
|
<%case "DATEADD(week, -1, GETGMTDATE())"%>
|
|
document.QForm.FMMod.selectedIndex = 4;
|
|
<%case "DATEADD(month, -1, GETGMTDATE())"%>
|
|
document.QForm.FMMod.selectedIndex = 5;
|
|
<%case "DATEADD(quarter, -1, GETGMTDATE())"%>
|
|
document.QForm.FMMod.selectedIndex = 6;
|
|
<%case "DATEADD(year, -1, GETGMTDATE())"%>
|
|
document.QForm.FMMod.selectedIndex = 7;
|
|
<%case "since"%>
|
|
document.QForm.FMMod.selectedIndex = 8;
|
|
<%case else%>
|
|
document.QForm.FMMod.selectedIndex = 0;
|
|
<%end select%>
|
|
|
|
document.QForm.FMModDate.value = "<%=FMModDate%>";
|
|
|
|
document.QForm.DocAuthorRestriction.value = "<%=DocAuthorRestriction%>";
|
|
document.QForm.SearchString.focus();
|
|
}
|
|
//-->
|
|
</SCRIPT>
|
|
|
|
|
|
<FORM NAME="QForm" ACTION="<%=QueryForm%>" METHOD=POST>
|
|
<table width=500>
|
|
|
|
<tr>
|
|
<td>Enter your query: </td>
|
|
<td><INPUT TYPE="TEXT" NAME="SearchString" SIZE="51" MAXLENGTH="100" VALUE=""></td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="right" colspan=2>Document author:
|
|
<INPUT TYPE="TEXT" NAME="DocAuthorRestriction" SIZE="27" MAXLENGTH="100" VALUE="">
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="right" colspan=2>Where File Size is:
|
|
<SELECT NAME="FSRest">
|
|
<!-- <OPTION VALUE=" < " <%if FSRest = " < " then%>SELECTED <%end if%>>Less Than
|
|
<OPTION VALUE=" > " <%if FSRest = " > " then%>SELECTED <%end if%>>Greater Than
|
|
-->
|
|
<OPTION VALUE=" < " SELECTED>Less Than
|
|
<OPTION VALUE=" > " >Greater Than
|
|
</SELECT>
|
|
|
|
<SELECT NAME="FSRestVal" DEFAULT VALUE="any">
|
|
<OPTION VALUE="any" SELECTED>any size
|
|
<OPTION VALUE="100" >100 bytes
|
|
<OPTION VALUE="1024" >1K bytes
|
|
<OPTION VALUE="10240" >10K bytes
|
|
<OPTION VALUE="102400" >100K bytes
|
|
<OPTION VALUE="1048576" >1M byte
|
|
<OPTION VALUE="10485760" >10M bytes
|
|
<OPTION VALUE="104857600" >100M bytes
|
|
<OPTION VALUE="other" >Other
|
|
</SELECT>
|
|
<INPUT TYPE="TEXT" NAME="FSRestOther" SIZE="12" MAXLENGTH="9" VALUE="">
|
|
</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="right" colspan=2>Modified:
|
|
<SELECT NAME="FMMod">
|
|
<OPTION VALUE="any" SELECTED >at any time.
|
|
<OPTION VALUE="DATEADD(minute, -10, GETGMTDATE())">in the last 10 minutes.
|
|
<OPTION VALUE="DATEADD(hour, -1, GETGMTDATE())">in the last hour.
|
|
<OPTION VALUE="DATEADD(day, -1, GETGMTDATE())">in the last day.
|
|
<OPTION VALUE="DATEADD(week, -1, GETGMTDATE())">in the last week.
|
|
<OPTION VALUE="DATEADD(month, -1, GETGMTDATE())">in the last month.
|
|
<OPTION VALUE="DATEADD(quarter, -1, GETGMTDATE())">in the last quarter.
|
|
<OPTION VALUE="DATEADD(year, -1, GETGMTDATE())">in the last year.
|
|
<OPTION VALUE="since">since GMT (yy/mm/dd) .
|
|
</SELECT>
|
|
<INPUT TYPE="TEXT" NAME="FMModDate" SIZE="12" MAXLENGTH="9" VALUE="">
|
|
</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="left"><a href="ixtipsql.htm">SQL Syntax Tips</a></td>
|
|
<td align="right">
|
|
<INPUT TYPE="SUBMIT" NAME="Action" VALUE="Execute">
|
|
<INPUT TYPE="RESET" NAME="Clear" VALUE="Clear">
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
<INPUT TYPE="HIDDEN" NAME="SortBy" VALUE=" order by rank desc">
|
|
|
|
</FORM>
|
|
|
|
<BR>
|
|
<%if DebugFlag then%>
|
|
<PRE>
|
|
SearchString = <%=SearchString%>
|
|
DocAuthorRestriction = <%=DocAuthorRestriction%>
|
|
FSRest = <%=FSRest%>
|
|
FSRestVal = <%=FSRestVal%>
|
|
FSRestOther = <%=FSRestOther%>
|
|
FMMod = <%=FMMod%>
|
|
FMModDate = <%=FMModDate%>
|
|
SortBy = <%=SortBy%>
|
|
NewQuery = <%=CStr(NewQuery)%>
|
|
UseSavedQuery = <%=CStr(UseSavedQuery)%>
|
|
</PRE>
|
|
<%end if%>
|
|
|
|
<%
|
|
|
|
if NewQuery then
|
|
' First Reset the Connection, command and recordSet Object.
|
|
if UseSessions then
|
|
set session("AdoConnection") = nothing
|
|
set session("AdoCommand") = nothing
|
|
set session("Recordset") = nothing
|
|
end if
|
|
NextRecordNumber = 1
|
|
set AdoConnection = Server.CreateObject("ADODB.Connection")
|
|
set AdoCommand = Server.CreateObject("ADODB.Command")
|
|
AdoConnection.ConnectionString = "provider=msidxs"
|
|
AdoConnection.Open
|
|
set AdoCommand.ActiveConnection = AdoConnection
|
|
|
|
SelectColumns = "DocTitle, vpath, path, filename, size, write, characterization"
|
|
SelectString = "Select " + SelectColumns + " from Web..Scope('Deep traversal of ""/""') "
|
|
|
|
Composer = ""
|
|
TheQuery = ""
|
|
|
|
if SearchString <> "" then
|
|
TheQuery = "Contains('""" + SearchString + """')"
|
|
Composer = " and "
|
|
end if
|
|
|
|
if FSRestVal <> "any" then
|
|
if FSRestVal <> "other" then
|
|
if FSRestVal <> "" then
|
|
TheQuery = "Size " + FSRest + FSRestVal + " " + Composer + TheQuery
|
|
end if
|
|
else
|
|
TheQuery = "Size " + FSRest + FSRestOther + " " + Composer + TheQuery
|
|
end if
|
|
Composer = " and "
|
|
end if
|
|
|
|
if DocAuthorRestriction <> "" then
|
|
TheQuery = "Contains(DocAuthor, '""" + DocAuthorRestriction + """') " + Composer + TheQuery
|
|
Composer = " and "
|
|
end if
|
|
|
|
if FMMod <> "" AND FMMod <> "any" then
|
|
if FMMod <> "since" then
|
|
TheQuery = "(Write > " + FMMod + ") " + Composer + TheQuery
|
|
else
|
|
TheQuery = "(Write > '" + FMModDate + "') " + Composer + TheQuery
|
|
end if
|
|
end if
|
|
|
|
if TheQuery <> "" then
|
|
SelectString = SelectString + " where " + TheQuery +" "+ SortBy
|
|
else
|
|
SelectString = SelectString + SortBy +" "
|
|
end if
|
|
|
|
if DebugFlag then
|
|
Response.Write "SelectString = " + SelectString + "<BR>"
|
|
end if
|
|
|
|
AdoCommand.CommandText = SelectString
|
|
set RS = Server.CreateObject("AdoDB.Recordset")
|
|
RS.CursorType = adOpenKeyset
|
|
AdoCommand.Properties("Bookmarkable") = True
|
|
if MaxResults <> -1 then
|
|
RS.MaxRecords=MaxResults
|
|
end if
|
|
RS.Open AdoCommand
|
|
RS.PageSize = RecordsPerPage
|
|
ActiveQuery = TRUE
|
|
%>
|
|
<!-- BEGIN column header -->
|
|
<%
|
|
elseif UseSavedQuery then
|
|
if IsObject( Session("AdoConnection") ) And IsObject( Session("AdoCommand")) AND IsObject( Session("RecordSet") ) then
|
|
set AdoConnection = Session("AdoConnection")
|
|
set AdoCommand = Session("AdoCommand")
|
|
set RS = Session("RecordSet")
|
|
ActiveQuery = TRUE
|
|
else
|
|
Response.Write "ERROR - No saved query"
|
|
end if
|
|
end if
|
|
%>
|
|
|
|
<!-- BEGIN first row of query results table -->
|
|
<%
|
|
if ActiveQuery then
|
|
if RS.RecordCount <> -1 and NextPageNumber <> -1 then
|
|
RS.AbsolutePage = NextPageNumber
|
|
NextRecordNumber = RS.AbsolutePosition
|
|
end if
|
|
if not RS.EOF then
|
|
%>
|
|
|
|
<p>
|
|
<HR WIDTH=80% ALIGN=center SIZE=3>
|
|
<p>
|
|
|
|
<%
|
|
LastRecordOnPage = NextRecordNumber + RS.PageSize - 1
|
|
CurrentPage = RS.AbsolutePage
|
|
if RS.RecordCount <> -1 AND RS.RecordCount < LastRecordOnPage then
|
|
LastRecordOnPage = RS.RecordCount
|
|
end if
|
|
|
|
Response.Write "Documents " & NextRecordNumber & " to " & LastRecordOnPage
|
|
if RS.RecordCount <> -1 then
|
|
Response.Write " of " & RS.RecordCount
|
|
end if
|
|
|
|
Response.Write " matching the query: "
|
|
Response.Write "<P>" & chr(34) & AdoCommand.CommandText & "</I>" & chr(34) & ".<P>"
|
|
|
|
%>
|
|
<TABLE width=500>
|
|
<%
|
|
Do While Not RS.EOF and NextRecordNumber <= LastRecordOnPage %>
|
|
|
|
<%
|
|
' This is the detail portion for Title, Abstract, URL, Size, and
|
|
' Modification Date.
|
|
' If there is a title, display it, otherwise display the virtual path.
|
|
%>
|
|
<tr class="RecordTitle">
|
|
<td align="right" valign="top" class="RecordTitle">
|
|
<%= NextRecordNumber%>.
|
|
</td>
|
|
<td><b class="RecordTitle">
|
|
<%if VarType(RS("DocTitle")) = 1 or RS("DocTitle") = "" then%>
|
|
<b><a href="<%=RS("vpath")%>"><%= Server.HTMLEncode( RS("filename") )%></a></b>
|
|
<%else%>
|
|
<b><a href="<%=RS("vpath")%>"><%= Server.HTMLEncode(RS("DocTitle"))%></a></b>
|
|
<%end if%>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>
|
|
<%if VarType(RS("characterization")) = 8 and RS("characterization") <> "" then%>
|
|
<b><i>Abstract: </I></b><%= Server.HTMLEncode(RS("characterization"))%>
|
|
<br>
|
|
<%end if%>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td class="RecordStats" height=40>
|
|
<a href="<%=RS("vpath")%>" class="RecordStats" style="color:blue;">http://<%=Request("server_name")%><%=RS("vpath")%></a>
|
|
<br><%if RS("size") = "" then%>(size and time unknown)<%else%>size <%=RS("size")%> bytes - <%=RS("write")%> GMT<%end if%></font>
|
|
|
|
<%if SearchString <> "" then%>
|
|
<%
|
|
QueryString = CStr(RS.Properties("Query Restriction"))
|
|
%>
|
|
<BR>
|
|
<%
|
|
' Construct the URL for hit highlighting
|
|
|
|
WebHitsQuery = "CiWebHitsFile=" & Server.URLEncode( RS("vpath") )
|
|
WebHitsQuery = WebHitsQuery & "&CiRestriction=" & Server.URLEncode( QueryString )
|
|
WebHitsQuery = WebHitsQuery & "&CiBeginHilite=" & Server.URLEncode( "<b class=""Hit"">" )
|
|
WebHitsQuery = WebHitsQuery & "&CiEndHilite=" & Server.URLEncode( "</b>" )
|
|
WebHitsQuery = WebHitsQuery & "&CiUserParam3=" & QueryForm
|
|
%>
|
|
<a href="qsumrhit.htw?<%= WebHitsQuery %>">
|
|
<IMG src="hilight.gif" align="left" alt="Highlight matching terms in document using Summary mode."> Summary</a>
|
|
<br>
|
|
<a href="qfullhit.htw?<%= WebHitsQuery %>&CiHiliteType=Full">
|
|
<IMG src="hilight.gif" align="left" alt="Highlight matching terms in document."> Full</a>
|
|
<%end if%>
|
|
<br>
|
|
</td>
|
|
</tr>
|
|
|
|
<%
|
|
RS.MoveNext
|
|
NextRecordNumber = NextRecordNumber+1
|
|
Loop
|
|
%>
|
|
</TABLE>
|
|
<%
|
|
else
|
|
if NextRecordNumber = 1 then
|
|
Response.Write "No documents matched the query<P>"
|
|
else
|
|
Response.Write "No more documents in the query<P>"
|
|
end if
|
|
end if ' NOT RS.EOF
|
|
|
|
if NOT GetCiOutofDate(RS.Properties("Rowset Query Status")) then
|
|
' If the index is current, display the fact %>
|
|
|
|
<P>
|
|
<I><B>The index is up to date.</B></I><BR>
|
|
<%end if
|
|
|
|
if GetCiQueryIncomplete(RS.Properties("Rowset Query Status")) then
|
|
' If the query was not executed because it needed to enumerate to
|
|
' resolve the query instead of using the index, but AllowEnumeration
|
|
' was FALSE, let the user know
|
|
|
|
%>
|
|
<P>
|
|
<I><B>The query is too expensive to complete.</B></I><BR>
|
|
<%end if
|
|
|
|
if GetCiQueryTimedOut(RS.Properties("Rowset Query Status")) then
|
|
' If the query took too long to execute (for example, if too much work
|
|
' was required to resolve the query), let the user know %>
|
|
|
|
<P>
|
|
<I><B>The query took too long to complete.</B></I><BR>
|
|
<%end if%>
|
|
<TABLE>
|
|
<%
|
|
|
|
' This is the "previous" button.
|
|
' This retrieves the previous page of documents for the query.
|
|
|
|
SaveQuery = FALSE
|
|
if CurrentPage > 1 and RS.RecordCount <> -1 then %>
|
|
<td align="left">
|
|
<form action="<%=QueryForm%>" method="post">
|
|
<INPUT TYPE="HIDDEN" NAME="SearchString" VALUE="<%=SearchString%>">
|
|
<INPUT TYPE="HIDDEN" NAME="DocAuthorRestriction" VALUE="<%=DocAuthorRestriction%>">
|
|
<INPUT TYPE="HIDDEN" NAME="FSRest" VALUE="<%=FSRest%>">
|
|
<INPUT TYPE="HIDDEN" NAME="FSRestVal" VALUE="<%=FSRestVal%>">
|
|
<INPUT TYPE="HIDDEN" NAME="FSRestOther" VALUE="<%=FSRestOther%>">
|
|
<INPUT TYPE="HIDDEN" NAME="FMMod" VALUE="<%=FMMod%>">
|
|
<INPUT TYPE="HIDDEN" NAME="FMModDate" VALUE="<%=FMModDate%>">
|
|
<INPUT TYPE="HIDDEN" NAME="SortBy" VALUE="<%=SortBy%>">
|
|
<INPUT TYPE="HIDDEN" NAME="Scope" VALUE="<%=Scope%>">
|
|
<INPUT TYPE="HIDDEN" NAME="pg" VALUE="<%=CurrentPage-1%>" >
|
|
|
|
<input type="submit" value="Previous <%=RS.PageSize%> documents">
|
|
</form>
|
|
</td>
|
|
<%SaveQuery = UseSessions%>
|
|
<%end if%>
|
|
|
|
<%if Not RS.EOF then
|
|
' This is the "next" button.
|
|
' This button retrieves the next page of documents for the query.
|
|
|
|
%>
|
|
<td align="right">
|
|
<form action="<%=QueryForm%>" method="post">
|
|
<INPUT TYPE="HIDDEN" NAME="SearchString" VALUE="<%=SearchString%>">
|
|
<INPUT TYPE="HIDDEN" NAME="DocAuthorRestriction" VALUE="<%=DocAuthorRestriction%>">
|
|
<INPUT TYPE="HIDDEN" NAME="FSRest" VALUE="<%=FSRest%>">
|
|
<INPUT TYPE="HIDDEN" NAME="FSRestVal" VALUE="<%=FSRestVal%>">
|
|
<INPUT TYPE="HIDDEN" NAME="FSRestOther" VALUE="<%=FSRestOther%>">
|
|
<INPUT TYPE="HIDDEN" NAME="FMMod" VALUE="<%=FMMod%>">
|
|
<INPUT TYPE="HIDDEN" NAME="FMModDate" VALUE="<%=FMModDate%>">
|
|
<INPUT TYPE="HIDDEN" NAME="SortBy" VALUE="<%=SortBy%>">
|
|
<INPUT TYPE="HIDDEN" NAME="Scope" VALUE="<%=Scope%>">
|
|
<INPUT TYPE="HIDDEN" NAME="pg" VALUE="<%=CurrentPage+1%>" >
|
|
<%
|
|
NextString = "Next "
|
|
if RS.RecordCount <> -1 then
|
|
NextSet = (RS.RecordCount - NextRecordNumber) + 1
|
|
if NextSet > RS.PageSize then
|
|
NextSet = RS.PageSize
|
|
end if
|
|
NextString = NextString & NextSet & " documents"
|
|
else
|
|
NextString = NextString & " page of documents"
|
|
end if
|
|
%>
|
|
<input type="submit" value="<%=NextString%>">
|
|
</form>
|
|
</td>
|
|
<%SaveQuery = UseSessions%>
|
|
<%end if%>
|
|
</TABLE>
|
|
|
|
|
|
<% ' Display the page number
|
|
|
|
if RS.PageCount <> 0 then
|
|
Response.Write "Page " & CurrentPage
|
|
if RS.PageCount <> -1 then
|
|
Response.Write " of " & RS.PageCount
|
|
end if
|
|
end if
|
|
|
|
' If either of the previous or back buttons were displayed, save
|
|
' the query and the recordset in session variables.
|
|
if SaveQuery then
|
|
set Session("AdoConnection") = AdoConnection
|
|
set Session("AdoCommand") = AdoCommand
|
|
set Session("RecordSet") = RS
|
|
else
|
|
RS.close
|
|
AdoConnection.Close
|
|
Set RS = Nothing
|
|
Set AdoCommand = Nothing
|
|
Set AdoConnection = Nothing
|
|
if UseSessions then
|
|
set Session("AdoConnection") = Nothing
|
|
set Session("AdoCommand") = Nothing
|
|
set Session("RecordSet") = Nothing
|
|
end if
|
|
end if
|
|
end if
|
|
%>
|
|
<BR>
|
|
<!--#include file ="is2foot.inc"-->
|
|
</BODY>
|
|
</HTML>
|