Skip to main content

Posts

AI-Powered Resume Builder Architecture in Oracle APEX

Introduction Building an enterprise AI application requires more than just embedding a chat widget. It demands structured data ingestion, strict relational persistence, dynamic server-side document compilation, and high-resolution export. This guide provides a comprehensive, step-by-step implementation blueprint. Any Oracle APEX developer or architect can follow these component specifications and design patterns to replicate an AI-Powered Multi-Template Resume Builder & Vector Export Engine from scratch. Core Architecture: User Chat → APEX AI Assistant → Declarative Tool Contract → 11-Table Relational Schema → Server-Side HTML CLOB Generator → Vector PDF Engine. System Architecture & Component Flow 1. Chat Intake → 2. APEX AI Assistant → 3. Tool Calling → 4. 11 Relational Tables → 5. Dynamic Content (CLOB) →...
Recent posts

How to Upload Multi-Sheet Excel Files into Oracle APEX

Oracle APEX · Step-by-Step Guide Importing one Excel sheet is easy with the built-in wizard. Importing a workbook with related parent and child sheets — and keeping the keys straight — takes a bit more care. Here's the full pattern. Excel is still the undisputed king of business data. As Oracle APEX developers, we're frequently asked to build import utilities. While importing a single-sheet Excel file in APEX is straightforward using the built-in wizard or APEX_DATA_PARSER , things get trickier when a single workbook contains multiple worksheets with relational data — like a parent header and child lines. In this post, we'll parse a multi-sheet Excel file, assign separate database sequences for primary keys, maintain the parent-child relationship, and stage everything into APEX Collections for reporting. The Scenario A user uploads a single workbook containing two worksheets: Parent_Department — a single row defining the main departm...

Dynamic Report - Part 2

Dynamic Report Introduction In many Oracle APEX applications, different reports require different SQL queries. Instead of hard-coding these queries into the application, users can store multiple SQL queries in a database table. These queries may contain bind variables (for example, :P_DEPTNO or :P_EMPNO ). When a user selects a report, the application automatically: Identifies the bind variables used in the selected SQL query. Dynamically generates input fields for those parameters. Prompts the user to enter the required values. Executes the query using the provided inputs. Refreshes the report with the filtered results. This approach allows a single report region to execute multiple dynamic queries without requiring any code changes. Step-by-Step Implementation Step 1 Create the QUERY_MASTER Table This table acts as our repository for SQL queries. We will...

Oracle APEX - Dynamic Reporting

Oracle APEX • PL/SQL • Dynamic Reporting Have you ever needed to build a dashboard where users select a report from a dropdown list, and the page dynamically renders the query results? A common design pattern is to centralize your report queries in a database table: REPORTS_TABLE ( QUERY_ID , REPORT_NAME , QUERIES , CREATE_BY , CREATE_DATE ) However, if you've tried implementing this with an Interactive Report or Interactive Grid , you likely ran into database metadata conflicts or compilation errors when switching between reports. In this post, we will explore why standard reports struggle with dynamic structures and provide a step-by-step guide to building a fully dynamic report viewer using Classic Reports and Generic Columns in Oracle APEX. The Challenge: Fixed Metadata vs. Dynamic Columns Oracle APEX Intera...

Google Sign-In (SSO) with Oracle APEX: Full Step-by-Step Integration

Google Sign-In (SSO) with Oracle APEX: Full Step-by-Step Integration This guide walks through every single step of wiring up Google Sign-In for an Oracle APEX app on apex.oracle.com — starting from creating the Google Cloud project, all the way through configuring the APEX Authentication Scheme. No steps are combined or skipped. 🏗️ Architecture Overview User Browser Clicks "Sign in with Google" → APEX App Redirects to Google OAuth2 → Google Consent Screen User authenticates → APEX Callback URL apex_authentication.callback → APEX Session Created User logged into app Part 1 — Google Cloud Console PROJECT SETUP 1 Sign in to Google Cloud Console Go to console.cloud.google.com and sign in with the Google account that will own this OAuth integration. 2 Create a new project Click the project dropdown (top bar) → New Project → give it a name (e.g. apex-google-sso ) → Create. Wait for the project to finish provisionin...

LinkedIn from Oracle APEX

Posting to LinkedIn from Oracle APEX: A Complete Beginner's Guide Free oracleapex.com tier · personal LinkedIn profile posting · step-by-step with every real error included If you've ever wanted a button in your Oracle APEX app that posts directly to your personal LinkedIn feed — no Zapier, no third-party middleman, just your own APEX app talking straight to LinkedIn's API — this guide walks through the whole thing, start to finish, including every mistake made along the way so you don't have to repeat them. By the end, you'll have: A LinkedIn Developer App configured for personal posting Two APEX pages: one to connect/authorize, one that handles LinkedIn's callback and does the posting A working "Post to LinkedIn" button that publishes text posts to your own profile This is written for a free oracleapex.com workspace, but the same steps work on any hosted or on-premises APEX instance — just adjust the domain. The Big Picture ...