donderdag 16 december 2010

GENERATE_SUBPOOL_DIR_FULL in cl_alv_table_create=>create_dynamic_table

Because the standard SAP method "Create_dynamic_table" can give the runtime error GENERATE_SUBPOOL_DIR_FULL, it should be avoided to use it.

  CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
    EXPORTING
      i_structure_name = 'YSDXX_CLST_DATA'
    CHANGING
      ct_fieldcat = lta_fcat.

   CALL METHOD cl_alv_table_create=>create_dynamic_table
     EXPORTING
       it_fieldcatalog = lta_fcat
     IMPORTING
       ep_table        = dr_content. 

Instead use the code below,

lo_struct ?= cl_abap_typedescr=>describe_by_name( 'YSDXX_CLST_DATA' ).
lt_comp  = lo_struct->get_components( ).
APPEND LINES OF lt_comp TO lt_tot_comp.
l_struc = cl_abap_structdescr=>create( lt_tot_comp ).
l_struc_table = cl_abap_tabledescr=>create(
                        p_line_type  = l_struc
                        p_table_kind = cl_abap_tabledescr=>tablekind_std
                        p_unique     = abap_false ).

CREATE DATA lw_global_data-datatab TYPE HANDLE l_struc_table.

Geen opmerkingen:

Een reactie posten