Dump截图:
场景:
动态alv报表或者其它需要使用动态内表的场景,较多次使用方法cl_alv_table_create=>create_dynamic_table生成动态内表。
原因:
方法cl_alv_table_create=>create_dynamic_table是通过生成并调用临时子例程池来创建对应的动态内表,但是临时子例程池此在一个程序运行环境下最多存在36个,因此方法cl_alv_table_create=>create_dynamic_table调用次数超过36次,则产生该dump,目前没有找到可以清除临时子例程池的方法。
解决:
建议使用cl_abap_structdescr=>create代替cl_alv_table_create=>create_dynamic_table生成动态内表,参考ABAP动态编程-动态数据对象_Fireworks_me的博客-CSDN博客;
或者优化程序,减少方法cl_alv_table_create=>create_dynamic_table的调用。