Текущее время: Вс, авг 03 2025, 23:06

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 7 ] 
Автор Сообщение
 Заголовок сообщения: AT SELECTION-SCREEN ON VALUE-REQUEST FOR...
СообщениеДобавлено: Ср, окт 22 2008, 17:20 
Старший специалист
Старший специалист

Зарегистрирован:
Пн, окт 20 2008, 10:29
Сообщения: 339
Откуда: Мюнхен
Пол: Мужской
Нужно сделать средство поиска для поля. Программа типа Include. Подскажите пожалуйста, можно ли как-то прописать этот блок в такого типа программе или как реализовать средство поиска для поля в таком случае.


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

Зарегистрирован:
Пн, май 14 2007, 13:05
Сообщения: 561
Откуда: Москва
Поиск valuerequest+search


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, окт 22 2008, 17:53 
Старший специалист
Старший специалист

Зарегистрирован:
Пн, окт 20 2008, 10:29
Сообщения: 339
Откуда: Мюнхен
Пол: Мужской
На форуме полно информации о создании средств поиска. Вот только не могу найти случай с ситуацией, когда диррективу ON VALUE REQUEST прописать просто негде. Мне бы кто подсказал, в какое место тогда прилеплять средство поиска


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

Зарегистрирован:
Вт, сен 07 2004, 17:47
Сообщения: 2988
VID написал:
На форуме полно информации о создании средств поиска. Вот только не могу найти случай с ситуацией, когда диррективу ON VALUE REQUEST прописать просто негде. Мне бы кто подсказал, в какое место тогда прилеплять средство поиска
В то самое и приляпывайте.
Прочитайте в конце концов соответствующие курсы - и по словарю, и вообще про программирование на ABAP.

_________________
"После" - не значит "вследствие"


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, окт 22 2008, 23:51 
Президент
Президент

Зарегистрирован:
Пт, апр 28 2006, 22:39
Сообщения: 2514
Откуда: North Taxolina, USA
Пол: Женский
VID, ну вы прямо как маленький(-ая), ей богу... Что значит "негде прописать"? У вас что, в редакторе строчки закончились? Ну вы нажмите клавишу Enter, они дальше пойдут.

Зайдите в ABAP Editor (SE38 или SE80), меню Environment -> Examples -> ABAP Examples -> ABAP User Dialogs -> Selection Screens. Там масса примеров есть, на все случаи жизни. Вот, например, посмотрите report DEMO_SELECTION_SCREEN_EVENTS, это оттуда же.

Естественно, в Include это тоже можно сделать. Bместо вопросов "а можно ли?" просто возьмите и попробуйте. Ну появится вдруг синтаксическая ошибка, так вас же за это клавиатура током не ударит (надеюсь). :roll:

_________________
"One of the symptoms of an approaching nervous breakdown is the belief that one's work is terribly important." Bertrand Russell


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

Зарегистрирован:
Чт, мар 09 2006, 10:12
Сообщения: 565
Откуда: Волгодонск
Пол: Мужской
Include - это просто куски текста вставляемых в программу в том месте где они объявлены, в любом случае выполняется не инклюд, а программа в которую он вставлен.
Для того чтобы найти программу - из SE38-Утилиты-Другие Утилиты-Главные программы, или журнал использования для инклюда.

И действительно "Что значит "негде прописать"?" берёте и пишете в любом подходящем месте инклюда.

дирректива ON VALUE REQUEST во внутреннем представлении фактически является подпрограммой такой же как любая FORM,
соответственно начинается она с её начала, а заканчивается перед объявлением любой другой аналогичной дерективы/подпрограммы...


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, окт 24 2008, 12:55 
Старший специалист
Старший специалист

Зарегистрирован:
Пн, окт 20 2008, 10:29
Сообщения: 339
Откуда: Мюнхен
Пол: Мужской
В принципе я в том случае обошелся просто созданием своего типа данных с перечислением в нем возможных значений. Повезло, что возможных значений оказалось 6 и они задавались вручную, а не лежали в табл и т.д.

Но за информацию спасибо всем, буду пробовать и так, на будущее пригодится. Надеюсь клава током не ударит за то, что я на ней такое набирать буду))

Еще раз всем спасибо!


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, окт 24 2008, 19:10 
Президент
Президент

Зарегистрирован:
Пт, апр 28 2006, 22:39
Сообщения: 2514
Откуда: North Taxolina, USA
Пол: Женский
VID написал:
В принципе я в том случае обошелся просто созданием своего типа данных с перечислением в нем возможных значений. Повезло, что возможных значений оказалось 6 и они задавались вручную, а не лежали в табл и т.д.


Теперь мне сдается, что вы просто неправильно вопрос задали. Судя по всему, вы не знаете, не "где прописать", а как вызвать search help. Ну вот простой пример, буквально на днях делала. В таблице PRPS есть поле USR00, которое может быть использовано для любых пользовательских нужд. Естественно, стандартного s/h для него нет, т.к. там может храниться все, что угодно. Сам search help (ZPS_PRPS_USR00) мы создали свой (в SE11) и в транзакции его вызов был уже реализован в BADI, откуда я и скопировала код, чтоб не изобретать велосипед.

Можете изменить код под любое другое поле. Кроме того, есть много других FM для s/h, не обязательно использовать именно этот.

Code:
parameters    : p_vernr2 type n length 8.    " shadow PM number

* Call new search help for Shadow PM
at selection-screen on value-request for p_vernr2.

  perform shadow_pm_value_request changing p_vernr2.

*&---------------------------------------------------------------------*
*&      Form  shadow_pm_value_request
*&---------------------------------------------------------------------*
*       Shadow PM search help
*----------------------------------------------------------------------*
*      -->p_shadow_pm  - Shadow PM number (parameter)
*----------------------------------------------------------------------*
form shadow_pm_value_request changing p_shadow_pm.

  data: itab_return type standard table of ddshretval,
        wa_return type ddshretval.

  call function 'F4_FIELD_ON_VALUE_REQUEST'
    exporting
      tabname           = 'PRPS'
      fieldname         = 'USR00'
      searchhelp        = 'ZPS_PRPS_USR00'
    tables
      return_tab        = itab_return
    exceptions
      field_not_found   = 1
      no_help_for_field = 2
      inconsistent_help = 3
      no_values_found   = 4
      others            = 5.

  if sy-subrc <> 0.
    message id sy-msgid type sy-msgty number sy-msgno
            with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
  else.
    loop at itab_return into wa_return.
      p_shadow_pm = wa_return-fieldval.
      exit.
    endloop.
  endif.

endform.                    " shadow_pm_value_request

_________________
"One of the symptoms of an approaching nervous breakdown is the belief that one's work is terribly important." Bertrand Russell


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

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


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

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


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

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