Уже несколько раз сталкивался с ситуацией когда разработчик пишет что-то вроде:
1 2 3 4 5 6 7 8 9 10 11 12 |
TYPES: BEGIN OF ts_some_type, a TYPE i, b TYPE i, END OF ts_some_type. DATA: lt_some_table TYPE SORTED TABLE OF ts_some_type WITH UNIQUE KEY a, b. lt_some_table = VALUE #( ( a = 1 b = 1 ) ( a = 1 b = 2 ) ). |
Данный код приведёт к исключению CX_SY_ITAB_DUPLICATE_KEY. Все потому, что при определении полей ключа разработчик указал запятую. Запятая в данном случае отделяет определение переменной lt_some_table от переменной b с типом C 🙂