Please tell me about the interface parameter I_CALLBACK_PROGRAM. The documentation says:
"Program which calls the function module and contains the exit routines. It must be a Report, Function group, Module pool or Form routine pool (not an Include).
Note: Never pass SY-REPID directly in the interface. If the desired program name is in SY-REPID, it must be assigned to an intermediate variable which is then passed to the interface."
1) What is meant by contains the exit routines.
2) How can Function group call this FM?
3) Why should we not use sy-repid directly?
4) What if we don't use this parameter (as this is an optional parameter)?