2014-02-21 2 views
0

У меня есть одна причудливая идея сделать поиск через Oracle Forms в моих таблицах. Поэтому я могу сделать это легко одним способом: пользовательские типы FULL значение значения и выполнить его. Выражение «значение критерия» Я имею в виду, что пользователь может искать, например, Employee в его имени. То, что я намереваюсь сейчас, - это когда пользователь ставит, например, первую букву «J» в поле поиска, я хочу рассылать список всем сотрудникам, имена которых начинаются с «J», тогда пользователь может просто выбрать из этого списка и выполнить поиск.Формы оракула, создающие фантастический поиск (pl/sql)

Вся часть поиска элемента, выбрав из списка, понятна для меня (которая появляется, когда пользователь вводит первую букву, или нет, если нет данных, которые соответствуют ей), но теперь у меня есть проблема, как я могу передайте этот выбранный вход в мою таблицу основных данных и выполните запрос, который примерно такой:

(ВЫБОР * ИЗ СОТРУДНИКОВ E ГДЕ E.NAME = ???). В '???' должен быть передан мой параметр. Как я могу это сделать с помощью PL/SQL?

+0

Это не ясно, что ваши Настроенный. Пользователь вводит строку поиска в текстовое поле или собирает письмо из элемента списка? –

+0

Я упоминаю, что пользователь вводит букву (с клавиатуры). Он может писать целые слова, но для удобства я хочу показать список в его строке – user3252538

+0

Да, это работает как с текстовыми элементами, так и с элементами списка. –

ответ

3

Если у вас есть ваш элемент поиска с именем, например. SEARCH_NAME:

  1. Установите По умолчанию Где на тэ блока работника к NAME LIKE :SEARCH_NAME || '%'
  2. Когда пользователь выбирает значение, то будет иметь триггер или кнопку они щелкните, чтобы сделать поиск. Это триггер будет иметь:

    GO_BLOCK('EMPLOYEE_BLOCK'); 
    EXECUTE_QUERY; 
    
+0

Итак, поле поиска и блок служащих должны иметь одну и ту же переменную SEARCH_NAME. Как я могу передать это между собой? – user3252538

+0

Что это значит? Вам не нужно «пропускать» что-либо. Если он используется предложением where, когда вы выполняете запрос в блоке, в это время будет выполняться любое значение. –

+0

О, я понимаю, у меня есть один холст с разным выигрышем, а у моего masterdetail есть еще один. Все точки в одном блоке кладут его Employee_block. С этой логикой он должен работать. В любом случае, я получаю идею, спасибо – user3252538

Смежные вопросы