Oracle WF PDF
Oracle WF PDF
Oracle WF PDF
27-Jan-2008
Telecom3/ Motorola
Oracle Workflow delivers a complete workflow management system that supports business
process based integration. Its technology enables modeling, automation, and continuous
improvement of business processes, routing information of any type according to user-
defined business rules.
Oracle Workflow automates and streamlines business processes both within and beyond
the enterprise, supporting traditional applications based workflow as well as e-business
integration workflow.
– Provides each person with all the information they need to take action.
– Define and continuously improve the business processes using the drag and drop process
designer.
– Lets people receive notifications of items awaiting their attention via e-mail and act based on their
e-mail responses.
These type of workflows are launched from a business application through APIs hard-coded
within the application.
These processes model the business rules in the individual local application and are made up of
activities executed by the workflow engine only in that application's system.
Standalone
– With the Oracle Database (both Standard Edition and Enterprise Edition)
– Self-service applications.
– Professional applications
– Used in Enterprise resource planning (ERP), Customer Relationship Management (CRM), Human
Resource Management Systems (HRMS).
Oracle workflow Builder is a graphical tool that lets you create, view, or modify a business process
with simple drag and drop operations.
Using the workflow Builder, you can create and modify all workflow objects, including activities,
item types, and messages.
The workflow definition files can either directly be saved to the database or can be saved as a flat
file.
• Navigator tree
• Process Diagram
It is a utility program that moves workflow definitions between database and corresponding flat file
representations.
In addition to being a standalone server program, the workflow definitions Loader is also
integrated into Oracle workflow Builder, allowing you to open and save workflow definitions in both
a database and file.
The workflow engine is a set of tables and PL/SQL stored procedures that manages the execution
of a workflow process and tracks work in process.
The Business Event System is an application service that uses the Oracle Advanced Queuing
(AQ) infrastructure to communicate business events between systems.
Workflow with the business event system can act as a system integration messaging hub that
relays business event messages among systems
The Business Event System consists of the Event Manager, which lets you register subscriptions
to significant events, and event activities, which let you model business events within workflow
processes
When a local event occurs, the subscribing code is executed in the same transaction as the code
that raised the event.
Subscription processing can include executing custom code on the event information, sending
event information to a workflow process, and sending event information to other queues or
systems.
Enables users to receive and respond to notifications using an e-mail application or web browser
of choice.
sends e-mail notifications and processes e-mail responses using the JavaMail API
allows any users with access to the internet to be included in a workflow process
The directory service for Oracle Workflow is implemented as a set of views that are mapped across the
user tables of the underlying application.
WF_USERS: Contains information on user names, display names, notification preferences and e-
mail addresses
If the workflow is embedded in Oracle Applications, then the workflow directory service views are
automatically based on a unified oracle applications environment.
This environment includes ancillary services such as the Oracle Application Server (OracleAS) as
the web server, and notification mailers
Notification Mailer
A notification mailer performs e-mail send and response processing for the Oracle Workflow
Notification System, using the JavaMail API.
The end-user client is the workstation or PC that an end user uses to perform daily tasks.
This client includes browser support for reviewing and responding to notifications in the Worklist,
the Workflow Monitor, and other Workflow web pages, as well as mail applications for reviewing
and responding to notifications by e-mail.
It also includes the Workflow Manager component accessed through Oracle Applications
Manager (OAM) for the version of Oracle Workflow embedded in Oracle E-Business Suite.
Any component that is created for a process, such as a function activity or a message, with a
particular item type must be associated with an Item Type.
It acts as a global variable that can be referenced or updated by any activity within a process.
You must define an item type before you can define the item attributes associated with it.
The name of an object within the workflow, which is visible to the user.
Internal Name
The internal name of an object is the name that will always be referred to within the workflow.
Oracle workflow allows the developer to determine how long the status audit trail of the workflow
should be maintained (i,e) how long each workflow should remain in the database after they
complete before they become eligible for purging. Types,
Permanent
This can be removed by using the WF_PURGE.totalperm() API and specifying the item type
Temporary
Synchronous
No database transaction.
An item type can have more than one runnable process activity associated with it.
PL/SQL selector functions are used to determine which process activity to run in a particular
situation.
A selector function can be extended to be a general callback function so that item type context
information can be reset as needed if the SQL session is interrupted.
– Text
– Number
– Date
– Lookup
– Role
– Attribute
– URL
– Form
– Document
– Event
These lists can be referenced by activities and by item type, message, or activity attributes. For
example:
An activity can reference a lookup type for its possible result values
A message attribute can reference a lookup type to provide a list of possible responses to the
performer of a notification.
The lookup codes for a lookup type are defined in the navigator tree beneath the lookup type.
The attribute value is an Oracle Applications internal form function name and its optional form
function parameters.
This attribute type is not relevant for the standalone version of Oracle Workflow.
Attributes of type document can represent data from the database in various formats, generated
from a PL/SQL procedure.
These attributes can appear in a notification message as an inline link (PL/SQL and PL/SQL CLOB
documents only) or as an attachment icon (PL/SQL, PL/SQL CLOB, and PL/SQL BLOB
documents).
When users view their notifications, they can click a link or an attachment icon to open the
referenced document.
An attribute of type URL references a Universal Resource Locator (URL) to a network location
such as a web page.
When you create an item attribute of type URL, specify a frame target for the attribute.
If you reference this item attribute as the default value of a message attribute in a message, the
URL frame opens according to what you specified as the frame target.
These attributes appear in a notification message body as an inline hypertext link or below the
message as an attachment icon.
Results-based branching
Parallel flows
Rendezvous
Voting
Timeouts
Escalation
Automatic forwarding
All PL/SQL stored procedures that are called by function or notification activities in an Oracle
Workflow process should follow this standard API format so that the Workflow Engine can properly
execute the activity.
The Workflow Engine traps errors produced by function activities by setting a savepoint before
each function activity. If an activity produces an unhandled exception, the engine performs a
rollback to the savepoint, and sets the activity to the ERROR status. For this reason, you should
never commit within the PL/SQL procedure of a function activity.
The internal name for the item type. Item types are defined in the Oracle Workflow Builder.
Itemkey
A string that represents a primary key generated by the workflow-enabled application for the
item type. The string uniquely identifies the item within an item type.
Actid
The execution mode of the activity. If the activity is a function activity, the mode can be ’RUN’,
’CANCEL’, ’SKIP’, or ’RETRY’.
If the activity is a notification activity, with a post-notification function, then the mode can be
’RESPOND’, ’FORWARD’, ’TRANSFER’, ’QUESTION’, ’ANSWER’, ’VALIDATE’, ’TIMEOUT’, or
’RUN’
resultout
If a result type is specified in the Activities properties page for the activity in the Oracle Workflow
Builder, this parameter represents the expected result that is returned when the procedure
completes.
COMPLETE:<result_code>
WAITING
DEFERRED:<date>
NOTIFIED:<notification_id>:<assigned_user>
ERROR:<error_code>
<local declarations>
Begin
WF_ENGINE.SetItemAttrText,
WF_ENGINE.SetItemAttrNumber
WF_ENGINE.GetItemAttrText,
WF_ENGINE.GetItemAttrNumber,
WF_ENGINE.AddItemAttr.
WF_ENGINE.AddItemAttrTextArray
WF_ENGINE.GetActivityAttrText,
WF_ENGINE.GetActivityAttrNumber,
WF_ENGINE.CompleteActivity notifies the engine that the specified activity has been completed
for the item, identifying the activity by the activity node label name.
WF_ENGINE.ItemStatus returns the status and results for the root process of the specified item
instance.
Package Spec
Package Body
Training workflow
Initiate workflow
Oracle Workflow uses a feature called access protection to control modification of workflow
definitions.
As a workflow developer, you can use access protection to allow or discourage “customers” of
your workflows from modifying your “seed data” workflow definitions.
As a customer of predefined workflows provided by Oracle, you can use access protection to
preserve valid customizations you have made to a predefined workflow during a workflow
definition upgrade.
All workflow objects except lookup codes, function attributes, and message attributes contain an
Access tab in their property pages. Lookup codes, function attributes, and message attributes
inherit their access settings from their parent lookup type, function, or message, respectively.
o Future customizations to the object are preserved during a workflow definition upgrade.
Each user of Oracle Workflow Builder operates the system at a certain access level.
Æ 1000: Public
If you protect an object against customization, you effectively assign the object a protection level
equal to your current access level.
Only users operating at an access level equal to or lower than the protection level of the object
can modify the object.
Users operating at an access level greater than the protection level of the object will see a small
lock on the icon for the object in the navigator tree, indicating that the object is read-only.
The customization level of an object is set to the access level of the initial user who customizes
the object.
A customized object is locked from further modification except from users with access levels
equal to the customization level of the object.
The customization level is relevant only with respect to unprotected workflow objects.
If an object is protected at a certain level, it shouldn’t be modified at all except by an access level
equal to or less than the protected level of the object.
You can change your access level in the “About Oracle Workflow Builder” dialog box available
from the Help menu. Enter an integer value in the Access Level field and click OK.
The indicator bar provides a visual range of access levels that can edit the object.
The Levels region shows the customization, access, and protection levels of the object based on the settings in
the Options region.
Use the Options region to set the protection and customization levels of an object.
Æ Preserve Customizations
The indicator bar provides a visual range of access levels that can edit the object-
Æ Cross-hatch green: Usually cannot modify the object because it has been customized, but can now do
so because Oracle Workflow Builder is set to Upload mode so that customized objects can be modified
Use the Options region to set the protection and customization levels of an object.
Preserve Customizations: Prevents customized objects from being overwritten during a workflow
definition upgrade
Lock at this Access Level: Protects the object at the current access level and does
Oracle E-Business Suite customers should select both the Preserve Customizations and Lock at
this Access Level check boxes to protect your workflow objects during upgrades.
Check your access level before you make your modifications to the predefined workflow process.
Set the appropriate options in the Access property page for any object that you modify.
Æ Oracle E-Business Suite: Select both the Preserve Customizations and Lock at this
Access Level options.
Æ During an Oracle Workflow seed data upgrade, the Workflow Definitions Loader is
always run in Upgrade mode at an access level less than 100. As a result, the upgrade
will not overwrite any object with a customization level of 100 or higher
Navigation
Navigation
The Oracle Workflow Worklist Web pages let you view and respond to your notifications.
An e-mail notification contains all the details of the notification, including instructions on how to
respond to the notification.
A message is what a notification activity sends to a role in a workflow process. A message can
prompt a user for a reply or an action to take that determines what the next activity in the process
should be. The recipient of a workflow message is called the performer.
The Performer performs action on the workflow notification (i.e) Approve/ Reject etc.
When the workflow engine reaches a notification activity, it issues a Send() API call to the
Notification System to send the message to an assigned performer
The performer is a workflow user with a defined Role. The access for a particular workflow activity
is restricted using the roles.
One example of how roles are referenced in a workflow process is when you include a notification
activity in a process as a node. You must assign that node to a performer. The performer can be a
designated role or an item type attribute that dynamically returns a role.
To assign a performer to a role, you must initially load the roles from your Oracle Workflow
database into your Oracle Workflow Builder session.
Oracle Workflow allows you to create new ad hoc users and roles within a workflow process, to
add to your directory service. To do so, you define a function activity that makes a server-side call
to the appropriate WF_DIRECTORY API and include that function activity in your process
diagram.
The following APIs can be called by an application program or a workflow function in the runtime phase
to retrieve information about existing users and roles, as well as create and manage new ad hoc users
and roles in the directory service. These APIs are defined in a PL/SQL package called
WF_DIRECTORY .
CreateAdHocUser GetRoleUsers
CreateAdHocRole GetUserRoles
AddUsersToAdHocRole IsPerformer
RemoveUsersFromAdHocRole UserActive
SetAdHocUserStatus GetUserName
SetAdHocRoleStatus GetRoleName
SetAdHocUserAttr GetRoleDisplayName
SetAdHocRoleAttr
Thank You