У меня есть следующая проблема в приложении express, которая сводит меня с ума:
У меня есть табличная форма в APEX 4.1, которая включает столбец ссылок. Когда пользователь нажимает на столбец, я хочу сохранить текущее состояние приложения и перенаправить его на другую страницу. Я должен передать идентификатор строки, в которой была нажата ссылка, на другую страницу.
С помощью Google я нашел это решение:
https://forums.oracle.com/forums/thread.jspa?threadID=489666&tstart=720
Идея заключается в отправке страницы с использованием специального значения REQUEST и сохранении всех необходимых значений элементов в скрытых элементах страницы с использованием функции JavaScript, вызываемой по ссылке.
Затем вы создаете ветвь страницы, ища специальное значение REQUEST в качестве условия и переходя на нужную страницу, устанавливая элементы на целевой странице на элементы страницы на текущей странице, которые вы сохранили ранее.
Я следовал инструкциям, но он не работает. Целевая страница загружается, но элементы не установлены.
В моем javascript я поместил предупреждение, отображающее значение переданного идентификатора. Это работает. Я также изменил скрытые элементы страницы табличной формы на текстовое поле, и они корректно обновляются и сохраняются.
Журнал также показывает что-то вроде этого:
...Session State: Saved Item "P20_PRUEFUNG_ID_AKTIV" New Value="3950"
, который выглядит хорошо.
Однако при просмотре URL целевой страницы после перенаправления это выглядит так:
? Е не р = 110: 22: 1750507087114492 :: NO :: P22_PRUEFUNG_ID:
P22_PRUEFUNG_ID - это имя элемента страницы, который я хочу установить на целевой странице. Обратите внимание, что для элемента не передается значение.
В журнале целевой страницы я нахожу это:
Session: Fetch session header information
Saving g_arg_names=P22_PRUEFUNG_ID and g_arg_values=
...Session State: Save "P22_PRUEFUNG_ID" - saving same value: ""
По какой-то причине значение со страницы 20 не передается на страницу 22. Глядя на мою ветку, я не могу найти никакой ошибки. Я создал нормальную ветку (после обработки) со следующими параметрами:
Страница: 22
Установите эти пункты: P22_PRUEFUNG_ID
С этими значениями: & P20_PRUEFUNG_ID_AKTIV.
Условие: Запрос = EDITSG (значение моего специального запроса).
Я должен добавить, что я все еще новичок в APEX. Так что это, наверное, что-то глупое.
Другие решения для решения проблемы, описанной в начале, конечно, также приветствуются. Бонусные баллы за идеи, как заставить это работать с вновь вставленными элементами (передавая id нового элемента).
Редактировать : Вот скриншот исходной страницы:
На странице есть еще 2 ветки. Ветка на стр. 21 похожа на ветку на стр. 22, просто срабатывает при нажатии на другую ссылку в таблице (другое значение REQUEST) и тоже не работает.
Я действительно не знаю, почему существует ветка на странице 20, которая является текущей страницей. Это то, что добавил APEX. Может быть, это следствие обновления из APEX 3. В любом случае я отключил его, установив условие «никогда», поэтому оно не должно влиять на результаты (?)
Спасибо!