在 ABAP 中声明深度 table?

Declare deep table in ABAP?

我需要一个带有散列键的内部 table,但每个键需要多行。我认为深度 table 是解决我的问题的正确方法,但我该如何定义它?

你可以使用这样的东西:

TYPES: BEGIN OF ty_your_structure,
        field1 TYPE c LENGTH 10,
        field2 TYPE i,
       END OF ty_your_structure.
TYPES: BEGIN OF ty_your_table_structure,
        key TYPE string,
        rows TYPE STANDARD TABLE OF ty_your_structure WITH EMPTY KEY,
       END OF ty_your_table_structure.
TYPES tt_your_table TYPE HASHED TABLE OF ty_your_table_structure WITH UNIQUE KEY key.
DATA(lt_your_table) = VALUE tt_your_table( 
  ( key = 'TEST'  rows = VALUE #( ( field1 = 'X' field2 = 1 )
                                  ( field1 = 'Y' field2 = 2 ) ) )
  ( key = 'TES2T' rows = VALUE #( ( field1 = 'A' field2 = 1 )
                                  ( field1 = 'B' field2 = 2 ) ) )                                 
).
DATA(lt_rows) = VALUE #( lt_your_table[ KEY = 'TEST' ]-rows OPTIONAL ).