For full import of employees, the default ERP MA Configuration utilizes a BAPI that attempts to bring back all employees and their details in one BAPI call. The default configuration includes a wildcard search for the Last Name. This wildcard search can potentially lead to an extensible-exception with no data imported after 4 hours (or whatever the default timeout setting is on the SAP server). In many cases, the BAPI used for full import of employees will time out, especially in environments with a large number of employees. To avoid this problem, when running Full Import for employees with a wildcard search, it is recommended that you configure paginated queries for the wildcard parameter. The will cause queries to SAP to be broken up into smaller searches, each search covering a range of the allows character set.
For example, when pagination is enabled on a wildcard parameter, with a "characterSet" range filter set to [A-Z], and the "iterationDepthCount" set to 1, the wild card search will be replaced with a series of smaller searches similar to (a*, b* ... z*)
To enable this feature, open the Parameter properties form for a selected operation function and then check the 'Parameter requires paginated input' check box.
Additional control over pagination
When paginated input is configured, by default the MA will execute a query for every printable character within the current codepage. One side effect of this is that queries will be sent to SAP for which there is no matching data.In order to reduce the amount of no-data queries to SAP, you can restrict this character set that's enumerated by setting up a character-set range. You do this by configuring a MA additional parameter and specify the set of characters to include or exclude.
Configuring "characterSet" range filter option
The name of this additional parameter is “characterSet”. The value for this parameter can be “ include[ Regular Expression]” or “exclude[Regular Expression]”. Below are examples of possible values:
- To specify a characterSet having only values
between A and Z : include[A-Z] or exclude [^A-Z]
- To specify a characterSet having all values
except the ones between A and Z: include[^A-Z] or exclude
- A practical example which includes all
characters in the western alphabet used for names would look like
Configuring 'iterationDepthCount' option
Additional MA configuration parameter 'iterationDepthCount' can also be used to control number non-wildcard character prefix used in the search criteria. For example, an 'iterationDepthCount' set to 1 builds a series of searches similar to (a*, b*, ... z*) while a 'iterationDepthCount' set to 2 builds a series of searches similar to (aa*, ab*, ac*..., ba*, bb*, bc*, ..., zz*)
|With both interationDepthCount and a characterSet range defined, the number of queries that will be sent to the SAP/R3 server will be the number of characters in the range raised to the power of interationDepthCount, i.e. count(expand(regExfilter)) ^ iterationDepthCount|