Текущее время: Пн, июл 21 2025, 02:29

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 15 ] 
Автор Сообщение
 Заголовок сообщения: Подскажите как справится с ошибкой: TIME OUT
СообщениеДобавлено: Ср, авг 27 2008, 07:56 
Ассистент
Ассистент
Аватара пользователя

Зарегистрирован:
Ср, июл 30 2008, 09:41
Сообщения: 32
Откуда: Almaty
Пол: Мужской
Проблема в следующем: я использую команду SELECT ... ENDSELECT,
делаю выборку из ОЧЕНЬ большой таблицы, по нескольким условиям и записываю в свою внутреннею таблицу, а эта "зараза" все время вылетает по TIME OUT.
Вот мой код:

select * from BSIS WHERE BUKRS = BUKRS-LOW AND HKONT = '6280-001' AND BLART ne 'ST'.
MOVE-CORRESPONDING BSIS TO tb_rezult1.
APPEND tb_rezult1.
ENDSELECT.

Подскажите кто знает как с этим справится, чтобы не было динамической ошибки TIME OUT.
Заранее СПАСИБО!


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, авг 27 2008, 08:02 
Директор
Директор

Зарегистрирован:
Пт, окт 07 2005, 09:10
Сообщения: 752
Откуда: 4.6C
Пол: Мужской
Увеличить значение параметра:
rdisp/max_wprun_time
в профиле инстанции.
Обратитесь к базиснику.
Но злоупотреблять не следует.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, авг 27 2008, 08:06 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Ср, ноя 03 2004, 14:51
Сообщения: 1912
Откуда: КраснАдар
Пол: Мужской
Между select ... endeselect воткните вызов ФМ SAPGUI_PROGRESS_INDICATOR каждые две-три минуты. Падать не должно.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, авг 27 2008, 08:06 
Директор
Директор

Зарегистрирован:
Пт, окт 07 2005, 09:10
Сообщения: 752
Откуда: 4.6C
Пол: Мужской
Да, поработайте на оптимизацией выборки, например:
select ... INTO TABLE ... from
loop at ....

endloop.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Подскажите как справится с ошибкой: TIME OUT
СообщениеДобавлено: Ср, авг 27 2008, 08:14 
Ассистент
Ассистент
Аватара пользователя

Зарегистрирован:
Ср, июл 30 2008, 09:41
Сообщения: 32
Откуда: Almaty
Пол: Мужской
[color=black]Aval
Да, поработайте на оптимизацией выборки, например:
select ... INTO TABLE ... from
loop at ....

endloop.[/color
]

Я пробовал оптимизировать по разному, все равно велетает по TIME OUT


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, авг 27 2008, 08:18 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 16:25
Сообщения: 3109
Пол: Мужской
[quote="John Doe"]Между select ... endeselect воткните вызов ФМ SAPGUI_PROGRESS_INDICATOR каждые две-три минуты. Падать не должно.[/quote]
А как сделать каждые 2-3 минуты?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, авг 27 2008, 08:18 
Ассистент
Ассистент
Аватара пользователя

Зарегистрирован:
Ср, июл 30 2008, 09:41
Сообщения: 32
Откуда: Almaty
Пол: Мужской
John Doe
Между select ... endeselect воткните вызов ФМ SAPGUI_PROGRESS_INDICATOR каждые две-три минуты. Падать не должно.


А почему не будет падать???
Получается , что во время селекта идет переключение на другую операцию и время для TIME OUT обновляется, я так понимаю!!


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, авг 27 2008, 08:23 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 16:25
Сообщения: 3109
Пол: Мужской
[quote="mihey_x3m"][color=darkred]John Doe
Между select ... endeselect воткните вызов ФМ SAPGUI_PROGRESS_INDICATOR каждые две-три минуты. Падать не должно.[/color]

