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

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 39 ]  На страницу Пред.  1, 2, 3  След.
Автор Сообщение
 Заголовок сообщения:
СообщениеДобавлено: Пт, июн 16 2006, 11:26 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Сб, сен 25 2004, 16:30
Сообщения: 1368
Откуда: Москва
Пол: Мужской
вот выберет юзер 201 материал и офигеет... :)

_________________
С уважением, Сергей Королев


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, июн 16 2006, 11:34 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Ср, май 04 2005, 16:29
Сообщения: 687
Откуда: Нижневартовск->Москва
Пол: Мужской
Как вариант (если пользователь всегда вводит номер материала и не пользуется диапазонами). Определить обязательный для ввода SELECT-OPTIONS без интервалов, сделать доступной только знак I и опцию EQ, а затем читать MARA, используя FOR ALL ENTRIES по matnr-low.


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, июн 16 2006, 11:46 
Председатель
Председатель
Аватара пользователя

Зарегистрирован:
Пн, сен 06 2004, 11:43
Сообщения: 1551
Пол: Мужской
РМщик написал(а):
Eugene написал(а):
устроить пользователю тёмную
:D
ага, тем более разбудили в 1 час ночи из-за этого :(

Да ладно вам - пожалейте юзера..... Он пришел на работу, начал набивать свои 6700 записей к часу ночи закончил - а вы ему заморенному, уставшему и обломанному сразу темную :lol: :lol: :lol: :lol: Он уже после первой 1000 не соображал что делал............ :lol: :lol: :lol: :lol: :lol:

А вообще сделать describe и обрубить по количеству........ Либо заменить select-options на range и кусками туда кидать и выполнять.......

_________________
Ex ipso fonte bibere
Цитата:
Abyssus abyssum invocat
Dies diem docet
Ducunt volentem fata, nolentem trahunt

Estote prudentes sicut serpentes


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, июн 20 2006, 09:21 
Начинающий
Начинающий
Аватара пользователя

Зарегистрирован:
Пн, сен 27 2004, 10:30
Сообщения: 14
А такая конструкция не подойдет?

SELECT * FROM sflight INTO wa_sflight
FOR ALL ENTRIES IN ftab
WHERE ...


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, июн 21 2006, 15:35 
Специалист
Специалист

Зарегистрирован:
Чт, июн 23 2005, 18:05
Сообщения: 119
А еще можно создать в словаре табличку из одного поля которое является ключем.

При событии ввода юзером результата своих трудов тысяч значений запихнуть их в эту табличку.

И селект строить c INNER JOIN ON ....

Потом почистить табличку не забыть.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, июн 21 2006, 16:13 
Гость
kizif написал(а):
А еще можно создать в словаре табличку из одного поля которое является ключем.

При событии ввода юзером результата своих трудов тысяч значений запихнуть их в эту табличку.

И селект строить c INNER JOIN ON ....

Потом почистить табличку не забыть.


оригинально....

но ведь на каждую прогу со своими ключами не будешь делать табличку в словаре...


Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения:   Тема решена
СообщениеДобавлено: Ср, июн 21 2006, 16:29 
Специалист
Специалист

Зарегистрирован:
Чт, июн 23 2005, 18:05
Сообщения: 119
Я думаю что одна такая табличка с полем char длиной 10~20 символов прокатит в таком объединении и покроет любые потребности в подобного рода ключах.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, июн 21 2006, 20:04 
Гость
kizif написал(а):
Я думаю что одна такая табличка с полем char длиной 10~20 символов прокатит в таком объединении и покроет любые потребности в подобного рода ключах.


ОК, спасибо, попробую


Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, июн 22 2006, 05:05 
Специалист
Специалист

Зарегистрирован:
Вт, ноя 02 2004, 10:06
Сообщения: 136
Нет, так сходу не прокатит. А как же функциональности типа "I QE" или "E GT". Т.е. пользователь может же не только указать список, но и сказать типа этот равен, этот содржит образец, а этот не включать.
Еще как вариант - преобразовывать один select-options в другой. Берем и смотрим - если много одиноких значений - пытаемся преобразовать в диапазоны. У нас кто-то такое делал. Хотя это потребует дополнительного пробега по таблице значений для select-options. И все равно можно перебрать :(


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, июн 22 2006, 07:20 
Ассистент
Ассистент
Аватара пользователя

Зарегистрирован:
Ср, окт 12 2005, 07:54
Сообщения: 45
Пол: Мужской
IMHO: C точки зрения банальной эрудиции 6700 отдельных значений matnr не могут иметь какого-либо удобоваримого смысла. Не может пользователь оценить такое количество записей. Может надо использовать диапазоны или другие критерии, например, группы материалов или вид материала...

_________________
Большие обещания уменьшают доверие


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, июн 22 2006, 08:02 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Сб, сен 25 2004, 16:30
Сообщения: 1368
Откуда: Москва
Пол: Мужской
MMY написал:
IMHO: C точки зрения банальной эрудиции 6700 отдельных значений matnr не могут иметь какого-либо удобоваримого смысла. Не может пользователь оценить такое количество записей.

Юзер - существо творческое и бесстрашное, ему всегда нужно все и сразу, потом он это все распечатает на простыне и будет изучать, ползая на коленках... :)

_________________
С уважением, Сергей Королев


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, июн 22 2006, 11:28 
Гость
MMY написал:
IMHO: C точки зрения банальной эрудиции 6700 отдельных значений matnr не могут иметь какого-либо удобоваримого смысла. Не может пользователь оценить такое количество записей. Может надо использовать диапазоны или другие критерии, например, группы материалов или вид материала...


ни фига подобного,
пользователь один раз в Excel сформировал такой большой
список - по критириям, одному ему известным,
а потом через буфер пытается загонять в отдельные значения :wink:


Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, июл 06 2006, 13:18 
Гость
РМщик написал(а):
вообщем пока я поставил временное решение:

Code:
   DESCRIBE TABLE MATNR LINES KSPIS.

   IF KSPIS > 200.
     LSPIS = 'X'.
   ENDIF.
   IF LSPIS NE 'X'.
         SELECT * FROM ZMM_KAT INTO CORRESPONDING FIELDS OF TABLE T_KAT WHERE  MATNR IN MATNR.
      ELSE.
         SELECT * FROM ZMM_KAT INTO CORRESPONDING FIELDS OF TABLE T_KAT .
           DELETE T_KAT WHERE NOT MATNR IN MATNR.
    ENDIF.



мне казалось, что самое разумное решение примерно такое:

создать свой
ranges : х for <ваша таблица>-X.

переписать в х все, что навводил ваш юзер поделив на порции по 1000 записей и для каждой из них запускать ваш select, складываю все полученные записи в табличку.

работает достаточно быстро


Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, июл 06 2006, 13:31 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Ср, сен 21 2005, 10:01
Сообщения: 651
Откуда: СССР
А вообще таким способом можно повалить много програмулин. Не ставить же везде проверки...

а если в проге 50 SO на сел. экране?

Каждый разбивать? Как их потом использовать, если они ограничивать должны одну и ту же выборку? Простой пример:

Дано:
select-options so_mblnr for mseg-mblnr.
select-options so_matnr for mseg-matnr.

Надо:
select * from mseg where mblnr in so_mblnr and matnr in so_matnr.

Какие будут варианты, если юзер введет и туда и туда больше, чем нужно? Можно конечно выдернуть весь МСЕГ и фильтровать...

Все равно это заплаточный метод, по-моему, надо просто запрещать вводить слишком много ограничений.... Я, по крайней мере, делаю так.


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, июл 06 2006, 14:43 
Гость
интересно, а как стандарт с этим борется?


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

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


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

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


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

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