Hi All, getting Invalid use of Null error from the following...
<!-- FileLists.inc - The generation of a file list from a directory -->
<!-- #include file="ShowHits.inc" -->
<%
' Procedure
' FileList of current directory settings
sub FileDirList
if showdebug <> "" then
Response.Write "MyDirectory=" & MyDirectory & "<BR>"
Response.Write "ScriptName=" & ScriptName & "<BR>"
Response.Write "ServerName=" & ServerName & "<BR>"
Response.Write "ServerPath=" & ServerPath & "<BR>"
Response.Write "VPathDir=" & VPathDir & "<BR>"
Response.Write "VPathDirForward=" & VPathDirForward & "<BR>"
end if
if Expanded <> "yes" then
Response.Write "<a href=" & ScriptName & "?Expanded=yes>Expand details</a><br>"
else
Response.Write "<a href=" & ScriptName & "?Expanded=no>Hide details</a><br>"
end if
' Do the current directory
GenDirList("")
dim fso, folder, folders
'create a folder object
set fso=Server.CreateObject("Scripting.FileSystemObject")
set folder=fso.GetFolder(Server.MapPath("."))
set folders=folder.subfolders
' Go through the list of folders
if folders.count>0 then
for each subfolder in folders
GenDirList(subfolder.name)
next
end if
end sub
' Procedure
' GenDirList <DirectoryName>
sub GenDirList (DirectoryName)
on error resume next
dim strQuery
strQuery = "( (#filename *.zip) OR (#filename *.doc) OR (#filename *.xls) OR (#filename *.ppt) OR (#filename *.pdf) OR (#filename *.jpg) OR (#filename *.ai) OR (#filename *.eps) OR (#filename *.gif) ) " &_
"AND (#vpath " & VPathDir & "*) AND ( @write > -720d )"
if UserSearch <> "" then
strQuery = "(" & strQuery & ") AND ( " & UserSearch & " )"
end if
if showdebug <> "" then
Response.Write "DirectoryName=" & DirectoryName & "<BR>"
Response.Write "UserSearch=" & UserSearch & "<BR>"
Response.Write "CompandSearch=" & strQuery & "<BR>"
end if
dim ixQuery ' Index Server query object.
set ixQuery = Server.CreateObject("ixsso.Query")
if (Err.description <> "") Then
Response.Write ("<p><b>Query object Error: " & Err.description & ".</b></p>" & vbCRLF)
Exit sub
end if
ixQuery.Columns = "doctitle, docsubject, docauthor, doccompany, doccomments, vpath, directory, filename, size, write, characterization, rank"
ixQuery.SortBy = "directory, docsubject, filename"
ixQuery.MaxRecords = 200
ixQuery.Query = strQuery
ixQuery.Catalog = "DCG Internal"
' Create a search utility object to allow us to specify the search type as 'deep',
' meaning it will search recursively down through the directories
dim util
set util = Server.CreateObject("ixsso.Util")
if (Err.description <> "") Then
Response.Write ("<p><b>Search Utility Error: " & Err.description & ".</b></p>" & vbCRLF)
Exit sub
end if
util.AddScopeToQuery ixQuery, VPathdirForward & "/" & DirectoryName, "shallow"
' util.AddScopeToQuery ixQuery, VPathdirForward & "/" & DirectoryName, "deep"
' Run the query (i.e. create the recordset).
dim queryRS
set queryRS = ixQuery.CreateRecordSet("nonsequential")
' Check the query result. If it timed out or return no records, then show
' an appropriate message. Otherwise, show the hits.
if (Err.description <> "") Then
Response.Write ("<p><b>Search Recordset Error: " & Err.description & ".</b></p>" & vbCRLF)
Exit sub
Else
if queryRS is Nothing Then
Response.Write ("<p>Query returned no matches.</p>" & vbCRLF)
elseif (ixQuery.QueryTimedOut) then
Response.Write ("<p><b>Error: " & timedOut_Text & ".</b></p>" & vbCRLF)
elseif (queryRS.EOF or queryRS.BOF or queryRS.RecordCount <= 0) then
' Response.Write ("<p>No matches found.</p>" & vbCRLF)
' Empty directory or catalogue hasn't caught up yet
else
' Only print the directory name IF there some matches to show
if ( DirectoryName <> "" ) Then
if ( false ) Then
' If FileList.asp is available in the directory provide a link
Response.Write ("<p><b><a href=" & DirectoryName & "/FileList.asp>"& DirectoryName & "</a></b></p>" & vbCRLF)
else
Response.Write ("<p><b>"& DirectoryName & "</b></p>" & vbCRLF)
end if
end if
call showHits(queryRS, Expanded)
if (Err.number <> 0) Then
Response.Write ("<p><b>Record Display Error: " & Err.description & ".</b></p>" & vbCRLF)
End If
end if
End If
queryRS.close
' Clean up
set queryRS = nothing
set ixQuery = nothing
set util = nothing
end sub
' Generate Audit List
sub AuditList
on error resume next
dim strQuery
if showdebug <> "" then
Response.Write "MyDirectory=" & MyDirectory & "<BR>"
Response.Write "ScriptName=" & ScriptName & "<BR>"
Response.Write "ServerName=" & ServerName & "<BR>"
Response.Write "ServerPath=" & ServerPath & "<BR>"
Response.Write "VPathDir=" & VPathDir & "<BR>"
Response.Write "VPathDirForward=" & VPathDirForward & "<BR>"
end if
strQuery = "( (#filename *.pdf) OR (#filename *.asp) OR (#filename *.htm) OR (#filename *.zip) OR (#filename *.doc) OR (#filename *.xls) OR (#filename *.ppt) ) " &_
"AND (#vpath " & VPathDir & "*) AND ( @write > -720d )"
if UserSearch <> "" then
strQuery = "(" & strQuery & ") AND ( " & UserSearch & " )"
end if
if showdebug <> "" then
Response.Write "UserSearch=" & UserSearch & "<BR>"
Response.Write "CompandSearch=" & strQuery & "<BR>"
end if
dim ixQuery ' Index Server query object.
set ixQuery = Server.CreateObject("ixsso.Query")
if (Err.description <> "") Then
Response.Write ("<p><b>Query object Error: " & Err.description & ".</b></p>" & vbCRLF)
Exit sub
end if
ixQuery.Columns = "doctitle, docsubject, docauthor, doccompany, doccomments, vpath, directory, filename, size, write, characterization, rank"
ixQuery.SortBy = "directory, docsubject, filename"
ixQuery.MaxRecords = 250
ixQuery.Query = strQuery
ixQuery.Catalog = "DCG Internal"
' Create a search utility object to allow us to specify the search type as 'deep',
' meaning it will search recursively down through the directories
dim util
set util = Server.CreateObject("ixsso.Util")
if (Err.description <> "") Then
Response.Write ("<p><b>Search Utility Error: " & Err.description & ".</b></p>" & vbCRLF)
Exit sub
end if
util.AddScopeToQuery ixQuery, VPathDirForward & "/" , "deep"
' Run the query (i.e. create the recordset).
dim queryRS
set queryRS = ixQuery.CreateRecordSet("nonsequential")
' Check the query result. If it timed out or return no records, then show
' an appropriate message. Otherwise, show the hits.
if (Err.description <> "") Then
Response.Write ("<p><b>Search Recordset Error: " & Err.description & ".</b></p>" & vbCRLF)
Exit sub
Else
if queryRS is "" Then
Response.Write ("<p>Query returned no matches.</p>" & vbCRLF)
elseif (ixQuery.QueryTimedOut) then
Response.Write ("<p><b>Error: " & timedOut_Text & ".</b></p>" & vbCRLF)
elseif (queryRS.EOF or queryRS.BOF or queryRS.RecordCount <= 0) then
' Response.Write ("<p>No matches found.</p>" & vbCRLF)
' Empty directory or catalogue hasn't caught up yet
else
call showAuditHits(queryRS)
if (Err.number <> 0) Then
Response.Write ("<p><b>Record Display Error: " & Err.description & ".</b></p>" & vbCRLF)
End If
end if
End If
queryRS.close
' Clean up
set queryRS = nothing
set ixQuery = nothing
set util = nothing
end sub
%>
heeelp
<!-- FileLists.inc - The generation of a file list from a directory -->
<!-- #include file="ShowHits.inc" -->
<%
' Procedure
' FileList of current directory settings
sub FileDirList
if showdebug <> "" then
Response.Write "MyDirectory=" & MyDirectory & "<BR>"
Response.Write "ScriptName=" & ScriptName & "<BR>"
Response.Write "ServerName=" & ServerName & "<BR>"
Response.Write "ServerPath=" & ServerPath & "<BR>"
Response.Write "VPathDir=" & VPathDir & "<BR>"
Response.Write "VPathDirForward=" & VPathDirForward & "<BR>"
end if
if Expanded <> "yes" then
Response.Write "<a href=" & ScriptName & "?Expanded=yes>Expand details</a><br>"
else
Response.Write "<a href=" & ScriptName & "?Expanded=no>Hide details</a><br>"
end if
' Do the current directory
GenDirList("")
dim fso, folder, folders
'create a folder object
set fso=Server.CreateObject("Scripting.FileSystemObject")
set folder=fso.GetFolder(Server.MapPath("."))
set folders=folder.subfolders
' Go through the list of folders
if folders.count>0 then
for each subfolder in folders
GenDirList(subfolder.name)
next
end if
end sub
' Procedure
' GenDirList <DirectoryName>
sub GenDirList (DirectoryName)
on error resume next
dim strQuery
strQuery = "( (#filename *.zip) OR (#filename *.doc) OR (#filename *.xls) OR (#filename *.ppt) OR (#filename *.pdf) OR (#filename *.jpg) OR (#filename *.ai) OR (#filename *.eps) OR (#filename *.gif) ) " &_
"AND (#vpath " & VPathDir & "*) AND ( @write > -720d )"
if UserSearch <> "" then
strQuery = "(" & strQuery & ") AND ( " & UserSearch & " )"
end if
if showdebug <> "" then
Response.Write "DirectoryName=" & DirectoryName & "<BR>"
Response.Write "UserSearch=" & UserSearch & "<BR>"
Response.Write "CompandSearch=" & strQuery & "<BR>"
end if
dim ixQuery ' Index Server query object.
set ixQuery = Server.CreateObject("ixsso.Query")
if (Err.description <> "") Then
Response.Write ("<p><b>Query object Error: " & Err.description & ".</b></p>" & vbCRLF)
Exit sub
end if
ixQuery.Columns = "doctitle, docsubject, docauthor, doccompany, doccomments, vpath, directory, filename, size, write, characterization, rank"
ixQuery.SortBy = "directory, docsubject, filename"
ixQuery.MaxRecords = 200
ixQuery.Query = strQuery
ixQuery.Catalog = "DCG Internal"
' Create a search utility object to allow us to specify the search type as 'deep',
' meaning it will search recursively down through the directories
dim util
set util = Server.CreateObject("ixsso.Util")
if (Err.description <> "") Then
Response.Write ("<p><b>Search Utility Error: " & Err.description & ".</b></p>" & vbCRLF)
Exit sub
end if
util.AddScopeToQuery ixQuery, VPathdirForward & "/" & DirectoryName, "shallow"
' util.AddScopeToQuery ixQuery, VPathdirForward & "/" & DirectoryName, "deep"
' Run the query (i.e. create the recordset).
dim queryRS
set queryRS = ixQuery.CreateRecordSet("nonsequential")
' Check the query result. If it timed out or return no records, then show
' an appropriate message. Otherwise, show the hits.
if (Err.description <> "") Then
Response.Write ("<p><b>Search Recordset Error: " & Err.description & ".</b></p>" & vbCRLF)
Exit sub
Else
if queryRS is Nothing Then
Response.Write ("<p>Query returned no matches.</p>" & vbCRLF)
elseif (ixQuery.QueryTimedOut) then
Response.Write ("<p><b>Error: " & timedOut_Text & ".</b></p>" & vbCRLF)
elseif (queryRS.EOF or queryRS.BOF or queryRS.RecordCount <= 0) then
' Response.Write ("<p>No matches found.</p>" & vbCRLF)
' Empty directory or catalogue hasn't caught up yet
else
' Only print the directory name IF there some matches to show
if ( DirectoryName <> "" ) Then
if ( false ) Then
' If FileList.asp is available in the directory provide a link
Response.Write ("<p><b><a href=" & DirectoryName & "/FileList.asp>"& DirectoryName & "</a></b></p>" & vbCRLF)
else
Response.Write ("<p><b>"& DirectoryName & "</b></p>" & vbCRLF)
end if
end if
call showHits(queryRS, Expanded)
if (Err.number <> 0) Then
Response.Write ("<p><b>Record Display Error: " & Err.description & ".</b></p>" & vbCRLF)
End If
end if
End If
queryRS.close
' Clean up
set queryRS = nothing
set ixQuery = nothing
set util = nothing
end sub
' Generate Audit List
sub AuditList
on error resume next
dim strQuery
if showdebug <> "" then
Response.Write "MyDirectory=" & MyDirectory & "<BR>"
Response.Write "ScriptName=" & ScriptName & "<BR>"
Response.Write "ServerName=" & ServerName & "<BR>"
Response.Write "ServerPath=" & ServerPath & "<BR>"
Response.Write "VPathDir=" & VPathDir & "<BR>"
Response.Write "VPathDirForward=" & VPathDirForward & "<BR>"
end if
strQuery = "( (#filename *.pdf) OR (#filename *.asp) OR (#filename *.htm) OR (#filename *.zip) OR (#filename *.doc) OR (#filename *.xls) OR (#filename *.ppt) ) " &_
"AND (#vpath " & VPathDir & "*) AND ( @write > -720d )"
if UserSearch <> "" then
strQuery = "(" & strQuery & ") AND ( " & UserSearch & " )"
end if
if showdebug <> "" then
Response.Write "UserSearch=" & UserSearch & "<BR>"
Response.Write "CompandSearch=" & strQuery & "<BR>"
end if
dim ixQuery ' Index Server query object.
set ixQuery = Server.CreateObject("ixsso.Query")
if (Err.description <> "") Then
Response.Write ("<p><b>Query object Error: " & Err.description & ".</b></p>" & vbCRLF)
Exit sub
end if
ixQuery.Columns = "doctitle, docsubject, docauthor, doccompany, doccomments, vpath, directory, filename, size, write, characterization, rank"
ixQuery.SortBy = "directory, docsubject, filename"
ixQuery.MaxRecords = 250
ixQuery.Query = strQuery
ixQuery.Catalog = "DCG Internal"
' Create a search utility object to allow us to specify the search type as 'deep',
' meaning it will search recursively down through the directories
dim util
set util = Server.CreateObject("ixsso.Util")
if (Err.description <> "") Then
Response.Write ("<p><b>Search Utility Error: " & Err.description & ".</b></p>" & vbCRLF)
Exit sub
end if
util.AddScopeToQuery ixQuery, VPathDirForward & "/" , "deep"
' Run the query (i.e. create the recordset).
dim queryRS
set queryRS = ixQuery.CreateRecordSet("nonsequential")
' Check the query result. If it timed out or return no records, then show
' an appropriate message. Otherwise, show the hits.
if (Err.description <> "") Then
Response.Write ("<p><b>Search Recordset Error: " & Err.description & ".</b></p>" & vbCRLF)
Exit sub
Else
if queryRS is "" Then
Response.Write ("<p>Query returned no matches.</p>" & vbCRLF)
elseif (ixQuery.QueryTimedOut) then
Response.Write ("<p><b>Error: " & timedOut_Text & ".</b></p>" & vbCRLF)
elseif (queryRS.EOF or queryRS.BOF or queryRS.RecordCount <= 0) then
' Response.Write ("<p>No matches found.</p>" & vbCRLF)
' Empty directory or catalogue hasn't caught up yet
else
call showAuditHits(queryRS)
if (Err.number <> 0) Then
Response.Write ("<p><b>Record Display Error: " & Err.description & ".</b></p>" & vbCRLF)
End If
end if
End If
queryRS.close
' Clean up
set queryRS = nothing
set ixQuery = nothing
set util = nothing
end sub
%>
heeelp