%@ LANGUAGE = VBScript %> <% ' Option Explicit %>
![]() |
Advanced SQL Sample |
SearchString = <%=SearchString%>
DocAuthorRestriction = <%=DocAuthorRestriction%>
FSRest = <%=FSRest%>
FSRestVal = <%=FSRestVal%>
FSRestOther = <%=FSRestOther%>
FMMod = <%=FMMod%>
FMModDate = <%=FMModDate%>
SortBy = <%=SortBy%>
NewQuery = <%=CStr(NewQuery)%>
UseSavedQuery = <%=CStr(UseSavedQuery)%>
<%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 + "
<% 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 "
" & chr(34) & AdoCommand.CommandText & "" & chr(34) & ".
" %>
| <%= NextRecordNumber%>. | <%if VarType(RS("DocTitle")) = 1 or RS("DocTitle") = "" then%> "><%= Server.HTMLEncode( RS("filename") )%> <%else%> "><%= Server.HTMLEncode(RS("DocTitle"))%> <%end if%> |
|
<%if VarType(RS("characterization")) = 8 and RS("characterization") <> "" then%>
Abstract: <%= Server.HTMLEncode(RS("characterization"))%>
<%end if%> |
|
|
" class="RecordStats" style="color:blue;">http://<%=Request("server_name")%><%=RS("vpath")%>
<%if RS("size") = "" then%>(size and time unknown)<%else%>size <%=RS("size")%> bytes - <%=RS("write")%> GMT<%end if%> <%if SearchString <> "" then%> <% QueryString = CStr(RS.Properties("Query Restriction")) %> <% ' Construct the URL for hit highlighting WebHitsQuery = "CiWebHitsFile=" & Server.URLEncode( RS("vpath") ) WebHitsQuery = WebHitsQuery & "&CiRestriction=" & Server.URLEncode( QueryString ) WebHitsQuery = WebHitsQuery & "&CiBeginHilite=" & Server.URLEncode( "" ) WebHitsQuery = WebHitsQuery & "&CiEndHilite=" & Server.URLEncode( "" ) WebHitsQuery = WebHitsQuery & "&CiUserParam3=" & QueryForm %> Summary
Full
<%end if%>
|
" else Response.Write "No more documents in the query
" end if end if ' NOT RS.EOF if NOT GetCiOutofDate(RS.Properties("Rowset Query Status")) then ' If the index is current, display the fact %>
The index is up to date.
<%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
%>
The query is too expensive to complete.
<%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 %>
The query took too long to complete.
<%end if%>
| <%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. %> | <%SaveQuery = UseSessions%> <%end if%> |