%{**************************************************************************** <!--****************************************************************************--> <!-- --> <!-- Source File Name: sample_search.ndm --> <!-- --> <!-- Source File Description: --> <!-- --> <!-- This source file contains code for a sample net.data macro to use for --> <!-- IBM WebServer Search engine --> <!-- --> <!-- --> <!--****************************************************************************--> <!-- IBM HTTP Server for AS/400 --> <!-- Version 4 Release 4 --> <!-- --> <!-- 5769-DG1 (C) COPYRIGHT International Business Machines Corp., 1998. --> <!-- All Rights Reserved --> <!-- Licensed Materials - Property of IBM --> <!-- --> <!-- US Government Users Restricted Rights - Use, duplication or --> <!-- disclosure restricted by GSA ADP Schedule Contract with IBM Corp. --> <!--****************************************************************************--> <!-- LICENSE AND DISCLAIMER --> <!-- This material contains html source code. --> <!-- IBM grants you a nonexclusive license to use, execute, display, --> <!-- reproduce, distribute and prepare derivative works of this sample code. --> <!-- The sample code has not been thoroughly tested under all conditions. --> <!-- IBM, therefore, does not warrant or guarantee its reliability, --> <!-- serviceablity, or function. All sample code contained herein is provided --> <!-- to you "AS IS." ALL IMPLIED WARRANTIES, INCLUDING BUT NOT LIMITED TO THE --> <!-- IMPLIED WARRANTIES OF MERCHANTABILLITY AND FITNESS FOR A PARTICULAR --> <!-- PURPOSE, ARE EXPRESSLY DISCLAIMED. --> ****************************************************************************%} %{ CHANGE - Added DTW_PAD_PGM_PARMS="NO" to override INI file %} %{ CHANGE - Added field support of search %} %{ CHANGE - Add previous button %} %{ CHANGE - Add search within search results %} %{ CHANGE - Add sort search results on ranking (default), title, date. %} %{ Note: This macro has defaults set appropriately for the sample Recipes index. The Recipes index must be built by the webserver administrator from the recipe directory using the Webserver Search Administration forms. Information for building the Recipes index is as follows: Index Name: Recipes Index Directory: /QIBM/UserData/HTTPSVR/index |
Directory containing recipes (html): /QIBM/ProdData/HTTP/Public/HTTPSVR Mapping rules file name (optional): /QIBM/UserData/HTTPSVR/index/Recipes.MAP_FILE   The mapping rules file should be built based on the webserver instance that will be used to run this macro. If used, the mapping rules file name should be entered in Step 1 below.   To use this macro, copy it to your own directory (e.g. /mydir/macros/mysearch.ndm) and modify it using the directions supplied in Steps 1, 2, and 3 below. Your webserver instance must be configured to run Net.Data. To execute the macro you would enter a URL such as the following: http://myserver.com/cgi-bin/db2www/mydir/macros/mysearch.ndm/simple %}   %{**************************************************************************** ***************************** Define Section ******************************* ****************************************************************************%} %{The following include file contains definitions of all Webserver Search return code messages. Do not remove this statement. You can change the MRI29xx for your language feature. %} %include "/QIBM/ProdData/HTTPSVR/MRI2924/Macro/qzhasrch.nds"   %DEFINE { %{Pass parameters as null-terminated - do not change this%} DTW_PAD_PGM_PARMS ="NO"   %{ ---- STEP 1 -----%} %{ The following 3 statements must be set appropriately for the index being searched %} idxIndexName = "Recipes" idxDir = "/QIBM/UserData/HTTPSVR/index" mapFile="" %{ ---- End of Step 1 ----%}   idxRC = "" frmCaseSensitive="NO" frmStemming = "NO" frmFieldName="BODY" LastDoc="0" PGM_Name = "/QSYS.LIB/QHTTPSVR.LIB/QZHASRCH.PGM" ListTable = %TABLE ResultsTable=%TABLE FieldsTable=%TABLE %{ Columns in ResultsTable %} resDocNum = "1" resDocURL = "2" |
resDocOccur = "3" resDocRating = "4" resDocTitle = "5" resDocText = "6" resDocSize = "7" resDocModified = "8" frmSearchType = "" frmSortOrder="" frmAscDesc="" NewString="" String2 = "" BackupString2="" FromSearchForm = "FALSE" %}   %{**************************************************************************** *********************** Function Definition Section ************************ ****************************************************************************%}   %{ ************************************************************ Function: search_index Language Environment: DIRECTCALL Description: Search an index Parameters to program: IN Request_Type Search Query_Type - simple or query Index_name - name of the index Index_dir - directory to store index files SearchString - String containing search terms StartNumber - Return documents starting at... MaxCount - Maximum # occurrences/hits Case_Sensitive -'yes' or 'no' Precision - Level of matching desired '1' - '100' percent Stemming - Stemming desired ('yes', 'no') Logical - Logical operator between search terms ('AND', 'OR', 'BLOCK') SearchPreference - 'wildcard' or 'fuzzy' Map_File - Full path name of file containing mapping rules OUT DocumentHits - Number of document hits Occurrences - Number of occurrences matching search string DocumentsReturned - Number of documents returned Results - Table to contain results Return_Code IN Field - The field to search on. The default is to search all of the docum Order - Sort ascending or descending |
  Returns: N/A ************************************************************ %} %FUNCTION(DTW_DIRECTCALL) search_index(IN CHAR(6) Request_Type, %{ 'Search' %} CHAR(8) Query_Type, %{ 'simple' or 'query' %} CHAR(10) Index_Name, %{ Name of the index %} CHAR(256) Index_Dir, %{ Directory of the index files %} CHAR(256) SearchString, %{ String containing search terms %} CHAR(6) StartNumber, %{ Return documents starting at... %} CHAR(6) MaxCount, %{ Maximum # occurrences/hits %} CHAR(4) Case_Sensitive, %{ 'yes' or 'no' %} CHAR(3) Precision, %{ Level of matching desired '1' - '100' CHAR(4) Stemming, %{ Stemming desired ('yes', 'no') %} CHAR(6) Logical, %{ Logical operator between search terms CHAR(8) SearchPreference, %{ 'wildcard' or 'fuzzy' %} CHAR(256) Map_File, %{ Full path name of file containing map OUT CHAR(6) DocumentHits, %{ Number of document hits %} CHAR(6) Occurrences, %{ Number of occurrences matching search CHAR(6) DocumentsReturned, %{ Number of documents returned %} DTWTABLE Results, %{ Table to contain results %} CHAR(8) Return_Code, %{ Return code %} IN CHAR(30) Field, %{ Field selected %} CHAR(30) SortBy, %{ Sort by rank, title, date %} %{ Ascen CHAR(30) Order ){ %EXEC{ $(PGM_Name) %} %report{%} %}   %{ Retrieve fields enabled for this index %}   %FUNCTION(DTW_DIRECTCALL) get_fields (IN CHAR(12) Request_Type, %{ 'Fields %} CHAR(10) Index_Name, %{ Name of the index %} CHAR(256) Index_Dir, %{ Directory of the index files %} OUT DTWTABLE FieldsList, %{ Table to hold fields %} CHAR(8) Return_Code){ %EXEC{ $(PGM_Name) %} %REPORT {%} %}   %{ ************************************************************ |
DEFINE block: defsrchtop Description: Reuseable form for top section ************************************************************ %} %DEFINE defsrchtop = { <html> <head> <title>Search for documents</title> </head> <body bgcolor="#FFFFFF"> <table border="0" cellpadding="0" cellspacing="0" width="100%"> <tr> <td><h2>Search for documents</h2></td>   </tr> </table> %}   %DEFINE defsrchtop2={ <html> <head> <title>Webserver Search Results</title> </head> <body bgcolor="#FFFFFF"> <table border="0" cellpadding="0" cellspacing="0" width="100%"> <tr> <td><h2>Webserver Search Results</h2></td>   </tr> </table> %}   %{ ************************************************************ HTML block: simple Description: Display simple search form ************************************************************ %}   %HTML (simple) {   $(defsrchtop) <script language="JavaScript"> function validateGtrsrch(form) {   if (form.frmSearchString.value=="") { alert("$(GEN5131)") |
form.frmSearchString.focus() return false }     return true } </script>   <FORM NAME="search" ACTION="output" METHOD="post" onSubmit="return validateGtrsrch(this)"> <INPUT TYPE="hidden" NAME="frmQueryType" VALUE="SIMPLE"> <INPUT TYPE="hidden" NAME="frmIndexName" VALUE="$(idxIndexName)"> <INPUT TYPE="hidden" NAME="frmDir" VALUE="$(idxDir)"> <INPUT TYPE="hidden" NAME="frmMapFile" VALUE="$(mapFile)"> <INPUT TYPE="hidden" NAME="frmStartNum" VALUE="1"> <INPUT TYPE="hidden" NAME="frmPreference" VALUE="wildcard"> %{ Add additional hidden fields here for any input fields removed below %}     @DTW_ASSIGN(frmDir,idxDir) @DTW_ASSIGN(frmIndexName,idxIndexName)   %{Retrieve the fields enabled for this index%} @DTW_ASSIGN(frmRequest,"FIELDS") @get_fields(frmRequest,frmIndexName, frmDir, FieldsTable,idxRC)   <ul> <li>Phrases with embedded blanks must be surrounded by double quotes. <li>Terms with embedded double quotes should include an additional pair of imbedded double quotes. <li>Wildcard characters are * for zero or more characters or ? for a single character. </ul>   <table> <tr><td><b>Enter search terms :</b></td>   %{ Remove the following line if advanced search should not be made available to user %} <td><a href="advanced?frmIndexName=$(frmIndexName)&frmDir=$(frmDir)">Advanced search</a></td> </tr> <tr><td><INPUT TYPE="text" SIZE=50 NAME="frmSearchString" VALUE=""></td> <td><INPUT TYPE="submit" NAME="Submit" VALUE="Search" ></td></tr> </table>   %{ ---- Step 2 ---- %} %{ All or portions of the following fields and text can be changed or removed. |
Decide which of the following fields to display on the form and remove the ones that you do not want the user to modify. For each field removed, a hidden field with the same name must be defined above with the appropriate default VALUE set. The field names are: frmCaseSensitive, frmStemming, frmLogical, frmPrecision, frmMaxCount,and frmFieldName (new) %}     <p><INPUT TYPE="checkbox" NAME="frmCaseSensitive" VALUE="yes">Case sensitive search <br><INPUT TYPE="checkbox" NAME="frmStemming" VALUE="yes">English stemming <br> <br> %{ Show dropdown of sort order %} <b>Sort results by:</b> <table> <tr> <td> <select NAME="frmSortOrder"> <option VALUE="SORT_BY_RANK" SELECTED>Ranking <option VALUE="SORT_BY_TITLE" >Title <option VALUE="SORT_BY_DATE" >Date </select> </td> <td> <select NAME="frmAscDesc"> <option VALUE="DESCENDING" SELECTED>Descending order <option VALUE="ASCENDING" >Ascending order </select> </td> </tr> </table> <br> %{Show dropdown of fields if any are enabled - new %} <b>Select the scope of the search:</b> <select NAME="frmFieldName"> @DTW_ASSIGN(optValue,"BODY") <option VALUE="$(optValue)" SELECTED>Search all of the document @dtw_assign(loopStop, @DTW_TB_rROWS(FieldsTable)) @dtw_assign(loopCounter, "1") %WHILE (loopCounter <= $(loopStop)) { @DTW_ASSIGN(optValue, @DTW_TB_rGETV(FieldsTable, $(loopCounter), "1"))   %IF(optValue=="TITLE_TAG") <option VALUE="$(optValue)">Search on Title %ENDIF |
%IF(optValue=="META_ALL_TAGS") <option VALUE="$(optValue)">Search on all strings in META tags %ENDIF %IF(optValue=="META_ABSTRACT_TAG") <option VALUE="$(optValue)">Search on META tag NAME = Abstract %ENDIF %IF(optValue=="META_AUTHOR_TAG") <option VALUE="$(optValue)">Search on META tag NAME = Author %ENDIF %IF(optValue=="META_DESCRIPTION_TAG") <option VALUE="$(optValue)">Search on META tag NAME = Descripton %ENDIF %IF(optValue=="META_KEYWORD_TAG") <option VALUE="$(optValue)">Search on META tag NAME = Keywords %ENDIF @dtw_Add(loopCounter, "1", loopCounter) %} </select> <p><b>Select the operator to define the relationship between terms in the search string</b>: <br> <table><tr><td> <INPUT TYPE="radio" NAME="frmLogical" VALUE="AND" CHECKED><b>AND: </b>Find documents containin <br><INPUT TYPE="radio" NAME="frmLogical" VALUE="OR"><b>OR: </b>Find documents containing at l <br><INPUT TYPE="radio" NAME="frmLogical" VALUE="BLOCK"><b>SAME SENTENCE: </b>Find documents w </td></tr></table> <p><b>Precision of search terms</b> <table> <tr><td colspan=2><INPUT TYPE="radio" NAME="frmPrecision" VALUE="100" CHECKED>Find the exact match <br><INPUT TYPE="radio" NAME="frmPrecision" VALUE="60">Find a fuzzy or close match</td></tr> </table> <table> <tr><td> <b>Number of search results to return :</b></td><td> <INPUT Type="text" NAME="frmMaxCount" SIZE="2" </tr> </table> %{ ---- End of Step 2 ---- %}   </FORM> </BODY> </HTML> %}   %{ ************************************************************ HTML block: advanced Description: Display advanced boolean search form |
************************************************************ %}   %HTML (advanced) {   $(defsrchtop) <script language="JavaScript"> function validateGtrsrch(form) {   if (form.frmSearchString.value=="") { alert("$(GEN5131)") form.frmSearchString.focus() return false }     return true } </script> %{Retrieve the fields enabled for this index%} @DTW_ASSIGN(frmRequest,"FIELDS") @get_fields(frmRequest,frmIndexName, frmDir, FieldsTable,idxRC)     <FORM NAME="search" ACTION="output" METHOD="post" onSubmit="return validateGtrsrch(this)"> <INPUT TYPE="hidden" NAME="frmQueryType" VALUE="QUERY"> <INPUT TYPE="hidden" NAME="frmIndexName" VALUE="$(idxIndexName)"> <INPUT TYPE="hidden" NAME="frmDir" VALUE="$(idxDir)"> <INPUT TYPE="hidden" NAME="frmMapFile" VALUE="$(mapFile)"> <INPUT TYPE="hidden" NAME="frmStartNum" VALUE="1"> <INPUT TYPE="hidden" NAME="frmPreference" VALUE="wildcard"> <INPUT TYPE="hidden" NAME="frmLogical" VALUE="AND"> <INPUT TYPE="hidden" NAME="frmPrecision" VALUE="100"> <INPUT TYPE="hidden" NAME="frmCaseSensitive" VALUE="yes"> <INPUT TYPE="hidden" NAME="frmStemming" VALUE="no"> <INPUT TYPE="hidden" NAME="frmFieldName" VALUE="$(frmFieldName)">   <ul> <li>Terms must be separated by a boolean operator (<b>AND</b> or <b>*</b>,<b>OR</b> or <b>+</b>,<b> <li>Parentheses may be used to group operations, for example,(<i>disk</i><b> OR</b> <i>DASD</i>) <b> <li>Phrases with embedded blanks must be surrounded by double quotes. <li>Terms with embedded double quotes should include an additional pair of imbedded double quotes. <li>Wildcard characters are <b>*</b> for zero or more characters or <b>?</b> for a single character. <li>Attributes are <b>word[precision or matching level (%nn) ][scope of search or field (@Fn)][case_ the Title of the document. |
  <li>Fields enabled for this index: @dtw_assign(loopStop, @DTW_TB_rROWS(FieldsTable))   <ul> %IF(loopStop=="0") <li>None </ul> %ELSE <ul>     @dtw_assign(loopCounter, "1")   %WHILE (loopCounter <= $(loopStop)) { @DTW_ASSIGN(optValue, @DTW_TB_rGETV(FieldsTable, $(loopCounter), "1"))   %IF(optValue=="TITLE_TAG") <li>@F1 - Search on Title %ENDIF %IF(optValue=="META_ALL_TAGS") <li>@F2 - Search on all strings in META tags %ENDIF %IF(optValue=="META_ABSTRACT_TAG") <li>@F3 - Search on META tag NAME = Abstract %ENDIF %IF(optValue=="META_AUTHOR_TAG") <li>@F4 - Search on META tag NAME = Author %ENDIF %IF(optValue=="META_DESCRIPTION_TAG") <li>@F5 - Search on META tag NAME = Description %ENDIF %IF(optValue=="META_KEYWORD_TAG") <li>@F6 - Search on META tag NAME = Keywords %ENDIF @dtw_Add(loopCounter, "1", loopCounter) %} </ul> %ENDIF </ul>   <table> <tr><td><b>Enter search terms :</b></td> <td><a href="simple?frmIndexName=$(frmIndexName)&frmDir=$(frmDir)">Simple search</a></td></tr> |
<tr><td><INPUT TYPE="text" SIZE=50 NAME="frmSearchString" VALUE=""></td> <td><INPUT TYPE="submit" NAME="Submit" VALUE="Search" ></td></tr> </table> %{ Show dropdown of sort order %} <b>Sort results by:</b> <table> <tr> <td> <select NAME="frmSortOrder"> <option VALUE="SORT_BY_RANK" SELECTED>Ranking <option VALUE="SORT_BY_TITLE" >Title <option VALUE="SORT_BY_DATE" >Date </select> </td> <td> <select NAME="frmAscDesc"> <option VALUE="DESCENDING" SELECTED>Descending order <option VALUE="ASCENDING" >Ascending order </select> </td> </tr> </table> <br>   </table>       <p>Number of search results to return : <INPUT Type="text" NAME="frmMaxCount" SIZE="2" MAXLENGTH="2"     </FORM> </BODY> </HTML> %}   %{ ************************************************************ HTML block: output Description: Display results of search ************************************************************ %}   %HTML (output) { <script language="JavaScript"> function validateGtrsrch(form) { |
  if (form.frmSearchString.value=="") { alert("$(GEN5131)") form.frmSearchString.focus() return false }     return true } </script>   %{ Set up for search in results %}   %IF(frmSearchType=="NEW_SEARCH"||frmSearchType=="") @DTW_ASSIGN(String2,frmSearchString) @DTW_ASSIGN(BackupString2,"") %ELSE %IF (FromSearchForm == "TRUE") %{ save the previous query to restore in case of error %} @DTW_ASSIGN(BackupString2,String2) %{ check if advanced search %} %IF(frmQueryType=="QUERY") %{ Add ( ) to new string %} @DTW_ASSIGN(NewString,frmSearchString) @DTW_CONCAT("(",NewString,NewString) @DTW_CONCAT(NewString,")",NewString) %{ Add ( ) to old string %} @DTW_CONCAT("(",String2,String2) @DTW_CONCAT(String2," ) AND $(NewString)",String2) %{ Add ( ) to new string %} %ELSE %{ simple search - just add term since AND, OR, etc. is set on first form %} @DTW_CONCAT(String2," $(frmSearchString)",String2) %ENDIF %ENDIF   %ENDIF   %{ NOTE - frmSearchString parameter changed to String2. This call moved outside of form. %} @search_index("Search", frmQueryType, frmIndexName, frmDir, String2, frmStartNum, frmMaxCount, frmCa   %{ ---- Step 3 ---- %} %{ Modify the following section to display the search results as you see fit. |
The following Net.Data variables can be used anywhere on the page or left off completely: Variables for the page: $(Hits) = Number of documents containing search terms $(Occurrences) = Number of occurrences of the search terms in all documents $(DocsReturned) = Number of documents returned on this page Variables in ResultsTable for each document: resDocNum = Ordinal number of the document returned resDocURL = URL used to display the document resDocOccur = Number of occurrences of the search words in the document resDocRating = The document's rating resDocTitle = The document's title resDocText = The first 150 characters in the document resDocSize = The size of the document in bytes resDocModified = The date the document was last modified %}   %{ check for syntax errors on the search string and return to previous string on error %}   %IF (idxRC!="TSE0"&& idxRC!="TSE73") %{ There is a syntax error or some other error%} @DTW_ASSIGN(String2,BackupString2) %ENDIF   <FORM NAME="searchAgain" ACTION="output" METHOD="post" onSubmit="return validateGtrsrch(this)">   %IF(frmQueryType=="QUERY") <b>$(tAdvanced)</b> %ELSE <b>$(tSimple)</b> %ENDIF <p> <table border="2" bgcolor="#EBF2FF"> <tr> <td colspan="2"><b>Enter search terms:</b></td>   </tr> <tr> <td><INPUT TYPE="text" SIZE=40 NAME="frmSearchString" VALUE="@DTW_rHTMLENCODE(frmSearchString)"></td <td><INPUT TYPE="submit" NAME="Submit" VALUE="Search"></td> </tr> </table>   <table border="1" bgcolor="#C9DBFF"> <tr> |
%IF(frmSearchType==""|| frmSearchType=="NEW_SEARCH")     <td><INPUT TYPE="radio" NAME="frmSearchType" VALUE="NEW_SEARCH" CHECKED>New search</td> <td><INPUT TYPE="radio" NAME="frmSearchType" VALUE="SEARCH_IN_RESULTS">Search in results</td> %ELSE <td><INPUT TYPE="radio" NAME="frmSearchType" VALUE="NEW_SEARCH" >New search</td> <td><INPUT TYPE="radio" NAME="frmSearchType" VALUE="SEARCH_IN_RESULTS" CHECKED>Search in results</t %ENDIF </tr> </table>   <INPUT TYPE="hidden" NAME="frmRequest" VALUE="$(frmRequest)"> <INPUT TYPE="hidden" NAME="frmQueryType" VALUE="$(frmQueryType)"> <INPUT TYPE="hidden" NAME="frmIndexName" VALUE="$(frmIndexName)"> <INPUT TYPE="hidden" NAME="frmDir" VALUE="$(frmDir)"> <INPUT TYPE="hidden" NAME="frmMapFile" VALUE="$(frmMapFile)"> <INPUT TYPE="hidden" NAME="frmStartNum" VALUE="1"> <INPUT TYPE="hidden" NAME="frmStemming" VALUE="$(frmStemming)"> <INPUT TYPE="hidden" NAME="frmPreference" VALUE="$(frmPreference)"> <INPUT TYPE="hidden" NAME="frmLogical" VALUE="$(frmLogical)"> <INPUT TYPE="hidden" NAME="frmPrecision" VALUE="$(frmPrecision)"> <INPUT TYPE="hidden" NAME="frmCaseSensitive" VALUE="$(frmCaseSensitive)"> <INPUT TYPE="hidden" NAME="frmMaxCount" VALUE="$(frmMaxCount)"> <INPUT TYPE="hidden" NAME="frmFieldName" VALUE="$(frmFieldName)"> <INPUT TYPE="hidden" NAME="FromSearchForm" VALUE="TRUE"> <INPUT TYPE="hidden" NAME="NewString" VALUE="@DTW_rHTMLENCODE(NewString)"> <INPUT TYPE="hidden" NAME="String2" VALUE="@DTW_rHTMLENCODE(String2)"> <INPUT TYPE="hidden" NAME="frmSortOrder" VALUE="$(frmSortOrder)"> <INPUT TYPE="hidden" NAME="frmAscDesc" VALUE="$(frmAscDesc)"> </FORM>   <p><small>Search for: $(String2)</small> %IF (idxRC == "TSE0")   <p><small>Number of documents containing search terms: $(Hits)</small> <br><small>Number of occurrences of the search terms: $(Occurrences)</small> @dtw_assign(loopStop, @DTW_TB_rROWS(ResultsTable)) @dtw_assign(loopCounter, "1")   %WHILE (loopCounter <= $(loopStop)) { <dl><dt><b>@DTW_TB_rGETV(ResultsTable, loopCounter, resDocNum). </b><a href="@DTW_TB_rGETV(ResultsTable, loopCounter, resDocURL)"><b>@DTW_TB_rGETV(ResultsTabl <dd>@DTW_TB_rGETV(ResultsTable, loopCounter, resDocText) |
<br><b>URL:</b> <font color=green>@DTW_TB_rGETV(ResultsTable, loopCounter, resDocURL)<br> Rating: @DTW_TB_rGETV(ResultsTable, loopCounter, resDocRating)%; Last Modified: @DTW_TB_rGETV( @dtw_Assign(LastDoc, @DTW_TB_rGETV(ResultsTable, loopCounter, resDocNum)) @dtw_Add(loopCounter, "1", loopCounter) %}   <br><small>Number of documents returned: $(DocsReturned) </small>   %{ ---- End of Step 3 ---- %}   %{ Set up for Next and Previous buttons %} <table> <tr><td> %IF ($(LastDoc) > $(DocsReturned)) <FORM NAME="next" ACTION="output" METHOD="post"> <p><INPUT TYPE="submit" NAME="Submit" VALUE="Previous"> <INPUT TYPE="hidden" NAME="frmStartNum" VALUE="@dtw_rSubtract(frmStartNum,frmMaxCount)"> <INPUT TYPE="hidden" NAME="frmSearchString" VALUE="@DTW_rHTMLENCODE(frmSearchString)"> <INPUT TYPE="hidden" NAME="frmQueryType" VALUE="$(frmQueryType)"> <INPUT TYPE="hidden" NAME="frmIndexName" VALUE="$(frmIndexName)"> <INPUT TYPE="hidden" NAME="frmDir" VALUE="$(frmDir)"> <INPUT TYPE="hidden" NAME="frmMapFile" VALUE="$(mapFile)"> <INPUT TYPE="hidden" NAME="frmStemming" VALUE="$(frmStemming)"> <INPUT TYPE="hidden" NAME="frmPreference" VALUE="$(frmPreference)"> <INPUT TYPE="hidden" NAME="frmLogical" VALUE="$(frmLogical)"> <INPUT TYPE="hidden" NAME="frmPrecision" VALUE="$(frmPrecision)"> <INPUT TYPE="hidden" NAME="frmCaseSensitive" VALUE="$(frmCaseSensitive)"> <INPUT TYPE="hidden" NAME="frmMaxCount" VALUE="$(frmMaxCount)"> <INPUT TYPE="hidden" NAME="frmFieldName" VALUE="$(frmFieldName)"> <INPUT TYPE="hidden" NAME="frmSearchType" VALUE="$(frmSearchType)"> <INPUT TYPE="hidden" NAME="NewString" VALUE="@DTW_rHTMLENCODE(NewString)"> <INPUT TYPE="hidden" NAME="String2" VALUE="@DTW_rHTMLENCODE(String2)"> <INPUT TYPE="hidden" NAME="frmSortOrder" VALUE="$(frmSortOrder)"> <INPUT TYPE="hidden" NAME="frmAscDesc" VALUE="$(frmAscDesc)"> </FORM> %ENDIF </td><td> </td> <td> %IF ($(LastDoc) < $(Hits)) <FORM NAME="next" ACTION="output" METHOD="post"> <p><INPUT TYPE="submit" NAME="Submit" VALUE="Next"> <INPUT TYPE="hidden" NAME="frmStartNum" VALUE="@dtw_rAdd(LastDoc, "1")"> <INPUT TYPE="hidden" NAME="frmSearchString" VALUE="@DTW_rHTMLENCODE(frmSearchString)"> <INPUT TYPE="hidden" NAME="frmQueryType" VALUE="$(frmQueryType)"> |
<INPUT TYPE="hidden" NAME="frmIndexName" VALUE="$(frmIndexName)"> <INPUT TYPE="hidden" NAME="frmDir" VALUE="$(frmDir)"> <INPUT TYPE="hidden" NAME="frmMapFile" VALUE="$(mapFile)"> <INPUT TYPE="hidden" NAME="frmStemming" VALUE="$(frmStemming)"> <INPUT TYPE="hidden" NAME="frmPreference" VALUE="$(frmPreference)"> <INPUT TYPE="hidden" NAME="frmLogical" VALUE="$(frmLogical)"> <INPUT TYPE="hidden" NAME="frmPrecision" VALUE="$(frmPrecision)"> <INPUT TYPE="hidden" NAME="frmCaseSensitive" VALUE="$(frmCaseSensitive)"> <INPUT TYPE="hidden" NAME="frmMaxCount" VALUE="$(frmMaxCount)"> <INPUT TYPE="hidden" NAME="frmFieldName" VALUE="$(frmFieldName)"> <INPUT TYPE="hidden" NAME="frmSearchType" VALUE="$(frmSearchType)"> <INPUT TYPE="hidden" NAME="NewString" VALUE="@DTW_rHTMLENCODE(NewString)"> <INPUT TYPE="hidden" NAME="String2" VALUE="@DTW_rHTMLENCODE(String2)"> <INPUT TYPE="hidden" NAME="frmSortOrder" VALUE="$(frmSortOrder)"> <INPUT TYPE="hidden" NAME="frmAscDesc" VALUE="$(frmAscDesc)"> </FORM> %ENDIF </tr></td> </table> %ENDIF   %IF (idxRC != "TSE0") <p><b>$($(idxRC)) %ENDIF </BODY> </HTML> %}   |