А почему не будет падать???
Получается , что во время селекта идет переключение на другую операцию и время для TIME OUT обновляется, я так понимаю!![/quote]
Я думаю что так.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, авг 27 2008, 08:23 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Чт, мар 09 2006, 10:12
Сообщения: 565
Откуда: Волгодонск
Пол: Мужской
Да, поработайте на оптимизацией выборки
Select * ...
BSIS довольно широкая таблица - лучше перечислите те поля которые вам нужны.

Запускайте в фоновом режиме.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, авг 27 2008, 08:25 
Специалист
Специалист

Зарегистрирован:
Пт, июл 22 2005, 08:56
Сообщения: 158
mihey_x3m написал:
John Doe
Между select ... endeselect воткните вызов ФМ SAPGUI_PROGRESS_INDICATOR каждые две-три минуты. Падать не должно.


А почему не будет падать???
Получается , что во время селекта идет переключение на другую операцию и время для TIME OUT обновляется, я так понимаю!!

потому что данный ФМ генерирует диалог. сообщение внизу, который сбивает таймаут...

И на самом деле - селект можно и нужно оптимизировать... :!:

_________________
C SAP
Изображение


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, авг 27 2008, 08:31 
Ассистент
Ассистент
Аватара пользователя

Зарегистрирован:
Ср, июл 30 2008, 09:41
Сообщения: 32
Откуда: Almaty
Пол: Мужской
часть
потому что данный ФМ генерирует диалог. сообщение внизу, который сбивает таймаут...

И на самом деле - селект можно и нужно оптимизировать...


Если даже через se11 по BSIS задать два условия, то тоже вылетает по тайм ауту.... Я не знаю как в таком влучае можно оптимизировать селект!


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, авг 27 2008, 08:33 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Ср, ноя 03 2004, 14:51
Сообщения: 1912
Откуда: КраснАдар
Пол: Мужской
to Besa
Можешь переменную ввести для времени, GET TIMEом обновлять данные системной переменой и сравнивать их.
Code:
DATA: XTIME TYPE SYST-TIMLO.

XTIME = SY-TIMLO + 120000.
SELECT ...
  GET TIME.
  IF XTIME = SY-TIMLO.
    CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'.
  ENDIF.
ENDSELECT.


Но лучше сперва сделать пробный селект для получения количества записей по-условию. Потом раздробить на 10 частей, к примеру, и вызывать ФМ в момент исполнения части селекта.

Но вообще самый лучший выход уже написали выше - "убить" селект-эндселект и выбирать данные во внутреннюю таблицу, можно тоже кусками.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, авг 27 2008, 08:40 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 16:25
Сообщения: 3109
Пол: Мужской
[b]to John Doe[/b]
Спасибо, тоже придерживаюсь мнения, что решение в оптимизации выборки, просто меня заинтересовал Ваш вариант, даже не думал что так можно.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, авг 27 2008, 08:42 
Ассистент
Ассистент
Аватара пользователя

Зарегистрирован:
Ср, июл 30 2008, 09:41
Сообщения: 32
Откуда: Almaty
Пол: Мужской
John Doe
Но вообще самый лучший выход уже написали выше - "убить" селект-эндселект и выбирать данные во внутреннюю таблицу, можно тоже кусками.


Я уже пробовал "убить" селект-эндселект разными способами, не полутилось... и я что-то не совсем понял, как данные во внутреннюю таблицу выбирать кусками?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, авг 27 2008, 08:46 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 16:25
Сообщения: 3109
Пол: Мужской
[quote="mihey_x3m"][color=darkred]John Doe
Но вообще самый лучший выход уже написали выше - "убить" селект-эндселект и выбирать данные во внутреннюю таблицу, можно тоже кусками.[/color]

Я уже пробовал "убить" селект-эндселект разными способами, не полутилось... и я что-то не совсем понял, как данные во внутреннюю таблицу выбирать кусками?[/quote]
SE30->Кнопка «Советы», SQL Interface. Может это поможет.


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

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


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

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


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

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