In Oracle APEX applications, enhancing user experience through personally is a key aspect of modern UI design. One effective way to achieve this is by dynamically setting the application logo based on the currently logged-in user. This approach allows us to display different logos for example, company-specific branding, department icons, or user-type indicators tailored to each user.
Step1: Store the logo image in the user details table.
Step2: Create a Module from Restful service
Step3: Add a Template
Step4: Add a Handler
Step5: Paste the following PLSQL code
DECLARE
v_blob BLOB;
v_mime_type VARCHAR2(50);
v_length NUMBER;
v_user_id NUMBER;
BEGIN
v_user_id := TO_NUMBER(:USER_ID);
SELECT USER_LOGO, MIME_TYPE
INTO v_blob, v_mime_type
FROM USER_TABLE
WHERE USER_ID = v_user_id;
v_length := DBMS_LOB.GETLENGTH(v_blob);
IF v_length > 0 THEN
OWA_UTIL.MIME_HEADER(NVL(v_mime_type, 'image/png'), FALSE);
HTP.PRN('');
WPG_DOCLOAD.DOWNLOAD_FILE(v_blob);
ELSE
OWA_UTIL.STATUS_LINE(404, 'Not Found');
END IF;
END;
Step6: Now copy the Full URL from Resource Handler.
Step7: Create One Application Page Item with the name of P_USER_ID
Step8: Create One Application Process Process_Point - After Authentication (paste the following code)
BEGIN
SELECT USER_ID
INTO :P_USER_ID
FROM USER_TABLE
WHERE UPPER(USER_NAME) = UPPER(:APP_USER);
EXCEPTION
WHEN NO_DATA_FOUND THEN
:P_USER_ID := NULL;
WHEN TOO_MANY_ROWS THEN
:P_USER_ID := NULL;
WHEN OTHERS THEN
:P_USER_ID := NULL;
END;
Step9: Now go-to UI Interface under shared component and select logo
Logo | Image |
Image URL | Paste Full URL and add application item |
Sample_URL | https://yourdomain/ords/dms/get/user_logo/&P_USER_ID. |
Step10: Save and run the application.
User1:-
User2:-
Comments
Post a Comment