Workflowbeginner

Oracle Workflow Builder Fundamentals

Understand the core building blocks of Oracle Workflow used throughout EBS for process automation and notifications

Oracle Workflow drives the processes behind EBS: order line flows, requisition and purchase order approvals, invoice approval.

Oracle Workflow is like a flowchart brought to life: instead of a static diagram on a whiteboard showing 'if approved, then do X, else do Y,' the Workflow Engine actually walks each specific case (item key) through that flowchart step by step, pausing at decision points that need a human response (notifications) and executing automated steps (function activities) along the way.

Key Concepts

1
A process is activities joined by transitions.
    Start -> Validate Requisition -> Get Approver -> Notify Approver
                                                       |
                                          Approved ----+---- Rejected
                                             |                  |
                                        Create PO           Notify Requester
2
Two kinds of activity.
    Function activity      runs a PL/SQL procedure
    Notification activity  sends a message and waits for a response
3
A function activity's procedure follows a fixed signature:
4
    PROCEDURE validate_req(itemtype  IN VARCHAR2,
                           itemkey   IN VARCHAR2,
                           actid     IN NUMBER,
                           funcmode  IN VARCHAR2,
                           resultout OUT VARCHAR2) IS
    BEGIN
      IF funcmode = 'RUN' THEN
        ...
        resultout := 'COMPLETE:APPROVED';
      END IF;
    END;
5
resultout decides which transition is taken. That string is how the process branches.
resultout
6
Item type and item key identify an instance.
    item type  a namespace: 'OEOL' for order lines, 'REQAPPRV'
               for requisitions
    item key   which one: usually the transaction's id
7
Together they name a single running process, which is what you search for when tracing one.
8
Item attributes carry the data. A process holds its own attributes — the requisition amount, the approver, the requester — set by function activities and referenced in notification text.
9
The property that shapes everything: a workflow can wait. A notification activity pauses the process indefinitely while a person decides.
10
So a workflow instance may live for weeks, surviving restarts, and its state is in the database rather than in memory. That is why workflow rather than a procedure, and it is why a stuck process is a normal operational concern rather than a crash.
11
Custom workflows use a custom item type, and never a modification of a seeded one. A seeded process is replaced at patching; your own is not.
12
Where the definition lives. Built in Workflow Builder, a Windows tool, saved as a .wft file and loaded into the database with WFLOAD. The .wft belongs in source control — it is the only readable form of the definition.
.wftWFLOAD
13
What the interviewer is probing.1. "What are the building blocks of a workflow?" Probing: the vocabulary. Stalls: "Steps." Moves up: item types, attributes, processes, activities (function, notification, process), transitions and lookup types.
14
2. "What is the difference between a function and a notification activity?" Probing: the distinction. Stalls: "Nothing." Moves up: a function runs PL/SQL; a notification sends a message and waits for a response, which is where the process pauses.
15
3. "How do you change a workflow safely?" Probing: the discipline. Stalls: "Edit and save." Moves up: version the item type and load with preserve or upgrade mode appropriately — in-flight instances continue on the old definition.
16
4. "Why avoid customising a seeded workflow?" Probing: the upgrade angle. Stalls: "No reason." Moves up: patches reload the seeded definition, so changes are lost unless they are made in a supported, documented way and reapplied.