Значения Oracle APEX не загружаются в форму - PullRequest
0 голосов
/ 03 октября 2018

На моей странице APEX я открываю всплывающую страницу и пытаюсь загрузить ее данными из базы данных.Для этого я использовал Pre-Rendering After Header Process.Тип процесса установлен на PL / SQL-код:

BEGIN
  IF :P3_RECORD_ID IS NOT NULL THEN
     select TYPE_ID, RECORD_TEXT
     INTO :P3_TYPE_ID, :P3_RECORD_TEXT
     from TABLE1
     where RECORD_ID = :P3_RECORD_ID;
  END IF;
END;

На всплывающей странице у меня есть раскрывающийся список (P3_TYPE_ID), который заполняется из LOV и текстового поля (P3_RECORD_TEXT).Значения отображаются в состоянии сеанса, но не в раскрывающемся или текстовом поле.Я не могу понять, что я делаю неправильно ...

Я также попробовал Automated Row Fetch, но он также не загружал никаких значений в поля, просто в состояние сеанса

1 Ответ

0 голосов
/ 03 октября 2018

Рассматривали ли вы использовать значение по умолчанию для этих элементов?Это будет "тело функции PL / SQL", которое будет выглядеть следующим образом (для P3_TYPE_ID):

declare
  l_type_id table1.type_id%type;
begin
  select max(type_id)
  into l_type_id
  from table1
  where record_id = :P3_RECORD_ID;

  return l_type_id;
end;

Я использовал функцию MAX, чтобы избежать возможных ошибок NO_DATA_FOUND и TOO_MANY_ROWS.При необходимости обработайте их в секции EXCEPTION.

Аналогичным образом заполните P3_RECORD_TEXT.

...