Work Manager 6.2 Add Time sheet
I am trying to make the Add Time functionality work in Work Manger 6.2.
I have maintained below global parameter in agentry application
The users who will be using the application will have multiple Profiles. One user will have time profile as ABC, other will have XYZ. I don't understand why we have to add a Time Profile in the Globals. The Time Profile for our users will be maintained in User Profile Parameter CVR.
I have also done below filter in the MDO, hoping that before creating the Time sheet, the code will use the filter instead of the Global Profile variable.
I went throught /SYCLO/CL_HR_CATSTIMESHEET_DO~CREATE Method code and i did not find any code that would replace the Time Profile variable with the value in the Filter .
I want the code to use Time Profile from user profile parameter CVR instead of a hardcoded global agentry parameter.
Instead of putting a constant in the Globals parameter, can i use USER_PARAM.CVR for Globals Time Profile Variable? would that work?
Any thoughts? and Suggestions?
Marçal Oliveras replied
Standard ABAP code should NEVER be modified.
Modifying the Agentry project is normal and I'm sure you will have to do it sooner or later.
But in this case though, what you can do is to create an implicit enhancement point at the beginning of the class /SYCLO/CL_HR_CATSTIMESHEET_DO, methods CREATE and EDIT (unfortunately there are not BADIS for this class as far as I know).
This way you can modify the profile in ABAP before the time record is created and only affecting calls via the Agentry Framework (none any BAPI that could be called).
Another alternative is to create a new class, inheriting from the original and redefine those methods. Do your modifications to the profile parameter and then call the "super()" method. If you do so, you will have to go to Configuration Portal and indicate that your custom Z class is being used instead of the standard for this particular MDO.