Текущее время: Чт, сен 18 2025, 20:50

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 20 ]  На страницу Пред.  1, 2
Автор Сообщение
 Заголовок сообщения: Re: Оптимизировать(ускорить) выборку из BSIS
СообщениеДобавлено: Вт, сен 25 2012, 16:01 
Младший специалист
Младший специалист

Зарегистрирован:
Вт, окт 05 2010, 19:56
Сообщения: 52
Цитата:
А в полях HKONT и GJAHR разброс значений большой?

Gjahr - с 2008 по 2011
hkont - примерно 20 значений счетов

Цитата:
для сравнения ,попробуйте предварительно выбрать номера счетов из плана во внутр таблицу
и запустить по (bukrs, hkont) используя for all entries ,остальные критерии укажите в where


не до конца понял мысль..поясните, пожалуйста.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Оптимизировать(ускорить) выборку из BSIS
СообщениеДобавлено: Ср, сен 26 2012, 13:43 
Младший специалист
Младший специалист

Зарегистрирован:
Вт, окт 05 2010, 19:56
Сообщения: 52
Цитата:
и запустить по (bukrs, hkont) используя for all entries ,остальные критерии укажите в where


Такая структура отработала примерно в 2 раза быстрее(где-то 17 минут)...

Code:
SELECT saknr FROM ska1
               INTO CORRESPONDING FIELDS OF TABLE lt_hkont
              WHERE saknr IN s_hkont.

SELECT dmbtr belnr bschl xnegp xblnr
       INTO CORRESPONDING FIELDS OF TABLE lt_bsis
                                     FROM bsis
                       FOR ALL ENTRIES IN lt_hkont
                                    WHERE hkont EQ lt_hkont-saknr AND
                                               bukrs EQ p_bukrs AND
                                               blart IN s_blart AND
                                               gjahr IN s_gjahr.



Что еще можно сделать?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Оптимизировать(ускорить) выборку из BSIS
СообщениеДобавлено: Ср, сен 26 2012, 14:33 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Пн, мар 28 2005, 15:38
Сообщения: 1257
Полпробуйте отказаться от FOR ALL ENTRIES. Сформируйте из счетов RANGE и используйте в выборке его. По идее будет быстрее. если известны еще какие-то ограничения - стоит их внести, чтобы не тащить все подряд на апп.сервер с сервера БД

_________________
Там, где я рос, единственным развлечением было запоминать число «π».(С) Н. Стивенсон


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Оптимизировать(ускорить) выборку из BSIS
СообщениеДобавлено: Ср, сен 26 2012, 14:38 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, авг 19 2004, 17:37
Сообщения: 1962
Откуда: Москва
Пол: Мужской
Sergey_N написал(а):
...Что еще можно сделать?

Попробуйте так:
Code:
Select BSIS~dmbtr BSIS~belnr BSIS~bschl BSIS~xnegp BSIS~xblnr
  into corresponding fields of table lt_bsis
  from BSIS
  join SKB1
    on SKB1~BUKRS = BSIS~BUKRS and
       SKB1~SAKNR = BSIS~HKONT
  join T003
    on T003~BLART = BSIS~BLART
  join ZT_GJAHR
    on ZT_GJAHR~GJAHR = BSIS~GJAHR
  where SKB1~BUKRS = p_BUKRS
    and SKB1~SAKNR in s_HKONT
    and T003~BLART in s_BLART
    and ZT_GJAHR~GJAHR in s_GJAHR.

ZT_GJAHR - новая таблица со списком годов
Для чистого эксперимента нужен индекс типа
MANDT BUKRS GJAHR HKONT BLART,
Мне однажды подобный прием помог.

Еще очень желательно, чтобы вн. таблица lt_bsis имела структуру только из выбираемых полей, т.к. операция corresponding может быть заметно затратной при большом объеме, да и АБАП-памяти много ест.

_________________
"For all entries" не в SAP-ах, "for all entries" в головах! :)


Последний раз редактировалось Parazit Ср, сен 26 2012, 18:12, всего редактировалось 4 раз(а).

Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Оптимизировать(ускорить) выборку из BSIS
СообщениеДобавлено: Ср, сен 26 2012, 14:40 
Ассистент
Ассистент

Зарегистрирован:
Пн, июн 27 2011, 15:21
Сообщения: 31
А если попробовать через OPEN CURSOR это сделать? Нету к сожалению под рукой такого количества данных, не могу проверить...


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

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


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

Сейчас этот форум просматривают: Google [Bot]


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

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