SAP Work Manager: Force user's complex table refresh
I would like to know if there is a way to completely invalidate a user's complex table in the Agentry client.
My real scenario is that the user can be assigned to a different planning plant at any point of time, after doing that the Functional Location complex table (and others like Equipment) should be completely refreshed. The problem is that the exchange mechanism does not work in this situation, because FL didn't change in the back end, is the filter condition what changed.
So I would like to trigger some kind of event in ABAP when user's planning plant is modified, to force a list of complex tables to be refreshed.
Any idea on how to do that?
Thanks in advance for your input.
Chandra Ayyagari replied
You have to either create a new BAPI or enhance product BAPI /SYCLO/CORE_MDW_PARAMETER_GET.
The BAPI returns ET_PARAMETER_LIST table which contains TABLE_REFRESH parameter that you configured in config panel for the CT.
Now all you have to do is when the User Profile Parameter for Planning Plant has changed in SAP you override the content of the ET_PARAMETER_LIST and update TABLE_REFRESH=0 (i.e. refresh table). Agentry will automatically reset data in CT on client.
To figure out if the User Profile Parameter has been changed since last transmit
1) you can send a transaction with UserProfile Object from Agentry - with subAction in Transmit Action
2) Maintain a Z-table to keep track of old values and update during the transmit.
Instead of hardcoding the table names you can maintain a list in Config Panel Client Globals and use that here. That way it is completely configurable going forward.
If you plan to create Z-BAPI then you must change the JavaBE,ini to invoke the Z-BAPI instead of Product BAPI.
Hope this helps.