Schlagwort-Archive: APEX

Ist Benutzer angemeldet als Entwickler?

Manchmal muss man wissen, ob der angemeldete Applikations-Benutzer  auch als Entwickler im Workspace angemeldet ist. Das kann man über die undokumentierte PL/SQL-Funktion apex_application.g_edit_cookie_session_id herausfinden.

Die Funktion gibt uns die ID der Workspace-Session zurück. (Im Gegensatz zur Funktion apex_application.g_cookie_session_id bzw. zum Substitution String :APP_SESSION, die uns die Session ID der Anwendung zurück geben.)

Dieser Tipp wurde vor längerer Zeit schon von Patrick Wolf gepostet.

Is my application running in Developer Mode?

Weil ich nicht mit Google-Skills, sondern erst durch Zufall wieder auf diesen Beitrag gestoßen bin, erwähne ich es hier noch einmal.

Mit der Workspace-Session-ID kann man übrigens auch weitere interessante Sachen anstellen. Unter anderem ist damit ein Deep Link zum Workspace möglich und man kann z.B. eine bestimmte Stelle im Page Designer verklinken. Derartige Links sind ohne gültige Session nicht möglich, denn man landet nach dem Login immer auf der Startseite des Workspaces.

Übrigens: Wenn man wissen möchte, ob der angemeldete Benutzer prinzipiell Workspace-Rechte besitzt, auch wenn die Seite nicht im Developer Mode läuft, dann hilft sicher mein Tipp “Feststellen ob Benutzer APEX-Developer ist”.

IE11: Textfelder werden nach Schließen von Modal Dialogen inaktiv

Für alle diejenigen, die APEX 5.0 in Verbindung mit Modal Dialog (Universal Theme) und Internet Explorer benutzen, ist dieser Hinweis wichtig.

Nach dem Schließen von Modal Dialogen kann es passieren, dass Textfelder und Textareas inaktiv und damit nicht mehr benutzbar sind. Beispiel: Wenn man vom Interactive Report (IR) eine Modal Page öffnet, dort in ein Textfeld klickt und danach das Fenster mit Cancel oder der Schaltfläche Schließen (rechts oben) schließt, ist das kleine Suchfeld des IR inaktiv. Erst nach einem Page Reload ist es dann wieder normal nutzbar.

John Snyders hat glücklicherweise eine Lösung gefunden und im Oracle Form veröffentlicht.
Der entscheidende Hinweis: In der aufrufenden Seite folgenden Javascript Code unter “Execute when Page Loads” einfügen.

$("body").on("dialogclose", ".ui-dialog--apex", function() {
    $(this).find("iframe").attr("src", "");
});

IE11: Textfelder werden nach Schließen von Modal Dialogen inaktiv weiterlesen

Universal Theme: Den Abstand zwischen Formular-Elementen verringern


Das Universal Theme geht ja bekanntermaßen recht großzügig mit dem vorhandenen Platz auf dem Bildschirm um. Zwischen Regionen und Formularelementen sind standardmäßig große Abstände definiert. Mir gefällt das gut.

Wer allerdings möglichst viele Eingabefelder auf seinem Bildschirm unterbringen möchte, dem hilft vielleicht dieser kleine Tipp. Universal Theme: Den Abstand zwischen Formular-Elementen verringern weiterlesen

Wie stelle ich fest, ob der Benutzer ein APEX-Entwickler ist?

teaser_is_user_apex_developer

In einem meiner letzten Projekte musste ich wissen, ob der angemeldete Benutzer auch Entwicklerrechte für den Workspace hat oder ob es sich “nur” um einen normalen User handelt.

Im Unterschied zu einem anderen Tipp möchte ich nicht feststellen, ob er auch bereits am Workspace eingeloggt ist. Ich möchte wissen, ob er für den Workspace freigeschaltet ist und sich anmelden könnte.

Der Aufruf APEX_UTIL.GET_USER_ROLES(:APP_USER) kann uns dabei folgendermaßen weiterhelfen. Wie stelle ich fest, ob der Benutzer ein APEX-Entwickler ist? weiterlesen

APEX User Roles: Eine Übersicht

Hier eine Übersicht darüber, welche Werte die Funktion APEX_UTIL.GET_USER_ROLES(p_user_name) zurückgibt. Diese Benutzerrechte kann man im APEX-Workspace einstellen unter Workspace-Administration >> Manager Users and Groups >> Users.


Workspace-Administrator
ADMIN:CREATE:EDIT:HELP:MONITOR:SQL:DATA_LOADER

apex_role_admin
Option “Workspace Administrator” ausgewählt

APEX User Roles: Eine Übersicht weiterlesen

APEX Inline Dialog öffnen und schließen

Dieser Tipp funktioniert nur im Universal Theme mit APEX 5.0:

Inline Dialoge sind Regionen, die als modale Dialoge auf einer Seite dargestellt werden können. Diese Regionen sehen damit wie eine Seite vom Typ „Modal Dialog”aus. Modal bedeutet, das alle Elemente außerhalb dieser Region für den Benutzer nicht erreichbar sind. Alles außerhalb der Region erscheint abgedunkelt.

Beim Seitenaufruf sind Inline Dialoge nicht sichtbar. Per JavaScript-Aufruf können sie ein- und ausgeblendet werden. APEX liefert dafür die Funktionen openModal() und closeModal() mit.

Vorgehen zur Erstellung eines Inline Dialogs: APEX Inline Dialog öffnen und schließen weiterlesen