SAPфорум.RU
https://www.sapboard.ru/forum/

Операции с динамической таблицей
https://www.sapboard.ru/forum/viewtopic.php?f=13&t=100221
Страница 1 из 1

Автор:  proga19 [ Ср, ноя 02 2022, 20:02 ]
Заголовок сообщения:  Операции с динамической таблицей

Добрый день!
Подскажите, существует ли операция "удаления" строк из динамической таблице, аналогично DELETE I_STATIC_TABLE WHERE I_FIELDNAME = '0' или

DELETE TABLE <DT> WITH TABLE KEY (KONTS) = SPACE
(LGORT) = SPACE,

но с возможностью указать не весь каталог полей, а только нужный. Т.е после KEY перечислять не все поля, которые содержит динамическая таблица......
Есть операции LOOP, READ, SORT, даже есть метод с помощью которого ее можно передать в память (аналог EXPORT/IMPORT), а вот с удалением как будто промах...
Прям уснуть не могу с этого....

Ещё странно, что нет возможности например написать так:
DELETE I_STATIC_TABLE/I_DYNAMIC_TABLE INDEX I_INDEX_TABLE....
Т.е удалить записи не с 1-ой по 10-ую, а определенный список индексов.....

Автор:  broker.chelny [ Чт, ноя 03 2022, 08:59 ]
Заголовок сообщения:  Re: Операции с динамической таблицей

Ничего странного нет, никто не мешает сделать таблицу с индексами, пройтись по мней циклом и удалить все нужные строки.

Автор:  proga19 [ Чт, ноя 03 2022, 09:24 ]
Заголовок сообщения:  Re: Операции с динамической таблицей

Согласен, но плюшки всегда хочется...

Автор:  Кодер [ Чт, ноя 03 2022, 09:41 ]
Заголовок сообщения:  Re: Операции с динамической таблицей

DELETE <lt_tab> WHERE (lv_condition)

Автор:  proga19 [ Чт, ноя 03 2022, 09:49 ]
Заголовок сообщения:  Re: Операции с динамической таблицей

Data my_where TYPE string.

MY_WHERE = `(FIELD = '123')`.
DELETE <DT> WHERE (MY_WHERE).

In "LOOP ... WHERE ..." the line type of the table must be statically

Автор:  LKU [ Чт, ноя 03 2022, 10:33 ]
Заголовок сообщения:  Re: Операции с динамической таблицей

proga19 написал:
Ещё странно, что нет возможности например написать так:
DELETE I_STATIC_TABLE/I_DYNAMIC_TABLE INDEX I_INDEX_TABLE....
Т.е удалить записи не с 1-ой по 10-ую, а определенный список индексов.....

Есть такая штука:
Code:
SYSTEM-CALL ITAB_DELETE_LIST TABLE <xdata> INDEX-LIST lt_tabix_del_x.

Предполагается, что это "!!! Internal use in SAP Basis development !!!".
На практике работает, но используйте на свой страх и и риск.

Автор:  proga19 [ Чт, ноя 03 2022, 11:33 ]
Заголовок сообщения:  Re: Операции с динамической таблицей

Здорово.
Проверил на динамической таблице работает.
Вообще про SYSTEM-CALL никогда не слышал.
Думаю в каких нибудь "неопасных" отчетах может пригодиться.....

Страница 1 из 1 Часовой пояс: UTC + 3 часа
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/