Posted: Wed Apr 09, 2008 4:44 pm Post subject: передача параметров в поисковик
есть самописный экран с двумя полями. в первое поле передается значние. ко второму полю привязан "элементарный" поисковик(тоже самописный). в поисковике требуется ограничить выборку по значению из первого поля. прописал в элементе данных ИдПараметра (элемент данных и название полей в поисковике и на экране одинаковые), в поисковике указал этот Ид в значении по-умолчанию. в редакторе экранов для первого поля проставил галки сет гед-параметров. а значение этого поля все равно не передается на экран поисковика. подскажите, что я не так сделал? поисковик сделан на "ракурсе базы данных"
Роман, можно поконкретней? Какие элементы данных для первого и второго поля и какой search-help пытаетесь подвесить?
для первого элемент данных ZFASET. пописал в нем Ид ZFAS. второе поле имеет тип ITXTZ. в поисковике поле имеет такое же название и тип как у первого т.е. ZFASET и название и элемент данных.
По всей видимости значения в set get переменные c экрана попадают после нажатия ENTER. Может воспользоваться DYNP_VALUE_READ?
после нажатия ENTER? это как? такое срабатывает на селекционнике, а у нас уже запущенный поисковик.
на счет DYNP_VALUE_READ - еще не думал, но надо попробовать
При передаче данных в поле экрана и после вывода экрана, или просто после ввода данных значение не попадает в set переменную. Только после нажатия на ENTER или, по всей видимости, какую нибудь другую кнопку, данные передаются в SET переменную. По кнопке поиска значение еще не передано, а вы в поисковике пытаетесь его задействоватью
Posted: Mon Apr 14, 2008 9:22 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» (, то получим тот же результат как и с таблицей 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.