You are viewing limited content. For full access, please sign in.

Question

Question

Weblink custom search with multiple anytext/document text fields?

asked on September 23, 2015

Is it possible to have more than one AnyText Field within a custom search in Weblink Designer?  Everytime when I try to add an additional AnyText or DocumentText field, I am prompted with a notification of:

 

0 0

Answer

SELECTED ANSWER
replied on October 14, 2015

It is but you will need to do it manually by modifying the associated custom search XML file that is created when you compile and save it.

 

To demonstrate create a new custom search form in Designer and place only a AnyText field and Submit button. Compile and save it as WLTST.

 

Close out Designer and navigate to the Laserfiche WebLink program directory (ie. C:\Program Files\Laserfiche\WebLink\Web Files\searchforms\YOURREPOSITORYNAME). In this directory you will see a file name WLTST.xml.

 

Open up the WLTST.XML file and you should see the following:

 

<?xml version="1.0" encoding="utf-8"?>
<Weblink.SearchForm xmlns:lf="http://schemas.laserfiche.com/Weblink/8/LfControls" xmlns:asp="http://schemas.laserfiche.com/Weblink/8/System.Web.UI.WebControls">
  <SearchForm Name="Multiple Text Box" Description="">
    <UI>
      <input runat="server" id="MultipleTextBox_Input0" resetval="" />
      <lf:Submit runat="server" id="MultipleTextBox_Button1" Text="Submit" />
    </UI>
    <Query>
      <And>
        <Constraint Type="Basic" Operator="eq" MatchAll="False" MatchWholeWord="True" UseWildcards="False" ControlID="MultipleTextBox_Input0" SearchName="AnyText" />
      </And>
    </Query>
    <SortOptions />
    <Summary>
    </Summary>
    <TokenMap>
      <Token Name="AnyText" ControlID="MultipleTextBox_Input0" />
    </TokenMap>
  </SearchForm>
</Weblink.SearchForm>

Basically you are going to make a copy of the "input" element and add another "Constraint" element for that newly copied "input" element.

<input runat="server" id="MultipleTextBox_Input0" resetval="" />

The important thing to remember is that your new input element needs to have a unique id:

<input runat="server" id="MultipleTextBox_Input1" resetval="" />

And your new constraint element must contain the new input element id:

<Constraint Type="Basic" Operator="eq" MatchAll="False" MatchWholeWord="True" UseWildcards="False" ControlID="MultipleTextBox_Input1" SearchName="AnyText" />

One thing I did change was the "<And>" element to "<Or>" since I wanted my search to find either values in the text boxes.

<Or>
   <Constraint Type="Basic" Operator="eq" MatchAll="False" MatchWholeWord="True" UseWildcards="False" ControlID="MultipleTextBox_Input0" SearchName="AnyText" />
   <Constraint Type="Basic" Operator="eq" MatchAll="False" MatchWholeWord="True" UseWildcards="False" ControlID="MultipleTextBox_Input1" SearchName="AnyText" />
</Or>

Below is the modified WLTST code:

<?xml version="1.0" encoding="utf-8"?>
<Weblink.SearchForm xmlns:lf="http://schemas.laserfiche.com/Weblink/8/LfControls" xmlns:asp="http://schemas.laserfiche.com/Weblink/8/System.Web.UI.WebControls">
  <SearchForm Name="Multiple Text Box" Description="">
    <UI>
      <input runat="server" id="MultipleTextBox_Input0" resetval="" />
      <input runat="server" id="MultipleTextbox_Input1" resetval=""/>
      <lf:Submit runat="server" id="MultipleTextBox_Button1" Text="Submit" />
    </UI>
    <Query>
      <Or>
        <Constraint Type="Basic" Operator="eq" MatchAll="False" MatchWholeWord="True" UseWildcards="False" ControlID="MultipleTextBox_Input0" SearchName="AnyText" />
      <Constraint Type="Basic" Operator="eq" MatchAll="False" MatchWholeWord="True" UseWildcards="False" ControlID="MultipleTextBox_Input1" SearchName="AnyText" />
      </Or>
    </Query>
    <SortOptions />
    <Summary>
    </Summary>
    <TokenMap>
      <Token Name="AnyText" ControlID="MultipleTextBox_Input0" />
    </TokenMap>
  </SearchForm>
</Weblink.SearchForm>

Save the file, close it, and then open up the search in WebLink. This was tested in WebLink 9 and worked as expected.

 

 

Hope this helps!

1 0

Replies

You are not allowed to reply in this post.
You are not allowed to follow up in this post.

Sign in to reply to this post.