Filtering with CheckFilters
Overview
- The normal Filters that you set in Transfers are sent through the Connection to the system where the filter is then applied. Only the result of the applied filter is sent back to Rapidi.
- You can also set Filters (set delimitations) in a Transfer that are evaluated by Rapidi. We call these filters CheckFilters.
- CheckFilters will further limit the records that are actually processed. In this way, you can overcome limitations in the filtering capabilities of the different systems.
- The filtering is set up under the specific Transfer > Filters Source (delimitations) or under Advanced Features > Filters Destination (delimitations)
- The filtering is done by Rapidi - i.e. all records are read from the system and then Rapidi is skipping the records that don't apply according to the filters.
- In the Log (and on the Messages/output from Transfer) you can see how many records were skipped.
- For the Databases (like MS Dynamics NAV/AX/C5, MS-SQL, Oracle, DB/2, Sybase, Lotus Notes) the filters are used in conjunction with the filters that goes to the database - i.e. Rapidi will check which filters can be sent to the Database (and set these filters directly on the Database) and which filters must be evaluated by the program.
- For non-databases (like ASCII, Binary, XML etc) all filters will be handled by Rapidi.
- The Filters can be in form of a formula on the left side of the (in the "FIELD"). The formula will be evaluated for each record read from the system and the resulting value will be compared to the "FILTER" value on the right side. If they are not equal, the record is skipped.
- The Filters can also be a list of values to compare within the "Filters Source" (on the right side). If the value from the left side (resulting from a formula or from a field) is equal to one of the values in the list, then the record is used, else it is skipped.
- The list of values must have the following format: ##<value-1>:<value-2>: ... :<value-n>
A colon is used as separator; Each value can optionally be put in single quotes.
F.ex. ##11:22:33:44 or ##'ABC':A33:'A54' or ##EAST:WEST
Following are some examples of Filters:
- Records with Postcode 6630, 8850, 5656 and 2230 are read:
FIELD NAME |
FILTER |
PostCode |
##6630:8850:5656:2230 |
- Records having the first 4 digits in the telephone as 0045 are read:
FIELD NAME |
FILTER |
##COPY("Telephone",0,4) |
0045 |
- Records having Department 'EAST' are skipped:
FIELD NAME |
FILTER |
##EQUALS("Department", 'EAST') |
0 |