=====Oracle Apex ab 20.1 - Die APEX URL im Detail - APEX URL Format ab der Version 20.1=====
Anmerkungen zum APEX URL Format.
----
==== Wichtige Shortcut URLS ====
=== Direkt auf den INTERNAL Workspace springen mit "apex_admin" ===
https://myapexserver/ords/apex_admin
==Workspace Namen hinterlegen im Parameter F4550_P1_COMPANY:WORKSPACENAME ==
WORKSPACENAME durch den eigenen Names des Workspaces ersetzen
https://myapexserver/ords/f?p=4550:1:::::F4550_P1_COMPANY:WORKSPACENAME
==LOGIN Seite aufrufen über LOGIN_DESKTOP ==
Frische Login Seite:
https://myapexserver/ords/f?p=100:LOGIN_DESKTOP
----
==== Das klassische APEX Format ====
Ein Aufruf von APEX erfolgt intern über die PL/SQL Procedure **f** mit dem Parameter **p**, alle Werte für dem Parameter **p** werden durch **:** getrennt übergeben.
Die Procedure F ist in der Datenbank der zentrale Einstieg für den Aufruf von APEX
select owner,object_type from dba_objects where object_name='F';
Owner | Object Type
PUBLIC SYNONYM
APEX_210200 PROCEDURE
Über F wird jeder Aufruf getunnelt.
=== Die URL ===
^Protokoll^ Server ^ Port^ Webapp ^ PL/SQL Routine ^ APP Nr ^ Page Nr ^ Session ID ^ Die Anfrage ^ Druckansicht ^
|https:// |webserver:| 8080| /ords |/f?p= |500:| 11: |987654321: | ::::P11_ID,P11_NAME:WertID,WertName | YES |
Wichtig ist also alles **:** getrennte nach der Seitennummer, hier wird die gesamte Parameter Logik für eine Seite codiert.
| |https:// | Protokoll |
| |webserver: |DNS Alias / Maschinen Name etc |
| |8080 |Port des Servers |
| |/ords |Name des Servlets das APEX aufrufen kann|
| |/f?p= |Rufe Procedure f mit dem Parameter p auf |
|:|500 |Appliaktions-Alias / Applikations ID |
|:|11 |Seiten-Alias / Seitennummer |
|:|987654321 |Session ID ; 0 für Public Pages|
|:|REQUEST |Name des Request für die Zielseite (wird vom Prozess z.b. Ausgewertet und beim Submit der Seite gesetzt, im Regelfall der Name des Buttons der Page Submit anfordert)|
|:|YES |Debug der Seiten (YES/NO)|
|:|RP |Anweisung wie der Cache behandelt werden soll z.B. RP für Reset Pagination |
|:|P11_x,P11_y |Name der Pages Items im Aufruf der Seite (durch , getrennt)|
|:|WERT_P11x, Wert_P11y|Werte der obigen Parameter (durch , getrennt)|
|:|YES |Druckseite anfordern (YES/NO)|
Im Details für 23.2 siehe hier => https://docs.oracle.com/en/database/oracle/apex/23.2/htmdb/understanding-legacy-url-syntax.html
----
==== Das "Friendly URL" Format ab 20.1 ====
^Protokoll^ Server ^ Port^ Webapp ^ Workspace ^Apex Prefix^ APP Name ^ Page Name ^ Session ID ^ Die Anfrage ^
|https:// |webserver:| 8080| /ords |/gpi |/r | /AppName| SeiteAnwender |?session=987654321 | P11_x = WERT_P11x&P11_y = Wert_P11y |
| |https:// |Protokoll |
| |webserver: |DNS Alias / Maschinen Name etc |
| |8080 |Port des Servers |
| |/ords |Name des Servlets das APEX aufrufen kann bzw. des Rest Services|
| |/gpi |Name des Workspaces in dem sich die APP befindet |
| |/r |Statisch auf r gesetzt, kann angepasst werden |
| |/AppName | Appliaktionsname, gibt es diesen doppelt dann wird am Appliaktionsname noch die ApplikationsID angehängt|
| |/SeiteAnwender | Seiten-Alias , auch die Seitennummer kann verwendet werden|
|?|session=987654321 | Session ID ; 0 für Public Pages|
| |P11_x = WERT_P11x&P11_y = Wert_P11y| Parameter=Wert Paare der Seite mit "&" verknüpft |
|&|request=SAVE | Name des Request für die Zielseite (wird vom Prozess z.b. ausgewertet und beim Submit der Seite gesetzt)|
|&|clear=RP | Clear Cache der Seite, CR = Clear Region, RR = Reset Region, RP = Reset Pagination|
|&|debug=no | Debug mit yes aktiveren |
|#| anker | Html Anker in der Seite anspringen |
Im Details für 23.2 siehe hier => https://docs.oracle.com/en/database/oracle/apex/23.1/htmdb/understanding-friendly-url-syntax.html
=== URL Parameter anpassen ===
== Workspace Aufruf Name in der URL ==
Der Aufrufname des Workspaces in der URL (obiges Beispiel .../gpi/...) lässt sich anpassen über den Internal Workspace der APEX Umgebung.
Anpassen im "Internal Workspace"
Manage Workspaces / Existing Workspace / Edit Workspace Information / =>
Component Availability / RESTful Path Prefix
{{ :prog:apex:apex_workspace_set_restful_path_prefix.jpg?600 | Oracle APEX RESTful Path Prefix }}
----
==== Eine APEX URL Manuell erzeugen ====
Siehe auch [[prog:apex_authorization_scheme_protect_link|Oracle Apex 18 / 19 / 20 - einen Link in einem Report mit einem Authorization Scheme schützen]]
Über **APEX_UTIL.PREPARE_URL** kann eine URL in APEX mit der passenden Checksum erzeugt werden.
Siehe dazu auch => https://docs.oracle.com/en/database/oracle/apex/23.2/aeapi/PREPARE_URL-Function.html
----
==== Quellen ====
Doku Apex 23
* https://docs.oracle.com/en/database/oracle/apex/23.1/htmdb/understanding-url-syntax.html
Blogs
* https://apex.oracle.com/pls/apex/germancommunities/apexcommunity/tipp/5121/index.html