This post covers an Overview of Workflow Notification Mailer in Oracle E-Business Suite (EBS) R12, one of the tasks that Oracle Apps DBA‘s do regularly (apart from Patching, Cloning & Troubleshooting).
If you are new to Oracle Apps or already working as Apps DBA but on version 11i or R12.1 then I highly recommend you first to go through Architecture, Installation, Start/Stop, File System, in Oracle AppsDBA R 12.2 Training for AppsDBAs
Workflow Outbound Processing
Here are steps/events for Oracle Workflow Notification Outbound Processing(eMail from Oracle Applications Workflow to Users)
1. When workflow Engine determines that a notification message must be sent, it raises an event in BES (Business Event System) oracle.apps.wf.notifications.send Event is raised with Notification ID (NID) as event key
3. Event is placed on WF_DEFERRED agent
4. Event is de-queued from WF_DEFERRED and subscription is processed
5. Subscription places event message to WF_NOTIFICATION_OUT agent.
6. Notification Mailer de-queues message from WF_NOTIFICATION_OUT agent and
6.1 convert XML representation of notification into MIME encoded message (Multi-purpose Internet Mail Extensions) and
6.2 Send message by SMTP (Simple Mail Transfer Protocol) to intended user (IfTest Address/Override Address is set then email is sent to Test Address
Workflow Inbound Processing
1. Approver sends email response which is directed to the value defined in Reply-to address.
a) This address has been set up by the customer’s mail administrator to route incoming mail to the IMAP Inbox folder.
2. The Workflow Inbound Agent Listener picks up the message. Only messages which are in ‘unread’ state are evaluated; the rest of the messages in the inbox are ignored.
3. The message is scanned to see if it matches entries in the TAG file. Mail tags are defined in the OAM mailer configuration pages and these list strings of text and actions to take if those strings are encountered. An example of this is ‘Out of Office’ replies. If the string of the message matches a mail tag and the action is ‘Ignore’ then nothing else will happen.
4. The message is then scanned for the presence of a Notification Id (NID). This NID is matched against valid NID for the mailer node.
5. If valid NID is not detected, (and there is no matching TAG file entry) then the message is placed into the DISCARD folder.
6. If a valid NID is detected the listener raises a subscription to the WF_NOTIFICATION_IN queue and places the mail message in the Processed folder.
7. From this point on the message is handled by the product workflow (like PO APPROVAL). an event created by that group will monitor the WF_NOTIFICATION_IN queue and will trigger the rest of the approval workflow.
Log Files Location for Notification Mailer
- If you hit any error in Workflow Notification Mailer like mails not going from EBS R12 or SSL Handlshake Error (If SMTP Server is listening on SSL) then check logs at $APPLCSF/ $APPLLOG/ FNDCP*.txt