A. Business Requirement
The requirement is to manage collections in collection management by key figure – Business Area.
By standard customizing, the work list for a collection specialist is prepared and displayed on basis of company codes assigned to the collection group. The collection specialist assigned to the collection group will see open items from all business areas from these company codes. Thus by design, the grouping of work list in collection management can be done only by company code (i.e. Collection segment). There is no standard way to manage work list by any other key figure – Business Area in our case.
Let’s take an example to understand the requirement. Say the collection specialist CSUS01ZBA1 manages collections for business area ZBA1. Only open items from business area ZBA1 should appear in his work list. Below shows what we get through standard customizing and what is expected.
Also for some customer, it may be required that collection specialist managing one business area, should not be able to access open items from any other Business Areas. This may be needed due to authorization, legal restriction, for the way company has aligned its business or for better efficiency of collection specialist to close open item as earliest.
In sections below, we try to explain the issue with the standard design, work around solution, technical pseudo logic and sample code and finally ending with a note for further enhancement/caution.
B. Understanding the Issue
Above is the summary of the organizational structure in collection management. This shows that the work list for a collection specialist is prepared by company codes assigned to the segments assigned to his collection group. This is the core design of collection management. Thus there is no other way to group and distribute open items in work list other than by company code.
In FI-AR, the display of open items for respective user may be managed by using finance roles and authorization. Technically it can be done by setting authorization object – F_BKPF_GSB with display activity in the user profile. Thus in open line item display ( FBL5N ), user will only see items for business area to which he is authorized to. But this technique doesn’t work in collection management. SAP display open items of all business area from the assigned company code. There is no such restriction of work list by business area authorization check.
In collection management, when collection specialist double clicks on a document in open process receivable list, it is at this time when the financial authorization check is done and restriction is applied. But suppressing the document altogether from appearing in the work list of respective collection specialist is not avoided.
When the process receivable list is displayed, collection specialist may use dynamic selection and filter the list only for business area for which he needs to handle collections. But this may not be acceptable solution for many customers. Few customers may be ready to comprise to adapt the standard functionality but few may not consider this a good idea. For some customer, this may also stop them from considering collection management, if collection by any other key figure is critical.
FI-SCM has been around in the market for quite a long time and SAP still only supports using company code to manage collections.
The solution we define here is to combine the financial authorization with the standard grouping of open items by company code.
The idea is to start with regular design of collection segment, assigning company codes to segment and finally collection group to segment. Then we put a technical enhancement when open process receivable is displayed for a collection specialist. In this enhancement, we check each open item to see if the respective collection specialist is authorized to open item’s business area. If yes, then this item will be displayed in work list, else should be removed from the work list.
The technical analysis needed is to determine what would be best place to add enhancement, explained in Section C. above. SAP provides set of BAdis in collection management at various points for e.g. Enhancement during data flow from FI-AR to CM, Enhancement of work list on creation and during display, Enhancement for basic rules etc. But none of the existing standard BAdi is useful to the solution we proposed above.
In absence of any standard enhancement option, we tried to unleash the power of ECC enhancement Framework. With some debugging we were able to determine the technical flow from the time when a collection specialist clicks on an item in his work list till when the process receivable list is displayed. Technical flow is as shown below.
The process receivable list for the selected work list item is prepared in the two function modules – FDM_COLL_INVOICES_READ and FDM_COLL_INVOICES_READ_CLOSED called in above flow. The idea would be to add implicit enhancement at the end of these two functions and removing invoices of business areas for which the collection specialist is not authorized.
One may also think of using post-method exit for method DISPLAY_INV_OVERVIEW. But it may not be possible access the local internal table of method DISPLAY_INV_OVERVIEW in post-method exit. Also the data modified in here might be late since it is already set for display.
E. Technical Pseudo logic
- Add an implicit enhancement at the end of each function modules – FDM_COLL_INVOICES_READ and FDM_COLL_INVOICES_READ_CLOSED
- Internal table T_INVOICES holds all invoices for the selected work list item.
- For each invoice in T_INVOICES, find business area from table BSID
- Check authorization of the collection specialist to this business area.
- If authorization fails, delete the item from T_INVOICES.
- Sample code would be as below:-
The design discussed above might provide one way to achieve the requirement but the functional and technical consultant should refine the design depending on what features of collection management will be implemented for customer.
An example would be say if customer plans to use the substitute feature for collection specialist. In this case, please check if there is need to tweak the design to check if the substitute is active and that the authorization be check accordingly.
In the design above, we have discussed how to achieve design to manage collections by key figure – Business Area, but same or a variant of above design can be used to achieve collections for customer with any different key figures.