Wenn man die Struktur kenn dynamisch eine Tabelle zusammen setzen

In diesem Fall wird es genutzt um einen dynamisch Select zu machen

************************************************************************
** Daten Selektieren
************************************************************************
  TRY.
* Strukturdeskriptor für Komponenten (Spalten) der Tabelle anhand einer vorhandenen Struktur erzeugen
      DATA(o_struct_desccl_abap_structdescr=>describe_by_name<fs_name>-item ).  ""Nur der Übergabe Parameter ändert sich "" (z.B. DD04L)
* Tabellendeskriptor
      DATA(o_table_desccl_abap_tabledescr=>create(
                                                       p_line_type  CAST #o_struct_desc )           " Spalten
                                                       p_table_kind cl_abap_tabledescr=>tablekind_std " Tabellentyp STANDARD TABLE
                                                       p_unique     abap_false                        " NON-UNIQUE KEY
                                                     ).
* Tabellenobjekt anhand des Tabellendeskriptors erstellen
      DATAo_table TYPE REF TO data.
      CREATE DATA o_table TYPE HANDLE o_table_desc.
* Feldsymbol auf das Tabellenobjekt
      FIELD-SYMBOLS <table> TYPE ANY TABLE.
      ASSIGN o_table->TO <table>.
    CATCH cx_root INTO DATA(e_txt).
      WRITE/ e_txt->get_text).
  ENDTRY.
************************************************************************
** Dynamischer Tabellennamen Selektieren
************************************************************************
  DATA(lf_tabnameCONV char30<fs_name>-item ).
************************************************************************
** Daten Selektieren
************************************************************************
  SELECT FROM (lf_tabnameINTO TABLE @<table>.

  IF p_rb_1 'X'.
    LOOP AT <table> ASSIGNING FIELD-SYMBOL(<fs_table>).
      ASSIGN COMPONENT OF STRUCTURE <fs_table> TO FIELD-SYMBOL(<cell>).
      IF <cell>(1<> 'Z' AND <cell>(1<> 'Y'." AND <cell>(10) <> '/SWISSCOM/' .
        DELETE TABLE <table> FROM <fs_table>.
      ELSE.
*        WRITE: / <cell>.
      ENDIF.
    ENDLOOP.
  ENDIF.

        search this website

Regotz Michel