The Process Flow editor enables design
of process flows, code generation, deployment and execution. The code generated
from a process flow definition is industry standard XML Process Definition Language
(XPDL). Oracle has been one of the main drivers behind the development of this
standard.
This lesson will take approximately 60 minutes to complete.
Viewing Screenshots
Move your mouse over this icon to show
all screenshots. You can also move your mouse over each individual icon to see
only the screenshot associated with it.
Overview
In this lesson you will learn how to use the Process
Editor. You will design process flow definitions. You will also examine some
predefined process flows.
A process flow describes dependencies between Warehouse
Builder mappings and external activities such as email, FTP, and operating system
commands.
1.
To see Warehouse Builder's
Process Flow Editor, expand the OWB10g_DEMO project,
expand the Process Flows node, expand the WH_PROC
process flow module and expand the process flow package LD_SALES.
2.
Double click process LOAD_CHANNEL.
The Process Editor opens. LOAD_CHANNEL is a very straightforward
process that includes the MAP_CHANNEL mapping, executes it and sends email
if the mapping either fails or succeeds with warnings.
3.
The Process Editor provides a toolbox with a number
of so-called activities. The activities that the process flow editor supports
are:
END
to identify Error end or Error warning activities.
FILE_EXISTS
to identify whether a specific file exists.
EMAIL
to send an email using SMTP protocol.
FTP
to transfer a file via FTP.
EXTERNAL PROCESS
to implement an external process that runs on the
operating system.
FORK
to fork a number of flows based on a single flow.
OR
which implements a logical OR based on multiple incoming flows.
AND
which implements a logical AND based on multiple incoming flows.
TRANSFORM
to include any PL/SQL code, manually written or pre-defined with
Warehouse Builder
SUB_PROCESS
to include an existing process within another process.
MAPPING
to include a mapping on a process flow.
4.
To validate a process flow from the menu select
Process Flow > Validate.
5.
To generate a process flow from the menu select
Process Flow > Generate.
In this topic you will learn how to view complex process
flows by using the features provided in the Process Editor's toolbar.
1.
Double click process flow MASTER_SALES_CRED_LIM.
The Process Editor opens. Maximize the window. In the
following steps you will learn how to view the complex process flow.
2.
Click Auto Layout on the
toolbar to rearrange all the objects on the canvas based on a default
layout for the process flow.
3.
Click Fit in window on the
toolbar. This option resizes all objects to fit on the canvas
4.
In the Process Editor right
click LOAD_CHANNEL sub process. Check Expand
Node.
The process flow editor shows the LOAD_CHANNEL process expands inside
the MASTER_SALES_CRED_LIM process.
5.
Click Zoom in on the toolbar.
This increases the magnification of the objects on the canvas.
6.
If you want to get a good overview in a complex
process flow click on the Bird's Eye View on the toolbar.
The Graph Overview window opens.
In the Graph overview window you see a blue frame that shows you where
you are on the process flow. Since the bird's eye viewer is panned, you
can move the the visible area over the process flow and keep a clear overview.
Move the cursor inside the blue frame in the Graph Overview window. The
cursor takes the shape of a hand. If you keep the left mouse button clicked
and move the mouse, you can move to any visible area over the process
flow.
7.
You can also use the Editor's Panning
feature.
8.
To collapse the expanded sub process, right
mouse click on the expanded process and de-select Expand Node.
Also, close the Bird's Eye view (Graph overview window) and close the
Process Editor.
In this topic you will learn to create a new process flow
package and process flow.
1.
To create a Process
Flow Package, right click process flow module WH_PROC,
and select Create Process Flow Package.
2.
The Create Process Flow Package
dialog opens. Name the process flow package LD_INV (there
is a limit of 8 characters for this name due to a Workflow restriction)
and click OK.
3.
Right mouse click LD_INV
and select Create Process.
In the Create Process Flow window type LOAD_INVENTORIES
for Name and click OK. The Process Editor
opens.
In this topic you will learn how to add activities to the
Process Flow. You will also learn how to create Transition.
1.
Double click process flow LOAD_INVENTORIES.
In the Process Editor: LOAD INVENTORIES drag and drop
the Mappingactivity icon from the toolbox.
Expand the WH target module hold down the control [CTRL] key and select
the mappings, MAP_INVENTORIES, MAP_PRODUCT,
MAP_T_TIME and MAP_WAREHOUSE and select
OK.
2.
In the Process Editor position
the icons so that MAP_T_TIME, MAP_PRODUCT, and MAP_WAREHOUSE can finish
before MAP_INVENTORIES starts running.
3.
From the toolbox drag and drop a FORK
activity, an AND activity and an EMAIL
activity.
4.
For the error END, drag in the END
activity from the toolbox. The End activity creation
dialog appears. Select Error end activity and click OK.
Go into the Create Transition mode by clicking
the Create Transition button on the toolbar. You will
now connect all activities.
Note: In the Process Editor window, at the bottom
right corner you see the transition icon
indicating you are in the transition mode.
2.
Connect Start to Fork by drawing a transition.
Drag a line from Start to Fork.
Note: To delete a transition, use the Transition View
window at the bottom of the Process Editor window. Select the row containing
the transition you wish to delete, and click Remove.
3.
Draw Transition from Fork
to the three mapping activities MAP_PRODUCT, MAP_T_TIME,
and MAP_WAREHOUSE.
4.
Draw a Transition from each of the mapping
activities (MAP_PRODUCTS, MAP_T_TIME,
and MAP_WAREHOUSE) to the AND_ACTIVITY.
5.
Draw a Transition from the AND_ACTIVITY
to MAP_INVENTORIES activity.
Draw a Transition from MAP_INVENTORIES to EMAIL.
Draw a transition from MAP_INVENTORIES to END_SUCCESS.
Lastly draw another from EMAIL to END_ERROR
Note: Click Auto Layout and Fit in Window icons on the toolbar to get
a good overview.
6.
You will now set conditions on some of the
transitions. First, switch from Transition mode to Select Mode by clicking
on the Select Mode
icon on the toolbar.
7.
Select activity MAP_INVENTORIES.
You will use the lower right panel to set the transition to END_SUCCESS
and the transition EMAIL to ERROR.
In the lower right in Transition View select the first row or where the
TO column displays END_SUCCESS. Click the condition field. From the drop-down
list select SUCCESS.
Select the next row or where the TO column displays EMAIL. Click the
condition field. From the drop-down list select ERROR.
8.
In the Process Editor select
the EMAIL activity. In the lower left panel (Activity
View) expand the EMAIL node and enter details, at least
for FROM_ADDRESS and TO_ADDRESS. Unless
you run an SMTP server locally you have to enter another valid value and
specify a subject as well as message body. In the Subject type ERROR!!!,
and Message body type An error occurred.
9.
Validate the process flow from the menu select
Process Flow > Validate. If the validation is not
successful, make the necessary changes and make sure the process flow
becomes valid. Click Close to close the Validation
Results window. Close the Process Editor.
In order to deploy the process flow, use the Deployment Manager.
1.
Open the Deployment Manager.
From the menu select Project > Deployment Manager.
The Select Runtime Repository Connection dialog appears,
you select the OBE_RUNTIME_CONNECTION from the drop-down
list and click OK.
The OWB Deployment Manager window appears. Navigate to and expand WH_PROC_LOC,
expand WH_PROC and expand LD_INV.
2.
If you have not done yet, register WH_PROC_LOC
by using the right mouse click on WH_PROC_LOC and select Register.
WH_PROC_LOC must point to a Workflow Server in your target Oracle database.
For Schema Name, type OWF_MGR, or <schema name for
your Oracle Workflow location>. For Password type OWF_MGR,
or <the password that you provided during creation of the schema>.
For Service Name type obeowb or <your database service
name>. Select option Hostname and type LOCALHOST
for Hostname or <name of your computer>.
Note: The following mappingsMAP_INVENTORIES, MAP_PRODUCT,
MAP_TIME, MAP_WAREHOUSE must have Deploy Status
as Success. If not, deploy the mappings and execute before deploying the
LOAD_INVENTORIES process flow.
3.
Select LD_INV and click the
Default Action button.
Note: the Deploy Action changes from None to Create.
.
4.
Now click Generate/Deploy
to generate the code. Click Commit in the Confirm
Commit dialog if it appears.
.
5.
In the Pre Deployment Generation
Results window click Deploy. The Deployment
Results window should show successful deployment. Click OK to close the
Deployment results window.
.
6.
In the Deployment Manager select the LOAD_INVENTORIES
process flow and clik the Execute button from the toolbar.
7.
Leave ITEM_KEY empty (Warehouse
Builder/Workflow will generate the key for you).
Click Execute.
8.
Once the execution has finished the Deployment
Manager will show the results of running the process flow.
Close the Execution Results window and close the Deployment Manager.
Summary
The Process Flow Editor as part of Warehouse Builder is a
great advantage. Business Intelligence system architects have expertise about
the data warehouse dependencies. They can use the tool with which they are familiar,
and deploy seamlessly into Oracle Workflow. Execution is nicely managed by the
runtime platform and all audit results end up in the runtime repository.
Move your mouse over this icon to hide all screenshots