Текущее время: Вс, июл 20 2025, 18:31

Часовой пояс: UTC + 3 часа


Правила форума


ВНИМАНИЕ!

Вопросы по SAP Query и Quick View - сюда



Начать новую тему Ответить на тему  [ Сообщений: 19 ]  На страницу Пред.  1, 2
Автор Сообщение
 Заголовок сообщения:
СообщениеДобавлено: Вт, сен 06 2005, 18:28 
Старший специалист
Старший специалист

Зарегистрирован:
Ср, авг 18 2004, 09:17
Сообщения: 477
Откуда: Москва
Пол: Мужской
2RoadRunner: Ты забыл про поле anln1. Именно по нему Alraun хочет сделать "самообъединение" таблицы zbseg. Читай его первый пост.
Только поэтому сортировка zbseg по ключу bukrs, belnr, gjahr бессмысленна, т.к. приведет к линейному поиску по полю anln1, а это потеря производительности за которую мы здесь вроде как боремся. :)
Как вариант - можно создать еще таблицу индексов по anln1, но это громоздкое решение для такой простой задачи.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, сен 07 2005, 09:05 
Почетный гуру
Почетный гуру

Зарегистрирован:
Вт, авг 17 2004, 10:45
Сообщения: 550
Откуда: SAP_BASIS 640
RoadRunner написал:
З.Ы. Про параллельный курсор я сказал потому, что некто предлагал делать вложенный цикл с WHERE-условием. ИМХО, безобразие :) Да и в цикле делать READ TABLE ... BINARY SEARCH не лучший вариант. Если есть возможность, лучше сразу отсортировать ZBSEG по ключу, сделать необх. махинации с ZBKPF и затем отсортировать так, как вам надо.


Этот способ подходит далеко не для всех случаев. Точнее, подходит для очень немногих случаев. А его модификации приводят к сильному усложнению кода. Метод "параллельных курсоров" действительно даёт большой выигрыш в производительности, но мне кажется, заморачиваться с ним стоит только при больших объёмах данных, когда значимость производительности становится выше значимости прозрачности и безошибочности кода.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: заполнение внутренней таблицы из 2-х других таблиц
СообщениеДобавлено: Ср, сен 07 2005, 09:28 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Вт, авг 17 2004, 08:55
Сообщения: 331
Откуда: Украина, г.Мариуполь
Пол: Мужской
Дмитрий написал:
В твоем случае надо отсортировать zbseg по полю anln1, а zbkpf по bukrs, belnr, gjahr. ...
Потом делаешь цикл по zbseg. Для "первой" строчки zbseg читаешь
заголовок
Code:
read table zbukrs with key bukrs = zbseg-buks belnr = zbseg-belnr gjahr = zbseg-gjahr binary search

и т.д.
Да, согласен. Прошу прощения за невнимательность - это действительно самый простой в данном случае и, наверное, наиболее эффективный вариант... Хотя, если в ZBSEG'е всего 2 записи с одинаковым ANLN1, к-рым соответствуют 2 записи в ZBKPF, то можно было бы скомбинировать их данные в промежуточную таблицу, к-рую отсортировать по ANLN1, и затем в цикле at last anln1 добавлять записи в zitog. Но это изврат :)


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, сен 07 2005, 09:39 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Вт, авг 17 2004, 08:55
Сообщения: 331
Откуда: Украина, г.Мариуполь
Пол: Мужской
EGF написал(а):
Этот способ подходит далеко не для всех случаев. ...но мне кажется, заморачиваться с ним стоит только при больших объёмах данных, когда значимость производительности становится выше значимости прозрачности и безошибочности кода.

Дык, наверное, признак "молодости" - что-то узнал и спешишь поделиться :) Я сам-то, несмотря на 2-летний календарный, "формальный", срок в R/3, все еще новичок... Вот и хотел кому-то подсказать... А Дмитрий все время обламывает... :cry: За что ему большое спасибо - он делится опытом, а это всегда пригодится :)


Принять этот ответ
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 19 ]  На страницу Пред.  1, 2

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB