Sapforum.Biz

Инструменты => ABAP - Инструментальные средства => Тема розпочата: diman1989 від Червень 19, 2013, 12:12:47 ПП

Назва: группировка внутренней таблицы
Відправлено: diman1989 від Червень 19, 2013, 12:12:47 ПП
Добрый день! Есть таблица с составными ключевым полем(структура key c 7 полями), в ней к примеру три записи, которые отличаются только одной частью ключа, мне нужно получить одну запись (чтобы эта часть ключа не учитыаалась при группировке,она не нужна в дальнейшем). При этом числовые поля записей должны суммироваться. Спасибо заранее.
Назва: Re: группировка внутренней таблицы
Відправлено: Uukrul від Червень 19, 2013, 12:29:21 ПП
Перегоняете данные в другую таблицу с укороченным ключом используя операцию добавления COLLECT.

PS: А вообще можно наверное начать с этой книги: http://sapforum.biz/index.php/topic,117.0.html
Назва: Re: группировка внутренней таблицы
Відправлено: diman1989 від Червень 19, 2013, 02:40:55 ПП
Цитата: Uukrul від Червень 19, 2013, 12:29:21 ПП
Перегоняете данные в другую таблицу с укороченным ключом используя операцию добавления COLLECT.

PS: А вообще можно наверное начать с этой книги: http://sapforum.biz/index.php/topic,117.0.html
спасибо, книгу эту читаю. но не могли бы вы привести пример как мне укоротить ключ через collect. никак не получается
Назва: Re: группировка внутренней таблицы
Відправлено: Uukrul від Червень 19, 2013, 04:53:55 ПП
Ключ конечно никак не сократить, просто объявите вторую структуру с меньшим количеством полей, т.е. если в первой таблице у вас 5 ключей + поля сумм, то вторую объявите с нужными вам 3 ключами + поля сумм. Ну а далее используете оператор MOVE_CORRECPONDING <старая таблица> INTO <новая таблица> и место APPEND, пишете COLLECT <новая таблица>. Где-то так.
Назва: Re: группировка внутренней таблицы
Відправлено: diman1989 від Червень 19, 2013, 05:17:11 ПП
Цитата: Uukrul від Червень 19, 2013, 04:53:55 ПП
Ключ конечно никак не сократить, просто объявите вторую структуру с меньшим количеством полей, т.е. если в первой таблице у вас 5 ключей + поля сумм, то вторую объявите с нужными вам 3 ключами + поля сумм. Ну а далее используете оператор MOVE_CORRECPONDING <старая таблица> INTO <новая таблица> и место APPEND, пишете COLLECT <новая таблица>. Где-то так.
спасибо большое, получилось.