Текущее время: Вс, авг 17 2025, 14:42

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




Начать новую тему Ответить на тему  [ Сообщений: 7 ] 
Автор Сообщение
 Заголовок сообщения: Как ограничить размер запроса, загружаемого в DSO
СообщениеДобавлено: Ср, июл 09 2014, 10:25 
Специалист
Специалист

Зарегистрирован:
Пн, дек 26 2011, 18:05
Сообщения: 110
Откуда: МСК
Пол: Мужской
Всем привет :pivo:

Есть проблема: в DSO время от времени загружаются огромные пакеты (500+ млн записей) Активация это хозяйства заканчивается ошибкой с сообщением о нехватке памяти.

Вопрос: можно ли как-то ограничить размер запроса, загружаемого в DSO, чтобы и активировали пакеты меньшего размера? (решение с несколькими DTP и фильтрами в них не желательно)

PS

Данные в BW попадают из DataServices. Возможно кто-то знает каким образом там ограничить размер передаваемого в BW пакета, что сразу, в PSA, пакетики маленькие лежали?


Последний раз редактировалось Tiktuger Ср, июл 09 2014, 13:15, всего редактировалось 1 раз.

Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Как ограничить размер запроса, загружаемого в DSO
СообщениеДобавлено: Ср, июл 09 2014, 12:33 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Вт, янв 30 2007, 17:10
Сообщения: 488
А откуда стартуют джобы из Data Services или из BW?

http://help.sap.com/businessobject/prod ... sap_en.pdf - Раздел 5.4 может быть наведет на какую-нибудь мысль.

Как я понимаю, вам стоит стартовать пакет из BW и в DTP выставить разумный объем пакета.

_________________
Карма - это суперпозиция граблей, на которые мы уже успели наступить, но которые еще не долетели...


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как ограничить размер запроса, загружаемого в DSO
СообщениеДобавлено: Ср, июл 09 2014, 13:19 
Специалист
Специалист

Зарегистрирован:
Пн, дек 26 2011, 18:05
Сообщения: 110
Откуда: МСК
Пол: Мужской
Самое идеальное решение - это ограничить Data Service'ом размер передаваемого пакета в PSA. Только как это сделать - ХЗ. К сожалению, экспертиза в DS ограниченная.

P.S. Спасибо за мануал, буду изучать
P.P.S. Любые другие решения (кроме DS) так же приветствуются. Спасибо :)


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Как ограничить размер запроса, загружаемого в DSO
СообщениеДобавлено: Вт, июл 15 2014, 15:33 
Специалист
Специалист

Зарегистрирован:
Пн, дек 26 2011, 18:05
Сообщения: 110
Откуда: МСК
Пол: Мужской
Ограничил размер пакета в DS :pivo:


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Как ограничить размер запроса, загружаемого в DSO
СообщениеДобавлено: Чт, июл 17 2014, 12:03 
Начинающий
Начинающий

Зарегистрирован:
Вт, июл 15 2014, 17:14
Сообщения: 6
Размер Пакета легко выставляется в ДТП.
Может слишком большой Request?
Тогда можно разбить его Фильтрами на несколько ДТП и згаружать и активировать один за другим.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Как ограничить размер запроса, загружаемого в DSO
СообщениеДобавлено: Чт, июл 17 2014, 14:32 
Младший специалист
Младший специалист

Зарегистрирован:
Пн, авг 08 2011, 15:42
Сообщения: 79
Из Data Services необходимо каким-то образом получать количество загружаемых записей.

Далее общее количество записей делим на определенный нами делитель и получаем количество запусков инфо-пакета.
Далее в DO количество запусков times...ENDDO. Внутри цикла ведем подсчет записей и ставим ограничение для 1 и последующих запусков для этого нужна будет прозрачная табличка куда пишем ограничения фильтра после каждого запуска инфо-пакета, так же в этом цикле запускаем FUNCTION 'BAPI_IPAK_GETDETAIL'. В фильтре инфо-пакета абапом выбираем только те записи, которые указаны в фильтре таблицы.

Схема примерно такая.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Как ограничить размер запроса, загружаемого в DSO  Тема решена
СообщениеДобавлено: Пт, июл 18 2014, 17:56 
Специалист
Специалист

Зарегистрирован:
Пн, дек 26 2011, 18:05
Сообщения: 110
Откуда: МСК
Пол: Мужской
Сделал так:

В Data Serves живет скрипт, который забирает первые N записей. Далее в DTP поставил галку, чтобы запросы не склеивались в один большой при извлечении из ист. данных в DSO. Аналогично в цепочке на шаге с активацией ставлю галку, чтобы пакеты активировались последовательно.

Усе :)


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 7 ] 

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


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

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


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

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