Posted: Tue Apr 15, 2008 7:30 pm Post subject: Ограничение средства поиска на основе данных на экране
Ограничение средства поиска на основе введенных на экране данных
Автор: Брат Мигель
Очень часто возникает задача выбора данных из средств поиска, с учетом уже введенных данных на экране выбора.
Рассмотрим пример.
Есть два поля ввода: завод и склады.
Выбираем завод.
После выбора завода, нам нужно вывести список складов относящихся к данному заводу.
Данный способ основан на использовании внешнего ключа, который указан в таблице у данного поля (в нашем случае Склад – «LGORT»).
При нажатии на кнопу выбора, система автоматически возьмет значение из зависимого параметра (в нашем случае Завод = 7600), только в том случае, если данный параметр будет объявлен как ссылка (LIKE) на тип из внешнего ключа. Посмотреть данный тип можно следующим образом.
Заходим в транзакцию SE11. Выбираем таблицу, содержащую данное поле.
Выделяем интересующее нас поле (1) и нажимаем на кнопку внешний ключ (2).
На рисунке видно, что нужное нам поле (3) (В нашем случае WERKS-«Завод») должно быть объявлено как «WERKS_ LIKE TWLOF-WERKS». В итоге имеем следующее объявление:
parameters:
werks_ like TWLOF-WERKS,
lgort_ like TWLOF-lgort.
Данная конструкция будет автоматически ограничивать список складов по полю завод.
ВАЖНО: Может возникнуть ситуация, когда у нужного нам поля нет внешнего ключа (4).
Можно пойти 2-мя путями.
• Создать собственную структуру, описав поля с внешним ключом (конечно не забывая указывать средства поиска (5) ).
• Либо обратится к таблице внешних ключей DD05S.
В se16 (либо в se11) на экране выбора введем нужные нам ограничения, а именно: Поле – «LGORT» (6) и внешний ключ - «WERKS» (7).
Открываем таблицу и видим следующий результат.
На экране отбражен список таблиц, которые содержат поле «LGORT». И у этого поля внешний ключ WERKS. Т.е. если мы объявим параметры, как ссылки на поля таблицы «ARESB» (8 ), то получим тот же результат как и с таблицей TWLOF.
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum You cannot attach files in this forum You can download files in this forum
All product names are trademarks of their respective companies. SAPNET.RU websites are in no way affiliated with SAP AG. SAP, SAP R/3, R/3 software, mySAP, ABAP, BAPI, xApps, SAP NetWeaver and any other are registered trademarks of SAP AG. Every effort is made to ensure content integrity. Use information on this site at your own risk.