SAP Work Manager(Agentry App ) Standard solution provides very basic list filtering options and there is no scope to customize the filter screen (Reference: http://scn.sap.com/thread/3539095). User can only use one parameter to filter the list at the time; cannot enter two values with “Equal” operation for filtering (screenshot below).
Our customer had a requirement to use multiple parameters at one time to filter the Work Order list and support multiple values per parameter. The new filter screen provides a real potential that technicians could use filtering to help them plan how and when they execute work orders e.g. show me all work orders in region x and which are of type “New Installation”.
We implemented the solution for our customer which caters to
- Multiple Parameters (i.e. fields) to filter list at the same time (AND Logic)
- Option to provide more than 1 value for each of the Parameter (i.e field)
- Option to provide filter criteria for each Parameter (e.g. Filter for “Equal” / “Not Equal” / “Between” operations etc)
To achieve the requirement we built a simple and dynamic solution with below considerations
- A custom filter screen defining all the Parameters (fields) on which Filter could be set.
- Each filtering parameter can be activated / deactivated by using toggle switch
- Each filtering parameter is supported with a dropdown that displays the available values for that parameter on the device thus by making the user choice simple and specific
- When a filtering parameter is enabled, user can select 1 or more applicable values from the dropdown. User can also select the filtering criteria based on need against each parameter
- Solution is also supported with UI indications describing if filter is Active / Inactive. All the Filter conditions can be reset through “Clear Filter” button
Technical Solution Overview
Following are the high-level changes implemented for the Custom Filter solution
- Table for Logical operations
- a. A Table has been created to maintain all the logical operations like “Equals”; “Not Equals”; “Between” etc. based on the field type
- Custom filter screen has been created with
- Toggle switch (checkbox) which acts like a flag for the “And” logic
- A drop down to indicate the Filter Criteria like “Equals”; “Not Equals”; “Between” etc. which are driven from a complex table based on the Parameter (field type)
- “Selection List” dropdowns which displays only the values as available against the selected field. Example: if the device has 5 Work orders, the selection dropdown list would only display 5 Work order numbers as available on the screen. This has been achieved by mapping the appropriate collection and Work Order object field with other necessary configurations for the “Selection List” field on the Agentry screen
- Work Order List View
- Activate Filter & Reset buttons have been added for activating and clearing the filters respectively
- Update rule for the Filter Active; Filter Inactive icons indicate the current filter status; this is derived from an Update rule which identifies the status based on the Toggle switch (Checkbox) being checked / unchecked
- Include rule has been written on the Work Order list screen to filter the Work Orders based on the
- Toggle switch (indicating filter is active, included in the “And” logic)
- Based on the Filter Criteria like “Equals”; “Not Equals”; “Between” etc; the include rule performs necessary logical operations on the selected parameters.