Интерактивный отчет Oracle Apex 4.2 с таблицами поиска
Я создал таблицу под названием NAMES, в которой есть столбец с именем Status.
На STATUS я создал таблицу поиска, и это создало новую таблицу с именем Status_lookup, которая имеет 2 столбца (STATUS_ID и Status)
Таким образом, столбец таблицы NAMES изменился на STATUS_ID
когда я делаю интерактивные отчеты, данные поступают из STATUS_ID, который является числом, мне нужен текст, который хранится в статусе.
Не могли бы некоторые объяснить, как я это делаю. Я думал, что это будет довольно легко, но я не понимаю, как это сделать. Я не новичок в приложениях Oracle, поэтому пошаговое руководство будет полезно
1 ответ
Пример: select * from emp
я хочу DEPTNO
отображать DNAME
который можно найти в DEPT
Что я обычно делаю, это:
Перейдите в "Общие компоненты> Списки значений" и создайте новый с нуля, введите динамический.
Я называю свой LOV "DEPARTMENTS", и у него есть этот SQL:
select dname d, deptno r
from dept
order by 1
Чтобы затем сопоставить это с колонкой в IR, перейдите на страницу с IR и отредактируйте его. Перейти к атрибутам отчета. Оттуда вы можете увидеть столбцы в ИК и отредактировать их атрибуты, нажав на значок карандаша. В атрибутах столбца вы можете изменить тип отображения столбца. Установите для него "Отображать как текст (на основе LOV, экранировать специальные символы)".
Затем перейдите в раздел "Список значений" и выберите LOV из списка выбора "Именованный список значений". (В моем примере это "ОТДЕЛЫ").
Затем Apex отобразит значения в IR sql на значение отображаемого значения LOV.
В качестве альтернативы, вы также можете просто изменить SQL отчета, чтобы отобразить отображаемое значение, например:
SELECT empno, ename, depto, (select dname from dept where deptno = e.deptno) dname
from emp