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

Часовой пояс: 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 часа


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

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


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

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