2. Advantages
2
Used to automate the flow of information trough
out your enterprise.
Used to automate time-consuming business
processes and deliver the right information to the
right people at the right time.
Used to merge the activities of multiple users into
flexible business processes to increase efficiency,
cut costs, and keep up with rapidly changing
customer and competitive challenges.
by surya 10/11/12
3. Advantages
3
Control and Streamline the flow of Information
Can be easily modified to meet requirement
Can work effectively when,
· No User involvement is required
. Involve Non-People soft User
· Involve several users working to gather
by surya 10/11/12
4. Prerequisites
4
SMTP server should be configured for the
Application server/Process scheduler used for the
development
E-mail should be enabled and configured for the
instance in which the workflow is developed.
The User Profiles for the Roles are already in Place
with proper Worklist ID s and Permissions.
by surya 10/11/12
5. WorkFlow Tools
5
WorkFlow Tools
Worklists : Consists of lists of the work items that a person (or group of
people) has to do.
Application Designer: Used to design Business Processes, WorkFlow rules
and Routing.
PeopleCode : Used to detect when the business rule need to be triggered, who
should act and used to route it to appropriate users.
Workflow Administrator : Used to access, monitor, analyze, and control
workflow.
Work Items
Business Event: This is a condition that tells the system that an activity is
complete.
Routing: Tells the system to forward information to the next step in the
business process. It specifies what information to forward and where to forward
it.
WorkFlow Triggers
Any Event that triggers PeopleCode can trigger a WorkFlow Event like
Users Working on PS Pages.
3rd Party Application sending data to PeopleSoft component Using CI.
Batch programs or queries sending information to a PeopleSoft component
through a component interface.
by surya 10/11/12
6. Work Flow Application Development
6
Rules : which govern the business process.
Roles : which person fit into our workflow.
Routing :Routings specify where the information goes and what form it takes
email message or worklist entry.
by surya 10/11/12
7. Steps To Develop Work Flow
7
Designing a Workflow Application
• Analyzing the business processes that you want to automate.
• Identify the goal of each business process, what its component tasks are, and how
the tasks should be divided into smaller activities and steps.
• Articulate the conditions that trigger a workflow event and what happens when
those conditions occur.
• Understand who your workflow users are and how you’ll determine who receives
a work item.
Build Supporting Definitions
Create Workflow Maps
• Creating graphical maps that represent your business process.
• Adding PeopleSoft Workflow-specific elements to the maps when you define events and
routings.
Define Roles and Role Users
• Define users’ roles when you give them their user IDs. Roles are important in PeopleSoft
Workflow.
• Roles are used to ensure that work flows to the correct person .
by surya 10/11/12
8. Steps To Develop Work Flow (cont.)
8
Create Worklist Records
• The worklist record determines which fields of information the system
stores for each work item, including the data needed to access the target
page (the search keys for the page) and any additional information that
you want to display in the worklist itself.
Define the Workflow Objects
• Events and routings are both objects on the workflow maps. To define
these workflow objects, add the icons to the map, linked to the step
representing the page where the triggering event occurs.
Define Event Triggers
• After you create workflow processes, link them into the PeopleSoft
applications by adding PeopleCode programs to the pages. The
PeopleCode detects when a business rule has been triggered and
determines the appropriate action.
Testing WorkFlow
• Make sure to test under a variety of conditions, both usual and unusual.
by surya 10/11/12
9. Extended Work Flow Capabilities
9
Route controls.
• Identifies the aspects of a situation on which you want to base routing
decisions, and they enable you to associate values with role users.
Route controls simplify the creation of role queries by enabling you to
associate application data with the role user definition.
Another advantage of route controls is that the factors controlling routing are
stored in a database table instead of in query definitions or PeopleCode.
Workflow triggers from external applications.
A component interface enables third-party applications to enter data into
PeopleSoft applications. Such as electronic forms software, interactive voice
response (IVR) systems, or web applications, and from PeopleCode and
Application Engine programs.
If the page has associated workflow PeopleCode, a component interface can
trigger a business event.
by surya 10/11/12
10. Extended Work Flow Capabilities (cont.)
10
Enterprise Integration Points (EIPs).
There are three PeopleSoft Workflow-related EIPs that you might use:
The Worklist Entry EIP (component interface WORKLISTENTRY) enables third-party
applications to access existing worklist entries, mark items as selected or worked, or
reassign items to other users.
The Worklist Synchronization EIP consolidates worklist data from multiple PeopleSoft
databases using the application engine program WL_REPLICATE, which publishes
worklist data using WORKLIST_MSG.
The Worklist EIP (component interface WORKLIST) enables third-party applications to
add new entries to PeopleSoft worklists.
Batch workflow processing.
Sometimes, the event that triggers a workflow routing is actually a nonevent like aging,
exceeding amounts etc. For this create an Application Engine program that runs a SQL
query against the PeopleSoft database and passes the results to a component interface.
by surya 10/11/12
11. Extended Work Flow Capabilities (cont.)
11
Approval processes.
Here we can define approval rules on an Approval Rule Set map.
Two tools can read and implement the approval rules from the map:
Virtual Approver determines the appropriate approver and sends a workflow
routing as well this verifies whether this requires additional Approvals or not.
GetApprovers PeopleCode determines the entire list of required approvals at once,
so that you can develop custom approval tracking applications.
Activity Guides.
This is used if a single user’s work across several pages. This do not involve routings
like those found in a regular workflow application. Rather, the activity guide leads a
user through a multistep task.
These are particularly appropriate for guiding untrained users through self-service
transactions.
This uses only activities but not business process.
by surya 10/11/12
12. Extended Work Flow Capabilities (cont.)
12
Notification Features.
This can be done using a Mail or a Worklist.
Notification templates enable functional users to configure unique message text for
each component.
The combination of generic templates and PeopleCode application classes can be used
by application developers to extend the delivered notification features for an
application
by surya 10/11/12
13. Building WorkFlow Maps
13
WorkFlow Maps
These are visual representations of your organization's
business processes and they can also be used as navigational
aids for users.
Navigator Maps
This is an alternative to the standard portal navigation.
by surya 10/11/12
14. 14
Map Hierarchies
This uses Business Process, Activities & Steps.
Steps are elements within activities and represent the level at which the user interacts
directly with application pages.
Business processes and activities are both freestanding definitions that you can open
in PeopleSoft Application Designer .
Map Icons
The Business Process icon represents a complete business task, consisting of one or
more activities. This is used functionality only when designing maps for use in
PeopleSoft Navigator.
The Activity icon represents a subprocess of the business task, consisting of one or
more steps.
The Step icon represents a discrete step in the business process, corresponding to a
single transaction performed on an application page or through an external program.
Business Process
A business process is a graphical representation of the relationships between related
activities.
Activities
Activities that are intended only for end users typically include only steps that
correspond either to application pages or to external programs. This will include
events and routing.
by surya 10/11/12
15. Defining Maps
15
Understanding Map Definition
These are freestanding definitions in PeopleSoft Application
Designer, use the standard techniques for opening, saving,
deleting, renaming, adding to projects, printing, and so on.
Common Elements Used in This Section
Icon Desc : If you leave this field blank, the map name appears by
default.
Creating a New Map
In PeopleSoft Application Designer, select File, New.
In the New scrolling list, select the map type: Activity or Business
Process.
Add the icons required to represent the activity or business process.
Connect the activities, decision points, and subprocesses in the
appropriate order.
Define the properties of the map and icons on the map.
Save the Map.
by surya 10/11/12
16. User List Roles
16
These are used to define the Worklist Users for the
Work Flow.
This is used to automate the worklist users to send
mails and messages. If the work list is too huge than
we can route the request to the Administrator.
by surya 10/11/12
17. Query Roles
17
These are used to identify the approver of the work list, to whom the
request to be routed when the trigger is executed, as there will be lot of
users who has the same role.
These queries should be designed in PS query manager , which gets
the input from the page from which the trigger is executed.
At runtime, the system sets the values of the bind variables based on
data from the page that triggers the routing. When you create the
query, make sure that each bind variable matches a field from the
page.
Eg: SELECT C.ROLEUSER FROM PS_JOB A, PS_DEPT_TBL B,
PS_ROLEXLATOPR C
WHERE B.DEPTID = A.DEPTID
AND A.EMPLID = :1
AND C.EMPLID = B.MANAGER_ID
by surya 10/11/12
18. Route Control
18
The PeopleSoft Workflow Administrator enables you
to define route controls.
For example, suppose you want to route purchase
requisitions to different buyers, depending on which
vendor supplies the ordered items, which business
unit is requesting the items, and which department
needs the items. You can define a route control for
each factor—vendor ID, business unit, and
department—and specify a range of values for each
buyer.
by surya 10/11/12
19. WorkList Records
19
The worklist record determines which fields of information
the system stores for each work item and in what order the
work items appear.
The below are some rules for creation of worklist record
Link each work item with the underlying workflow tracking
information, which is stored in a workflow system record
(PSWORKLIST).
Display relevant information about each work item on the Worklist
page, so that users can select the item on which they want to work.
Determine the order of work items in the worklist.
Retrieve the record that is associated with the work item, so that the
user can work on it.
Every Work List record name must be ended by “_WL”.
by surya 10/11/12
20. 20
The below are the list of fields that need to be included in the WorkList record. these fields to
link the items in the worklist with their tracking information, which is stored in the
PeopleSoft-defined table PSWORKLIST.
BUSPROCNAME: The business process that includes the work item.
ACTIVITYNAME: The activity that triggers the worklist routing.
EVENTNAME: The business event that triggers the worklist routing.
WORKLISTNAME: The worklist in which the work item is waiting.
INSTANCEID: The system-assigned ID for the work item.
TRANSACTIONID: The system-assigned transaction ID for the work item. When an event
triggers multiple routings, each work item has the same transaction ID, but a different
instance ID.
Application Fields
WORLKIST_URL: The text that links to the page where the user can work on the item.
Appropriate values might include the key data for the record in which the item will be
worked. For example, for a work item directing a manager to approve an expense report,
the text might be the name of the employee who submitted the report.
WORKLIST_DESCR: A text comment that appears in the user’s worklist. The presence of
this field automatically suppresses the display of any application fields, although the key
fields are still used to bypass the search page of the target page.
by surya 10/11/12
21. Events & Routing
21
Routing
This is used to link activities with workflow and automate
the delivery of information to other activities and other
users.
This delivers the data in two forms : Email and WorkList.
Events
Events are conditions that have associated routings.
Define the condition in PeopleCode, which is attached to
the record definition underlying a step in a step map.
by surya 10/11/12
22. Event Triggers
22
Workflow PeopleCode
PeopleCode is written on WorkFlow event of the record to trigger the business event.
The below function is only used for normal workflow but not for Virtual Approval.
TriggerBusinessEvent (BUSPROCESS.BusProcName, BUSACTIVITY.ActivityName,
BUSEVENT.BusEventName)
GetApprovers Function: The GetApprovers PeopleCode function checks an approval
rules set and determines the entire list of required approvals at once, so that you can
develop custom approval tracking applications.
GetWLFieldValue Function: When you open a page from a worklist this function
enables you to get the value from one of the fields in the current item’s worklist record.
Virtual Approver uses two peoplecode function as specified below:
Virtual_Approver: This checks the approval rules that you defined in the approval rules sets
and determines whether an item must be routed for approval.
Virtual_Router : This routes items to the next step in the approval process.
by surya 10/11/12
23. Additional Routing Options
23
Route Control Type: This identifies the factors on
which you want to base routings: Business Unit,
Department, Vendor ID, and so on.
Route Control Profiles: Identifies range of values
for route control type like one route control profile
might list the vendor IDs for all software vendors,
while another might list the IDs for all office supply
vendors.
by surya 10/11/12