Может быть не очень правильный способ, но можно так:
1. Составляем field-каталог в формате ALV-грида по структуре неизвестного типа примерно так:
Code:
TYPE-POOLS SYDES.
...
DESCRIBE FIELD ls_struct INTO t_fields. " ls_struct - строка неизвестной таблицы, но для таблицы может тоже подойдет
пример можно посмотреть
здесь2. Добавляем в field-каталог новое поле
3. используем метод CL_ALV_TABLE_CREATE=>table_copy, где на входе подается исходная таблица, field-каталог с добавленным полем, на выходе по идее получаем конечную таблицу со всеми данными исходной и добавленным полем
Способ плох тем, что при повторении много раз код будет падать в
дамп (так работает CL_ALV_TABLE_CREATE=>create_dynamic_table)