String Operator

<CustomFilterField>
<FieldRef levelType="ZBKS.Book" category="PDF">
<FieldName>Title</FieldName>
</FieldRef>
<Hidden>false</Hidden>
<Type>STRING</Type>
<AllowOperatorSelection>true</AllowOperatorSelection>
<SimpleMapping sqlName="TITLE"/>
</CustomFilterField>


To use operator in the query, use operator macro ${operator:<paramFieldName, sqlFragment>} like

${filterIfNotNull:TITLE,title ${operator:TITLE, $TITLE$}}


In the above example, if the "Title" filter was provided, it would pass the filterIfNotNull condition. This would cause it's SQL fragment, "title ${operator:TITLE, $TITLE$}", to be evaluated. Since the CustomFilterField is a String filter, the operator value could be either "Equal" or "Not Equal". If we suppose that it's "Equal", that cause the operator macro to return " = " plus it's fragment, "$TITLE$".

Thus, the final fragment used in the SQL would be "title = $TITLE$".
images/download/attachments/144835587/StringOperator-version-1-modificationdate-1645046715000-api-v2.png

Please note that the "Empty" option ("IS NULL") will be included iff you specify the includeIsNull="true" attribute in the AllowOperatorSelection element, like this:

<AllowOperatorSelection includeIsNull="true">true</AllowOperatorSelection>