In an internal procedure call, the called unit is part of the calling program. The source code of the called unit is either part of the source code of the calling program or attached to it as an include program. This means that, at runtime, no other programs have to be loaded into the internal session of the calling program.
All procedures - subroutines, function modules, and methods - can be called internally in the program in which they are defined.