Im using statement GENERATE SUBROUTINE POOL to dynamically select from a table. I have to have this statement in a loop. When the number of loops is large, the program dumps with message "Unable to generate more temporary subroutine pools." . In the documentation it states this is limited to 36.
Is there anyway to free this subroutine pool (free the assigned memory) so as to create others.
If I catch the exception, I guess it wont dump but maybe only half the data will be processed.
Below is some of the code.
Thank you very much,
CREATE DATA mt_ttable TYPE TABLE OF (m_ttablename).
ASSIGN mt_ttable->* TO <mfs_ttable>.
GENERATE SUBROUTINE POOL tab NAME prog
MESSAGE mess SHORTDUMP-ID sid.
IF sy-subrc = 0.
PERFORM ('READ_DATA') IN PROGRAM (prog) IF FOUND
TABLES mt_trigger <mfs_ttable>
TAB contains the selection statement.