I am using Oracle APEX 21.1. I've created a report with a form. The query of the report is...
SELECT DECODE(I.visit_type_id, 1, '<a href="' ||APEX_PAGE.GET_URL (p_page => 2, p_clear_cache=> '2', p_items =>'P2_ID,P2_VISIT_ID', p_values => I.EXAMINATION_FOLLOWUP_ID ||',' ||I.VISIT_ID) || '">فحص</a>', '<a href="' ||APEX_PAGE.GET_URL (p_page => 5, p_clear_cache=> '5', p_items => 'P5_ID,P5_PATIENT_ID,P5_VISIT_ID', p_values=> I.EXAMINATION_FOLLOWUP_ID ||',' ||P.ID ||',' ||I.VISIT_ID) || '">متابعة</a>') process_patient,
I.VISIT_ID,
I.PATIENT_ID,
I.VISIT_DATE,
I.VISIT_TYPE_ID,
I.REFERRED_FROM_ID,
I.EXAMINATION_FOLLOWUP_ID,
P.NAME PATIENT_NAME,
P.AGE,
C.NAME CITY
FROM
(SELECT V.ID VISIT_ID,
V.PATIENT_ID,
V.VISIT_DATE,
V.VISIT_TYPE_ID,
V.REFERRED_FROM_ID,
E.ID EXAMINATION_FOLLOWUP_ID
FROM PATIENT_VISIT V
LEFT JOIN EXAMINATION E ON E.VISIT_ID = V.ID
WHERE VISIT_TYPE_ID = 1
UNION ALL SELECT V.ID VISIT_ID,
V.PATIENT_ID,
V.VISIT_DATE,
V.VISIT_TYPE_ID,
NULL REFERRED_FROM_ID,
F.ID FOLLOW_UP_ID
FROM PATIENT_VISIT V
LEFT JOIN FOLLOW_UP F ON F.VISIT_ID = V.ID
WHERE VISIT_TYPE_ID = 2 ) I
JOIN PATIENT P ON P.ID = I.PATIENT_ID
LEFT JOIN CITY C ON C.ID = P.CITY_ID;
As you can see, there are 2 modal pages that should open based on visit_type_id which is the parameter to the DECODE function. This is the part where the problem resides. In modal page 2, I created an item and a process to set the item's value to the REQUEST VALUE :P2_REQUEST := :REQUEST. In page 14(the report page), I've created an item P14_REQUEST and a Dialog Closed dynamic action with the When section's Selection Type set to javaScript expression and the expression = window. Then added a true action (Set Value) with type = dialog return item. The item is P2_REQUEST and the affected element is P14_REQUEST. The value of the request is returned successfully to P14_REQUEST. The problem is about the second page(5). When I do the same steps aforementioned, the value of the request is not returned at all. Is there a bug or something prevent working with multiple modal pages? I have created a simulation on apex.oracle.com - a report(7) that calls 2 modal pages(9 and 10), when you update any value in any modal page and submits the page, the request value should be returned to P7_REQUEST. Unfortunately, that does not happen now using either pages. Maybe I am missing something.
ws= ESLAM_WS
un= forhelp
pwd= Forhelppwd$
app= help
pages= 7, 9 and 10