metasfresh logo and link to homepage

Create custom filters

Overview

This guide shows you how to create a custom filter in a window. In general, you can use general SQL operators, such as the LIKE operator, but you will also need to use the field separator (<^>) or the segment separator (<~>) to write your query.

Example:
If you want to create a user query that will filter for all invoice candidates with the invoice rule "After delivery (D)", the pure SQL code using the LIKE operator would be: InvoiceRule LIKE 'D'.

But if you write it like that, it will not work because it will not know how to parse that SQL. So the correct way would be: <^>InvoiceRule<^> LIKE <^>D<^>.

Note the spaces before and after the LIKE operator. They are essential!

Also, note <^>. This is the field separator. It marks the search field, the operator and the value.
For multiple terms, there is the segment separator, which looks like this: <~>.

Example:
If you wanted to filter for invoice candidates with the invoice rule "After delivery (D)" as well as for a certain partner, the query would look like this:
AND<^>InvoiceRule<^> LIKE <^>D<^><~>AND<^>Bill_BPartner_ID<^>=<^>2156423<^>.


Important!
The name of the column must be the exact same one as in AD_Column.ColumnName.

Steps

Let’s use a practical example. Assume you want to create a filter for the “Attribute Value” window. This filter shall include the following filtering options: Name, Attribute and IsActive flag.

  1. Go to the window “User Query”.
  2. Pick the table for which you want to use the filter.
  3. Pick the tab for which you want to show the filter.
  4. Enter the filtering code:
    filter

  5. This will result in:
    attr1

    attr2

Zur Quelldatei auf github.com