|
|
|
Просмотр Master-detail таблиц на одной странице
|
|||
|---|---|---|---|
|
#18+
Zeke, Вам не нужен класс региона, а именно класс элемента. То что выбирать надо, видимо это уже фишка пятого апекса. На самом деле не обязательно класс использовать, можно использовать произвольный атрибут, его то прописать можно? например my_attribue="ID_COLUMN" Тогда в ДА в селекторе, надо прописать так [my_attribue="ID_COLUMN"] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2015, 11:55 |
|
||
|
Просмотр Master-detail таблиц на одной странице
|
|||
|---|---|---|---|
|
#18+
Последовательность действий: 1. Создал hidden page item P_INSIDER_ID 2. У мастер запроса в page items to submit указал этот P_INSIDER_ID 3. У поля ID в мастер запросе написал в свойстве HTML Expression вот это <a href="#" class="my_class" onclick="return false">#ID#</a> 4. Создал Dynamic Action Event -> Click, Selection Type -> JQuery Selector, JQuery Selector -> .my_class в событии True Action -> Execute Java Script Code и вот такой код $s("P_INSIDER_ID",this.triggeringElement.value); 5. второй Dynamic Action тупо обновляет detail регион P.S. 1. У второго региона должна быть разрешена Enable Partial Page Refresh - есть 2 Во втором запросе должен в условии должен содержаться скрытый элемент select * from table where id=:P_INSIDER_ID; - есть В итоге не работает пока это. Печалька :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2015, 12:09 |
|
||
|
Просмотр Master-detail таблиц на одной странице
|
|||
|---|---|---|---|
|
#18+
Zeke, Ну давай отлаживать В пункт 4 после строчки $s("P_INSIDER_ID",this.triggeringElement.value); добавь alert("id="+this.triggeringElement.value); Результат сюда ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2015, 12:39 |
|
||
|
Просмотр Master-detail таблиц на одной странице
|
|||
|---|---|---|---|
|
#18+
Zeke, И еще сразу так. alert($(this.triggeringElement).html()); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2015, 12:44 |
|
||
|
Просмотр Master-detail таблиц на одной странице
|
|||
|---|---|---|---|
|
#18+
blkangel, Пишет : id=undefined ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2015, 12:49 |
|
||
|
Просмотр Master-detail таблиц на одной странице
|
|||
|---|---|---|---|
|
#18+
blkangelZeke, И еще сразу так. alert($(this.triggeringElement).html()); в итоге вот эти строки: $s("P_INSIDER_ID",this.triggeringElement.value); alert("id="+this.triggeringElement.value); alert($(this.triggeringElement).html()); как только открывается окно с master detail, то он в цикле показывает окошки сначала id=undefined а потом окно со значением id , то есть 7355, например ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2015, 12:52 |
|
||
|
Просмотр Master-detail таблиц на одной странице
|
|||
|---|---|---|---|
|
#18+
Zeke, Отлично Значит делаем $s("P_INSIDER_ID",$(this.triggeringElement).html()) Алерты убери ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2015, 12:54 |
|
||
|
Просмотр Master-detail таблиц на одной странице
|
|||
|---|---|---|---|
|
#18+
blkangel, И кстати, в действии убери галочку Fire On Page Load. Чтобы при загрузки страницы не срабатовало. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2015, 12:57 |
|
||
|
Просмотр Master-detail таблиц на одной странице
|
|||
|---|---|---|---|
|
#18+
blkangel, Галочку снял, в итоге цикл исчез, да Но вот алерты показывают, что ничего не присвоилось айтему P_INSIDER_ID $s("P_INSIDER_ID",$(this.triggeringElement).html()); alert("id="+this.triggeringElement.value); alert($("P_INSIDER_ID").html()); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2015, 13:09 |
|
||
|
Просмотр Master-detail таблиц на одной странице
|
|||
|---|---|---|---|
|
#18+
Zekeblkangel, Галочку снял, в итоге цикл исчез, да Но вот алерты показывают, что ничего не присвоилось айтему P_INSIDER_ID $s("P_INSIDER_ID",$(this.triggeringElement).html()); alert("id="+this.triggeringElement.value); alert($("P_INSIDER_ID").html()); Алерты неправильные у тебя. Ну хоть чуть чуть JS изучите :) alert("id="+this.triggeringElement.html()); alert($v("P_INSIDER_ID"));[/quot] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2015, 13:11 |
|
||
|
Просмотр Master-detail таблиц на одной странице
|
|||
|---|---|---|---|
|
#18+
blkangel, да, прошу прощения. Облажался в итоге алерт действительно показывает текущее значение P_INSIDER_ID но теперь не обновляется детэйл регион :( Может быть туда некорректно передается этот P_INSIDER_ID или он сбрасывается в какой-то момент? у DA стоит просто refresh этого второго региона региона при событии click на первом у DA последовательность выполнения задается через Sequence? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2015, 13:31 |
|
||
|
Просмотр Master-detail таблиц на одной странице
|
|||
|---|---|---|---|
|
#18+
Zeke, Открывай консоль в браузере, В хроме это правая кнопка "Просмотр кода элемента" вкладка консоль. Дальше в консоле правая кнопка XMLHttpRequest (Нам нужно увидеть уходит ли запрос на сервер) и дальше кликай по ссылкам. Еще один момент, во втором регионе, пропиши ему REGION_ID, в этом может быть еще проблема ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2015, 13:36 |
|
||
|
Просмотр Master-detail таблиц на одной странице
|
|||
|---|---|---|---|
|
#18+
blkangel, Я сделал все, что вы написали, а что конкретно я должен там увидеть? я нажимаю на строку в мастер отчете и в консоли появляется строка вида XHR finished loading: POST если ее развернуть, то видно вот это k.cors.a.crossDomain.send @ jquery-2.1.3.min.js:4 n.extend.ajax @ jquery-2.1.3.min.js:4 _call @ desktop.min.js:9 server.widget @ desktop.min.js:9 _refresh @ widget.report.min.js:1 report.reset @ widget.report.min.js:1 (anonymous function) @ widget.report.min.js:1 n.event.dispatch @ jquery-2.1.3.min.js:3 r.handle @ jquery-2.1.3.min.js:3 n.event.trigger @ jquery-2.1.3.min.js:3 (anonymous function) @ jquery-2.1.3.min.js:3 n.extend.each @ jquery-2.1.3.min.js:2 n.fn.n.each @ jquery-2.1.3.min.js:2 n.fn.extend.trigger @ jquery-2.1.3.min.js:3 da.refresh @ desktop.min.js:18 da.doAction @ desktop.min.js:17 da.doActions @ desktop.min.js:17 (anonymous function) @ desktop.min.js:17 n.extend.each @ jquery-2.1.3.min.js:2 n.fn.n.each @ jquery-2.1.3.min.js:2 da.actions @ desktop.min.js:17 (anonymous function) @ desktop.min.js:17 n.event.dispatch @ jquery-2.1.3.min.js:3 r.handle @ jquery-2.1.3.min.js:3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2015, 14:10 |
|
||
|
Просмотр Master-detail таблиц на одной странице
|
|||
|---|---|---|---|
|
#18+
blkangelZeke, Еще один момент, во втором регионе, пропиши ему REGION_ID, в этом может быть еще проблема Может STATIC ID ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2015, 14:14 |
|
||
|
Просмотр Master-detail таблиц на одной странице
|
|||
|---|---|---|---|
|
#18+
Zeke, Отлично, запрос уходит на сервер. Осталось совсем чуть чуть. XHR finished loading: POST а далее ссылочка http://your_host/apex/wwv_flow.show". Кликаете на нее, Вас перекинет на вкладку Network. Появится табличка, кликаете на тексте wwv_flow.show. Справа появится окошечко с вкладками (Headers, Preview, Response ...) Интересует вкладка Headers. Листаем вниз до блока "From data" В этом блоке перечислены параметры, которые уходят на сервер, стандартные p_request, p_instance, p_flow_id, p_flow_step_id. И далее должен быть Ваш параметр P_INSIDER_ID и его значение. Если все есть, то мы сделали все правильно. Если нет проверяем пункт 2. У мастер запроса в page items to submit указал этот P_INSIDER_ID ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2015, 14:19 |
|
||
|
Просмотр Master-detail таблиц на одной странице
|
|||
|---|---|---|---|
|
#18+
ZekeblkangelZeke, Еще один момент, во втором регионе, пропиши ему REGION_ID, в этом может быть еще проблема Может STATIC ID ? Да, именно он. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2015, 14:19 |
|
||
|
Просмотр Master-detail таблиц на одной странице
|
|||
|---|---|---|---|
|
#18+
blkangelZeke, Отлично, запрос уходит на сервер. Осталось совсем чуть чуть. XHR finished loading: POST а далее ссылочка http://your_host/apex/wwv_flow.show". Кликаете на нее, Вас перекинет на вкладку Network. Появится табличка, кликаете на тексте wwv_flow.show. Справа появится окошечко с вкладками (Headers, Preview, Response ...) Интересует вкладка Headers. Листаем вниз до блока "From data" В этом блоке перечислены параметры, которые уходят на сервер, стандартные p_request, p_instance, p_flow_id, p_flow_step_id. И далее должен быть Ваш параметр P_INSIDER_ID и его значение. Если все есть, то мы сделали все правильно. Если нет проверяем пункт 2. У мастер запроса в page items to submit указал этот P_INSIDER_ID Среди этих параметров P_INSIDER_ID нет :( Но у мастер запроса действительно указан Page Items to Submit -> P_INSIDER_ID и у детэйл я указал static id тоже (CLIENTS) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2015, 14:32 |
|
||
|
Просмотр Master-detail таблиц на одной странице
|
|||
|---|---|---|---|
|
#18+
Zeke, Стоп, Page Items to Submit -> P_INSIDER_ID должен быть указан у региона номер 2, который должен обновлятся ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2015, 14:34 |
|
||
|
Просмотр Master-detail таблиц на одной странице
|
|||
|---|---|---|---|
|
#18+
blkangelZeke, Стоп, Page Items to Submit -> P_INSIDER_ID должен быть указан у региона номер 2, который должен обновлятся Алиллуйя, братья и сестры! Все заработало!!!!! Вы святой человек, blkangel ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2015, 14:38 |
|
||
|
Просмотр Master-detail таблиц на одной странице
|
|||
|---|---|---|---|
|
#18+
Zeke, Я думаю стоит повторить задачу, и ее решение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2015, 14:41 |
|
||
|
Просмотр Master-detail таблиц на одной странице
|
|||
|---|---|---|---|
|
#18+
кстати, пока я тут мытарился с этим всем, то нашел еще один способ обновить этот детайл. Для этого нужно в поле ID мастер таблицы в свойстве HTML Expression прописать вот этот код: <a href="f?p=&APP_ID.:&APP_PAGE_ID.:&SESSION.::::P_INSIDER_ID:#ID#">#ID#</a> и тогда можно вообще без всяких Dynamic Action и java классов обойтись. Но единственный минус этого - обновляется вся страница каждый раз, ну это и логично. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2015, 14:44 |
|
||
|
Просмотр Master-detail таблиц на одной странице
|
|||
|---|---|---|---|
|
#18+
blkangelZeke, Я думаю стоит повторить задачу, и ее решение. я надеюсь, мои страдания помогут кому-нибудь :) тут уже наверно детальный мануал расписан, как это делать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2015, 14:47 |
|
||
|
Просмотр Master-detail таблиц на одной странице
|
|||
|---|---|---|---|
|
#18+
Zeke, Выложи последним постом, чтобы не ходить по всем постам и не собирать это воедино. 1. Задача 2. Решение пошагово. И закроем тему :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2015, 16:54 |
|
||
|
Просмотр Master-detail таблиц на одной странице
|
|||
|---|---|---|---|
|
#18+
Задача - создать master-detail report на одной странице, чтобы при нажатии на master отчете обновлялся detail отчет без submit page 1. Создал hidden page item P_INSIDER_ID 2. У detail запроса в page items to submit указал этот P_INSIDER_ID 3. У поля ID в мастер запросе написал в свойстве HTML Expression вот это: <a href="#" class="my_class" onclick="return false">#ID#</a> 4. Создал Dynamic Action: Event -> Click, Selection Type -> JQuery Selector, JQuery Selector -> .my_class в событии True: Action -> Execute Java Script Code и вот такой код $s("P_INSIDER_ID",$(this.triggeringElement).html()); свойство Fire On Page Load -> NO 5. второй Dynamic Action тупо обновляет detail регион: Event -> Click, Selection Type -> Region, Region -> имя master региона в событии True: Action-> Refresh, Selection Type -> Region, Region -> имя detail региона P.S. 1. У второго региона должна быть разрешена Enable Partial Page Refresh 2 В detail запросе в условии должен содержаться hidden page item: select * from table where id = :P_INSIDER_ID; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2015, 17:22 |
|
||
|
Просмотр Master-detail таблиц на одной странице
|
|||
|---|---|---|---|
|
#18+
В догонку добавлю еще. При удалении записи из master таблицы может появиться ошибка: Session state protection violation: This may be caused by manual alteration of protected page item hidden page item name. If you are unsure what caused this error, please contact the application administrator for assistance. Тогда у скрытого элемента нужно свойство Value Protected сделать No ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2015, 14:58 |
|
||
|
|

start [/forum/topic.php?fid=50&msg=39055149&tid=1874774]: |
0ms |
get settings: |
4ms |
get forum list: |
11ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
17ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
37ms |
get tp. blocked users: |
1ms |
| others: | 192ms |
| total: | 273ms |

| 0 / 0 |
