SlideShare a Scribd company logo
Tips & Tricks
Published on May 15, 2018
This is a new section added in 2018. There are some excellent guidance on using Case
capability as well as Process
Tutorials
Published on March 25, 2015
We have a number of tutorials available to get you started with IBM Business
Automation Workflow or the previous IBM BPM offering.
Hiring tutorial
In this tutorial,
depending upon
whether you
have IBM BPM or
IBM Business
Automation
workflow you use
the tools in IBM®
Process Designer
or IBM Workflow
Designer to re-
create the Hiring
Sample process
application that
is in IBM Process
Center.
Interactive
Installation and
Configuration
Guide Not
specifically a
tutorial, but this
guide gets you all
the info you need
to get your on-
premise
installation of
IBM BPM up and
running.
Learn more:
• A tutorial on decisions in process applications: action rules and decision tables
• Hiring Tutorial
A tutorial on decisions in process
applications: action rules and decision tables
Published on July 10, 2018
IBM Business Automation Workflow V18.0.0.1 offers decision tasks which can be
implemented as action rules and decision tables. This scenario shows how to create
and test action rules (Business Action Language (BAL)) and decision tables in a
decision task. The scenario presents a sample business process that is used to
correctly determine the value added tax (VAT) for different kinds of goods in different
countries.
Before you begin
To perform this task you must be in the web based IBM Business Automation Workflow
Process Designer.
About this task
We look at the following scenario, a company sells various types of goods. It is selling
in various European countries. When such a company sends out an order, the bill
needs to be aligned with local regulations, for example, it needs to contain the payable
amount with tax, and without tax.
Depending on the country, the value added tax (VAT) depends on the type of the
goods. In Germany, value added tax for books is just 7 percent, while for other goods it
is 19%. Belgium, for example, has a VAT on food of 6% and 21% on everything else.
The company needs to compute the value added tax depending on the country and the
product type.
There is already a process in place that computes the payable amount with and
without tax. We add action rules for the different types of product and per country.
Thereafter, we use a decision table for the same computation.
The process has a simple interface to take as input how many of an item were bought
to which price per item. The country of the purchase is set via a dropdown list.
The first screen shot below shows the used variables, the second screen shot shows
the process itself. The system service “Compute VAT” either uses action rules or a
decision table to compute the VAT. MyComputeVAT is built to gain experience in
constructing action rules and decision tables. Later compare MyComputeVAT with the
original Compute VAT.
Import the Pricing – Start.twx file which you can download here.
1. Open the IBM Business Automation Workflow Process Center.
2. On the right hand side click on Import Process App.
3. Select the Pricing – Start.twx file and Open.
4. In the Import Process App window click on Import. The Pricing process opens
in the designer view.
Procedure
To add a decision service to a process, complete these steps:
1. Open the web based IBM Business Automation Workflow Process Designer.
2. From the left hand navigator choose Services, click on the + sign,
choose Service flow, give it a name like “MyComputeVAT” and click Finish. A
diagram with connected start and end nodes is shown.
3. The right hand navigator shows different options. Click on the down arrow of the
top rectangle to see the choices for tasks and click and hold on Decision to drag
a decision task between the start and end node.
4. Click on the decision and give it the name Action Rules.
5. Wire the start node to the decision task and from there to the end node.
o Click on the existing connection and then press delete. Then wire from
the Start node to Action Rules and from there to End.
6. Define the input and output variables of the decision task
o Click on Variables and then the + sign for Input to add an input variable.
o Give it the name product and choose as Variable
type Product(predefined type).
o Add another input variable and name it country of type String.
o Add an output variable and give it the name taxrate of type Decimal.
o Press CTRL-s to save your work.
7. Define the decision task
o Click on Decisions at the top and then on Action Rules in the left hand
navigator. The decision action rule editor opens and shows an if
<condition> then <action> rule and a message that the rule is
incomplete.
o Click on <condition> and a box with choices opens, choose country,
press the spacebar and then CTRL-spacebar; another choice box opens,
choose is <an object >. CTRL-spacebar again and choose <string>,
enter Germany between the quotes.
Add a space after the last quote and press CTRL-spacebar again and
choose and <condition>. Again add a space and press CTRL-
spacebar and choose any of the following conditions is true :.
Press CTRL-spacebar again and choose -<condition>. Press CTRL-
spacebar again and choose the type of <a product>, CTRL-
spacebar choose product, CTRL-spacebar choose is <an
object>, CTRL-spacebar choose BOOK.
o Now add a second condition where the type of product is FOOD.
o Click on <action> and choose set <variable>, choose taxrate, next
choose
to <variable value> and finally choose <number> and set it to 7.
o Press CTRL-s to save your work.
The choice of the product type works because the type ProductType has already been
defined as a Simple type of type Selection when the Pricing – Start.twx file was
imported.
So far we have achieved that there is a rule that determines the VAT correctly when
books or food is bought. In order to set the VAT to 19% in all other cases we need an
additional rule:
if country is “Germany” and none of the following conditions are true :
– the type of product is BOOK
– the type of product is FOOD
then set taxrate to 19 ;
An additional action rule can be added by clicking on the Add action rule rule icon, the
top icon on the right hand side of the existing action rule. Use the up and down arrows
to determine the order in which the rules are checked. Use the description above to
create the additional action rule for all the cases where neither book nor food is
bought. Press CTRL-s to save your work.
Your MyComputeVAT action rules decision should look as follows:
For countries like Sweden which have three different VAT rates, for books (6%), food
(12%), and everything else (25%) three action rules are needed.
Decision tables offer a different way to model these rules which is explored now. Add
another decision to the existing service flow.
1. If not still open, navigate to the MyComputeVAT service flow where we added
the decision that was modeled as action rules. Click on Diagram at the top to
open the flow editor.
2. Add a second decision onto the canvas by dragging a decision task from the
right hand navigator onto it. Give it the name Decision Table. Wire it to the end
node. Your service now looks as follows:
3. Click on Decision Table and then on Open Decision in the Implementation tab
at the bottom of the page. The decision editor opens with an empty if-then rule.
4. Click on the X on the right hand navigator to delete that rule.
5. Mouse over the icons at the top on the right hand side and click on add a
decision table. A table with two columns opens, a condition column, C0, and an
action column, A0.
6. Right click on the C0 and choose Insert column -> Condition after. A second
condition column, C2, is shown. Rename the columns as follows
1. Double click on the label C0 and enter the text Country.
2. Double click on the label C2 and enter the text Product type.
3. Double click on the label A0 and enter the text Value-added tax rate
(%).
7. Next the values that can occur in a column need to be defined.
1. Right click on the column label of the first column “Country”,
choose Define column. The Define Condition Column editor opens, click
in the white space and hit CTRL-spacebar. A box opens with the
available options. Choose the variable country press CTRL-
spacebaragain and choose is <an object>:. Click on Define at the bottom
of the editor window, the column content is now defined.
2. Right click on the label of the second column “Product type”.
Choose Define column. In the open editor window click on the white
space and then hit CTRL-spacebar. From the options choose the type of
<a product>. Click on
<a product> and choose the variable product. Add a space and hit CTRL-
spacebar again and choose is <an object>. Then click on <an
object> and choose <a product type>. When you are done click
on Define at the bottom of the editor window and the column is defined.
3. Right click on the label of the action column and choose Define column.
Define the column as “set taxrate to <a number>”. Click Define at the
bottom of the editor and then CTRL-s to save your work.
8. The tax rate per object type and country can now be defined.
1. Click and hold the first cell in the Country column and move the mouse
down such that you mark the first three rows of the Countrycolumn.
2. Right click the marked rows and choose Group from the options.
3. Double click the first cell of the Country column and enter Germany.
Click anywhere outside the cells. All cells now have the same value.
4. Double click into the first cell in the Product type column and
choose Book from the drop down menu.
5. Double click into the first cell of the Value-added tax rate (%) column
and enter the number 7.
6. In the second row Germany is already entered, so add the values, FOOD,
and 7 into the respective columns.
7. In the third row right click in the second cell and choose Set to
Otherwise from the options menu.
8. In the cell of the third row for the Value-added tax rate (%) enter 19.
9. Press CTRL-s to save your work.
You can check the rules for every row of the table by hovering the mouse over the row
number. It is very easy to add new countries and their rules for the tax rate depending
on different product types.
Your MyComputeVAT decision table should look as follows:
Run your implementation
In the process designer navigate to the Processes on the left hand side and click
on Print Bill.
In the Definition tab of the process click on the Compute VAT system service. In the
properties section at the bottom click on the Implementation tab and select as
implementation the MyComputeVAT service. The resulting VAT is the input to
the ShowBill human service that computes the prices with and without tax via a script
and then displays them to the user.
As the readily made process Pricing – Start.twx was imported with the Compute
VAT which has just been replaced with the MyComputeVAT service the data mapping
has to be adjusted.
1. In the properties section at the bottom click on Data Mapping.
1. To the right of the empty boxes click on the Variable Picker and
map product to product, country to country, and taxrate to vat.
2. Click CTRL-s to save your choices.
In order to try out the implementation navigate to the processes on the left hand
navigator of the Web Process Designer and click on the Print Bill process. At the top of
the page there is a small arrow in a circle pointing to the right that shows Run when the
mouse is hovering over it. Click it to run your process.
1. On the right hand side new elements open, Details, Tasks, Locations, Data.
Details and Locations are already expanded. The process shows a token at the
position of the Purchase an item task.
2. In the locations area on the right hand side click on the start arrow for
the Purchase an item task.
3. The input window opens and you can enter your information. When done click
the ok button at the bottom of the page. Remember that from the offered
countries you can only choose Germany as there are no rules for the other
countries (yet).
4. The input window shows the message “The service has finished”. Close that
window.
5. The process now shows a token at the Show Bill position. Sometimes it shows a
token at the MyComputeVAT node. If that happens, click on the start arrow on
the right hand side in the locations area and the token will move further on to
the Show Bill task.
6. In the locations area on the right hand side click on the start arrow for the Show
Bill task.
7. The Show Bill window opens and shows the appropriate prices with and without
VAT.
8. Click the ok button at the bottom of the window and then close the window to
finish the process.
Go to the Services tab on the left hand navigator again and click on MyComputeVAT.
Click on Diagram and change the endpoint of the arrow from Start to Decision
Table instead of to Action Rules, save your change and run the process again.
When you are done with testing your decisions you can try out the original Compute
VAT Service. It contains more countries and rules for adding VAT onto different goods.
In order to try out more countries than the four offered in the drop down box you will
have to add them to the drop down box as shown in this screen shot.
1. In the left hand navigator click on User Interface and then on Enter order UI.
Click on the Coaches tab at the top and then on Coach at the left.
2. Click on Country and in the properties section at the bottom on Configuration.
3. From the three elements Behavior, Items, and Appearance, click on Items.
Scroll down a bit and click on the twisty left of Static list.
4. The list of elements that are shown in the drop down box is shown and you can
add more countries right there. When done save your work by pressing CTRL-
s and continue with your tests.
Decisions can also be used to model the conditions of an exclusive gateway which
determine the subsequent path through a process or service flow (see also using a
decision service in an exclusive gateway). The use of decisions for modeling the
conditions for an inclusive gateway is restricted to process flows.
Depending on the task it may be easier to use action rules or decision tables. Offering
both allows for maximum flexibility. Furthermore, you can export the decisions as a
project file for use in IBM Operational Decision Manager (ODM)(see importing a
project).
Hiring Tutorial
Published on March 9, 2016
In this tutorial, you use the tools in IBM® Process Designer to re-create the Hiring
Sample process application that is in IBM Process Center.
The Hiring Sample process application that you create using the tutorial is similar to
the Hiring Sample process application that is already in Process Center. Most of the
differences are minor, but there are some important differences:
• The tutorial process application does not have the qualifications section and its
business object. The sample demonstrates how to use tabs to present the
qualifications.
• The tutorial process application does not have Find Candidates client-side
human service.
This tutorial gets you started using Process Designer tool by having you iteratively
model and test an instance of a hiring process application. As you complete the
lessons, you learn about Process Designer so that you can build your own processes.
Note: This tutorial is a learning exercise that describes one way of modeling,
implementing, and testing a process. Depending on your company’s processes and
needs, other techniques might be more appropriate.
The tutorial consists of the following lessons:
• Process requirements
• Model the process
o Create the process application
o Create the process
o Model teams
o Add activities and events
o Add sequence flows
o Add event gateways
o Add a timer intermediate event
o Create process variables
o Conduct playback zero
• Implement the process
o Create business objects
o Implement the timer intermediate event
o Implement gateways
o Conduct playback one
• Create the user interface
o Plan the user interface
o Create the coach view for the position request data
o Create the coach view for position data
o Create the coach view for person data
o Create the coach view for qualifications
o Create the Create Position Request CSHS client-side human service
o Create the coaches for the Create Position Request CSHS
o Complete the flow for the Create Position Request CSHS
o Create the GM Approval CSHS client-side human service
o Conduct playback two
• Validating coach data
o Add validation to the create position request coach
o Conduct playback three
Each lesson in this tutorial builds on the previous lesson so that you can work with the
tutorial from beginning to end.
Next >
Learn more:
• Hiring Tutorial: Create the user interface
• Hiring tutorial: Implement the process
• Hiring tutorial: Model the process
• Hiring tutorial: Process requirements
• Hiring Tutorial: Validating coach data
Hiring tutorial: Process requirements
Published on March 11, 2016
Hiring tutorial >
The process that you are going to create is called the Standard HR Open New Position
process. This process covers how to fill a job position by submitting, approving, and
routing a job requisition to the Human Resources (HR) department to search for
position candidates.
The Standard HR Open New Position process includes the following requirements:
• The hiring manager must either fill a new position or replace an employee who is
departing from an existing position.
• The hiring manager must determine the position requirements and prepare a
position request to be submitted to the HR department. The hiring manager
provides the following information in the request:
o Name of the hiring manager
o Title of the position
o Name of the department that requires the position
o Whether the request is for a new or existing position
o Whether the job is part-time, full-time, or contract
o When the position starts
o Where the position is located
For an existing position, the hiring manager must provide the following
additional information about the person who will be replaced:
o Given name
o Family name
o The person’s manager or supervisor
o Comments regarding the person
• The hiring manager reviews and approves the position request before the hiring
procedure continues:
o If the request is to fill an existing position, the hiring manager sends the
request directly to HR. When HR receives the request, they search for
candidates.
o If the request is to fill a new position, the hiring manager sends the
request to the general manager (GM) for approval.
• When HR receives the position request, they process it. The tutorial does not
provide an implementation of this processing.
• The GM must evaluate the new position request and either approve or reject it.
o If the GM approves the request, it then goes to HR so that HR can find
candidates.
o If the GM rejects the request, the hiring manager is notified and the
process ends.
o If the GM does not handle the request by the due date, the GM is notified.
Hiring tutorial: Model the process
Published on March 10, 2016
Hiring tutorial >
You follow the process requirements to model the Standard HR Open New Position
process and then test the current state of the process in Playback Zero. During
Playback Zero, you discover new requirements and review the process with the
business stakeholders.
Learning objectives
After you complete the lessons in this part of the tutorial, you will understand the
concepts and know how to do the following tasks:
• Create a process application.
• Create a process.
• Model teams by adding lanes and assigning teams to the process.
• Add activities, events, and gateways to the process.
• Add sequence flows to connect the activities, events, and gateways.
• Add a timer intermediate event to the process.
• Create process variables.
• Run Playback Zero.
Learn more:
• Hiring tutorial: Add a timer intermediate event
• Hiring tutorial: Add activities and events
• Hiring tutorial: Add event gateways
• Hiring tutorial: Add sequence flows
• Hiring tutorial: Conduct Playback Zero
• Hiring tutorial: Create process variables
• Hiring Tutorial: Create the process
• Hiring tutorial: Create the process application
• Hiring Tutorial: Model teams
Hiring tutorial: Create the process
application
Published on March 11, 2016
Hiring tutorial > Model the process
To contain the Standard HR Open New Position process, you create the process
application. The process application is stored in the Process Center repository, which
you can access from Process Designer.
This lesson uses the following concepts:
Concept Description
process
application
A container in the Process Center repository that stores process
models and supporting implementations. A process application
typically includes processes, the services that implement activities
and integrate with other systems, and other items required to run the
processes. Each process application can include one or more tracks.
Process
Center
A central repository for all project assets that are created in Process
Designer. When multiple Process Designer clients connect to Process
Center, users can share items, such as processes and services. Users
can also see changes that other users make as they happen.
Process
Designer
An authoring tool that you use to model and implement your business
processes and demonstrate a process design and flow during
development.
Procedure
1. Using the Process Center URL, open the Process Center. The Process Apps page
displays the list of process applications that are available in Process Center. The
Hiring Sample (HSS) process application is the one that is shipped with the
product. You are creating your own process application for this tutorial.
2. Click the Create New Process App link on the right panel of Process Center.
Enter the following information:
o Process App Name: My Hiring Sample
o Acronym: MHS
o Description: Contains the process for filling a position.
3. Click Create. The process application is now in your list of process apps.
4. To open the My Hiring Sample process application, click Open in Designer. A
Process Designer page opens, displaying the Process App Settings.
The highlighted blue area in the library shows the process application that
you are editing. Notice that this page gives you the opportunity to edit the
process application settings, such as the name, acronym, and description. For
now, leave the settings as they are and continue modeling the process.
Summary
In this lesson, you learned how to create a process application.
In the next lesson, you create a process.
Hiring Tutorial: Create the process
Published on March 11, 2016
Hiring tutorial > Model the process
In this lesson, you create a process for the Standard HR Open New Position process.
After you name the process, you model it by defining lanes and teams and then adding
flow objects such as activities, events, and gateways.
This lesson uses the following concept:
Concept Description
Process
A reusable process diagram or model that defines what is common to all runtime
instances of that process model.
Procedure
1. Make sure that the My Hiring Sample (MHS) process application is open in the
Process Designer.
2. In the library, click the plus sign next to Processes and select Process.
3. Type Standard HR Open New Position and click Finish. The process is
created and the process diagram opens showing the following
modeling constructs:
This image shows the initial Process Designer interface when you create a
process. Descriptions are provided in the table that follows the image.
1. Main toolbar – Provides access to Designer, Inspector, and Process
Center. The main toolbar is also where you go to save all open editors,
take a snapshot, and view web help.
2. Library – Provides access to the library items for the current process
application.
3. Main canvas – The area in which you can graphically model your process
and the other artifacts that you create in the process application. Each
process automatically includes a start event and an end event. Two
default lanes are included for team and system tasks.
4. Palette – Provides elements that you can use to model your process.
5. Properties – Provides the properties of any element that you select in the
main canvas.
4. Open the Overview page, add a description. Click Select for Expose to
start and then select All Users.
5. Save your changes. If you open the process app settings, the process is now
listed as an exposed item.
Summary
In this lesson, you learned how to create a process
In the next lesson, you model the process by adding activities and events.
Hiring tutorial: Add activities and events
Published on March 11, 2016
Hiring tutorial > Model the process
In this lesson, you add activities and events to the lanes in the Standard HR Open New
Position process to establish the correct process flow.
When you add activities and events, follow these guidelines:
• Ensure that activities represent logical units of work that are assigned to a
participant of a process.
• Create multiple concurrent workflow steps that are assigned to one responsible
role into one activity or task.
• Use verb-noun statements to label activities, such as “Submit position request”.
• Apply a top-down, left-to-right flow to your process so that it is easier to read.
This lesson uses the following concepts:
Concept Description
event Controls flow objects for a process model. An
event is something that occurs during a process.
start
event
Triggers the initiation of the process through
a manual or automatic input. There are four types of start events:
none, message, ECM content, and document. In a process, a none start event
is created automatically and only one instance is allowed in the model.
To start a process when an external signal is received, add a message
start event to the process.
end
event
Occurs in a process when a final decision from
all activities or a partial set of activities is reached. There are
four types of end events: none, message, error, and terminate.
You can have multiple standard end events.
activity A single work task that a participant, whether
the participant is a person or a system, accomplishes from beginning
Concept Description
to end during a process. There are many types of activities: For example,
user task, system task, script, and decision task.
user
task
An activity is implemented as a user task when
a user or human starts or completes the activity. For example, the
Submit position request activity is a user task.
system
task
An activity is implemented as a system task
when an automated system or service completes an activity. For example,
the Notify hiring manager activity is a system task.
script
task
An activity that uses JavaScript to access and manipulate data.
decision
task
An activity with a decision or condition in
a business rule to determine which process implementation is started.
Procedure
1. Make sure that the Standard HR Open New Position process is open and
the Definition tab is selected.
2. An Inline User Task is created when you create the process. Select this task and
delete it.
3. Click the Team lane and, in the Properties tab, change the name to Hiring
Manager.
4. Set the Color property to Green.
5. Drag a User Task activity from the palette into the Hiring Manager lane. Double
click the activity and type Submit position request.
6. Change the color of the activity to Blue and click Edit under Documentation to
add a description of the activity.
7. Add the remaining lanes and activities using the information in the following
table:
Lane Activities and color Events
Name: Hiring Manager
Color: Green
Name: Submit position request
Type: User Task
Color: Blue
Start
Lane Activities and color Events
Name: General Manager
Type: User Task
Color: Blue
Name: Review new position request
Color: Purple
Name: Human Resources
Type: User Task
Color: Default
Name: Find position candidates
Type: User Task
Color: Yellow
Name: System
Color: Purple
Name: Notify hiring manager
Type: User Task
Color: Orange
End
Note: While you should add a description to each element in your process app to help
users understand it, the tutorial will skip adding them for brevity.
8. Select the Notify hiring manager activity and then in the properties,
click Implementation. For the activity type, select Script.
9. Move the End event to the right of the Notify hiring manager activity. Your
diagram matches the following image:
10.Save your work.
Summary
You added activities and events to the Standard HR Open New Position process.
In the next lesson, you model teams.
Hiring Tutorial: Model teams
Published on March 11, 2016
Hiring tutorial > Model the process
In this lesson, you model the teams that participate in the Standard HR Open New
Position process. Teams that are assigned to activities and lanes determine which
users can work on tasks in Process Portal. If a team is assigned to a lane, members of
that team can work on all the tasks that are part of that lane.
Based on the process requirements, you must create a team for each of the identified
user roles: hiring manager, general manager, and human resources manager. To model
the teams, you add lanes and assign teams to the process. Each lane contains the
activities that the associated team or system completes. You also define the teams by
specifying the cost per hour, members, and managers.
When you create a process, Process Designer generates two lanes: Team and System.
For the Standard HR Open New Position process, you must have the following lanes
and teams:
Lane Team title
Hiring Manager HiringManagers
General Manager GeneralManagers
Human Resources Human Resources
System System
The system lane contains the activities that IBM® Business Process Manager
completes.
This lesson uses the following concepts:
Concept Description
lanes Provide context for a process model. Each lane
contains a series of activities that are assigned to a specific team
or system.
teams Contain the members who complete the runtime
activities that are modeled in each lane.
members User groups or individual users that are part
of a team.
managers The team whose members can use the Team Performance
dashboard in Process Portal to
manage this team and its tasks.
Procedure
1. Make sure that the Standard HR Open New Position process is open and the
Definition tab is selected.
2. Click the Human Resources lane.
3. Create the Human Resources Managers team:
1. In the Behavior section of the team properties, for Default Lane
Teamclick New.
2. Type Human Resources for the name and click Finish.
3. In the Members section, click the add icon for User Groups and then
select tw_allusers.
Note: The group tw_allusers is created automatically when you install
IBM Business Process Manager. All registered users are part of
tw_allusers.
4. In the Managers section, click Select and select Managers of All Users.
5. Click Finish Editing.
4. To return to the Standard HR Open New Position process, click Human
Resources and then select the process from the list.
The list contains the artifacts that you have opened to view or edit.
You are now back in the main canvas of the Standard HR Open New Position
process.
5. Add the remaining teams using the information in the following table:
Lane Team Members Managers
Human Resources Human Resources tw_allusers Managers of All Users
General Manager GeneralManagers tw_allusers Managers of All Users
Hiring Manager HiringManagers tw_allusers Managers of All Users
Summary
You defined the teams and assigned them to lanes.
In the next lesson, you use sequence flows to connect the activities and events to
establish the process flow.
Hiring tutorial: Add sequence flows
Published on March 11, 2016
Hiring tutorial > Model the process
In this lesson, you use sequence flows to connect the activities and events to establish
the process flow in the Standard HR Open New Position process. At this stage of the
process model, you are setting the expected flow of the process from the start to the
end events. Later in the tutorial, you will create conditional paths
Note: If more than one sequence flow leaves the same flow object, the first one that
you add is the default sequence flow. Subsequent sequence flows that originate from
the same object are followed only under certain conditions. For an example, see the
sequence flows that originate from the Submit job requisition activity.
Typically, you add process flow controls, which are known as gateways, when there is
more than one flow out of an activity. In this lesson, you sequence only the activities
and events. In the next lesson, you add the gateways.
This lesson introduces the following concepts:
Concept Description
normal
sequence
flow
A plain arrow that indicates that the process progresses to the next step in
the process as soon as the first step is completed.
default
sequence
flow
A plain arrow with a back slash at the beginning of the flow line. A default
sequence flow is required and is automatically created when there is a
conditional sequence flow. The default sequence flow indicates a processing
path to follow when none of the conditions on the conditional sequence flows
are true. The default sequence flow ensures that there is at least one
processing path (the default path) for the business process to follow.
Procedure
1. Make sure that the Standard HR Open New Position process is open and the
Definition tab is selected.
2. In the process diagram, move your mouse to the Start event. The event displays
its connection points.
3. Hover over a selection point to display a sequence flow arrow. Drag the arrow to
the Submit position request activity. When the activity displays its selection
points, drag the sequence flow onto one of them.
4. Connect the Submit position request activity to the Find position
candidates activity and then connect the Submit position request activity to
the Review new position request activity.
Notice that the flow line that goes to the Find position candidates activity is
marked as the default flow line.
o If more than one sequence flow leaves the same flow object, the first one
that you add is the default sequence flow.
o If your sequence is incorrect and you have the wrong default line, delete
all the sequence flow lines from the activity and redo them.
5. Connect the Find position candidates activity to the End event.
6. Connect the Review new position request activity to the Find position
candidates activity and to the Notify hiring manager activity.
7. Connect the Notify hiring manager activity to the End event.
8. Save your work.
Summary
You established the process flow in the Standard HR Open New Position process.
In the next lesson, you add gateways to model points in the process execution.
Hiring tutorial: Add event gateways
Published on March 11, 2016
Hiring tutorial > Model the process
In this lesson, you create two event gateways to model points in the Standard HR Open
New Position process execution.
In the previous lesson, you added a sequence flow line for each potential path from an
activity. Now you add gateways to control the divergence and convergence of the
sequence flow lines and to determine the branching of the paths that the process can
take.
An event gateway represents a branching point in a process where only one of several
flows can be followed, depending on the events that occur. For the Standard HR Open
New Position process, you need the following gateways:
• New position?: If the position request is to fill an existing position, the request
goes directly from the hiring manager to HR. If the request is to fill a new
position, the requisition goes to the general manager (GM) for approval.
• GM approved?: The GM evaluates the request for a new position and either
approves or rejects it. If the GM approves the new position, the request goes to
human resources, who can then search for position candidates. If the GM
rejects the new position request, the hiring manager is notified and the process
ends.
This lesson uses the following concept:
Concept Description
gateway
Controls the flow of a process, such as the divergence and convergence of
sequence lines, determining, branching,
and merging the flows that a process can take. There are two gateway
modes: split and join. A gateway can split an incoming flow into multiple outgoing
flows, or it can join incoming flows into one outgoing flow. There are two types of
gateways: exclusive and parallel. This tutorial uses exclusive gateways.
Procedure
1. Make sure that the Standard HR Open New Position process is open and
the Definition tab is selected.
2. Drag a gateway from the palette to the right of the Submit position
request activity on the process diagram. In the General properties, rename it
to New position?.
3. In the General properties, verify that Exclusive Gateway is the gateway type.
Tip: You can drag any activity or event to move it around in the diagram.
4. Connect the New position? gateway:
1. Click the sequence flow between the Submit position request and
the Find position candidates activities and press the Delete key (or
right-click and select Delete).
2. Delete the sequence flow between the Submit position
request and Review new position request activities.
3. Connect the Submit position request activity to the New
position?gateway.
4. Connect the New position? gateway to the top of the Find position
candidates activity and then to the top of the Review new position
request activity.
5. Name the sequence flow lines:
1. Click the sequence flow between the New position? gateway and
the Find position candidates activity.
2. In the Properties tab, type No approval needed –> proceed to HR as the
name.
3. Click the sequence flow between New position? and Review new
position request.
4. In the Properties tab, type Yes – GM approval required as the name.
6. Drag a gateway from the palette to the right of the Review new position
request activity on the process diagram. Type GM approved? in the text box that
displays over the gateway.
7. Connect the GM approved? gateway:
1. Delete the sequence flow between the Review new position requestand
the Find position candidates activities.
2. Delete the sequence flow between the Review new position
requestand Notify hiring manager activities.
3. Connect the Review new position request activity to the GM
approved? gateway.
4. Connect the GM approved? gateway to the Notify hiring manageractivity
and the Find position candidates activity.
5. Name the sequence flow lines to Rejected and Approved –> proceed to
HR. Your process model matches the following image:
8. Save your work.
Summary
You added event gateways to the Standard HR Open New Position process.
In the next lesson, you add a timer intermediate event.
Hiring tutorial: Add a timer intermediate
event
Published on March 11, 2016
Hiring tutorial > Model the process
In this lesson, you model an escalation path with an attached timer intermediate event
to satisfy process requirements for the Standard HR Open New Position process.
Based on the process requirements, the General Manager (GM) evaluates the
submitted job requisition and either approves it or rejects it. If the job requisition is not
handled by the due date, the timer intermediate event is triggered and the system
sends an escalation notice to the GM.
In this lesson, you add the timer intermediate event, and in the Implement the
process module, you implement the timer intermediate event.
This lesson uses the following concepts:
Concept Description
Intermediate
event
Occurs between a start event and end event in the process. There are
three types of intermediate events: timer, message, and error. Use the
intermediate event to indicate a point in a service when you want Process
Designer to capture the run time data for reporting purposes.
Intermediate events can be in a sequence flow or attached to the
boundary of an activity.
Message
(receiving)
event
Used to model a message that is received while a process is running.
Message
(sending) event
Used to model a message that is sent while a process is running.
ECM Content
event
Used to model an ECM Content message that is received.
Concept Description
Timer
intermediate
event
Use a timer intermediate event to specify a time before or after an activity
occurs. Timer intermediate events, which you use to model escalation
paths or delays in the process, can occur either between activities or
attached to an activity.
Error boundary
event
Used to identify exceptions that occur while an activity runs and handle
those exceptions by using an error handler activity, subprocess, or flow.
Procedure
1. Make sure that the Standard HR Open New Position process is open and
the Definition tab is selected.
2. Drag a Timer intermediate event from the palette onto the lower-left boundary
of the Review new position request activity and type Overdue approval as the
name.
3. In the Properties tab, click Implementation. In the Boundary Event
Typesection, clear Interrupt activity. Keep Repeatable selected.
Note:
o If the Interrupt activity is selected, the attached activity is closed when
the timer event is triggered. For this tutorial, you clear Interrupt activity
because the GM completes the activity upon receiving the escalation
notice.
o If Repeatable is not selected, the escalation notice is sent only once.
When the timer is set to repeatable, an escalation notice is sent each
time that the specified interval elapses until the activity is completed.
You set the other properties during implementation.
4. Add the Send escalation activity:
o Drag a System Task activity from the palette to the System lane to the
left of the Notify hiring manager activity.
o Name the activity Send escalation notice.
o Connect the Overdue approval timer intermediate event to the Send
escalation notice activity.
5. Name the sequence flow line:
1. Click the sequence flow between the Overdue approval timer
intermediate event and Send escalation notice activity.
2. In the General properties, type Missed due date as the name and select
Name visible box.
3. In the Type section, for Connection type select Exception Path.
6. Add an End to end the exception path. Drag an End event from the palette onto
the canvas to the right of Send escalation notice and change its name to End
escalation and its event type to None.
7. Connect the Send escalation notice activity to the End escalation event.
Tip: You can complete the escalation path by building an underlying service to
implement the Send escalation notice activity. Typically, this activity is
implemented as a send and chase design pattern that is modeled in a separate
process.
Your diagram looks like the following image:
8. Save your work.
Summary
You added an attached timer event to the Standard HR Open New Position process.
Hiring tutorial: Create process variables
Published on March 11, 2016
Hiring tutorial > Model the process
In this lesson, you create the process variables to implement the gateway logic.
The process uses private variables because these variables are used only by this
process and possibly passed to linked processes. When you implement the process,
you associate these variables with business objects that you will create.
When you create variables, follow these guidelines:
• Create variable names that begin with a lowercase letter.
• Capitalize the first letter of a variable type.
• If the variable name is only one word, spell that word in all lowercase letters.
• If the variable name consists of more than one word, capitalize the first letter of
each subsequent word.
• Remember that variable names are case sensitive.
This lesson uses the following concepts:
Concept Description
variables Data that provides the business context to a
running process. Using variables, the business process passes data
from one step to another. Private, input, and output are kinds of
variables.
private
variables
Values that the current process or service requires.
input
variables
Values that pass into the current process or
service.
output
variables
Values that are passed from a process to a parent
process or service.
Procedure
1. Click the Variables tab in the main canvas of the Standard HR Open New
Position process.
2. For a private variable, click its Add button and in the Details section that opens,
type currentPosition for the name.
3. In the same way, add the requisition private variable. As a placeholder for now,
leave their types as String. You will update the types after you have created the
appropriate business objects. Your private variables match the following image:
4. Save your work.
5. Click the Definition tab in the main canvas of the Standard HR Open New
Position process to return to the model.
Summary
You added process variables to the Standard HR Open New Position process.
In the next lesson, you conduct Playback Zero.
Hiring tutorial: Conduct Playback Zero
Published on March 11, 2016
Hiring tutorial > Model the process
In this lesson, you learn about playbacks, conduct Playback Zero by reviewing the
process model with the stakeholders and taking a snapshot of the process.
During a playback for business stakeholders, users, and development, the process
model is examined at a designated development phase to establish process goals,
achieve consensus, collaboratively improve the process model, and, ultimately,
approve the process model. By using playbacks, you can develop a process application
iteratively.
Playback Zero is an important milestone in a Business Process Manager project-
development lifecycle because it is during Playback Zero that a business process is
identified and analyzed as a good candidate for a business process management
project. During Playback Zero, the business process is defined, modeled, refined, and
reviewed through discussion, discovery, and process analysis.
After you complete a playback, take a snapshot of the process. Snapshots record the
state of library items in a process application at a specific time. You can use a snapshot
to return to a previous state in the project; therefore, take snapshots often. You can
also compare two snapshots to identify changes. When you finish your project, you
create a final snapshot that you deploy.
This lesson introduces the following concepts:
Concept Description
Playback The act of demonstrating or running a process.
A development team can use the Inspector in Process Designer to demonstrate
the current process design and implementation in playback sessions. Playback
Concept Description
sessions help capture important information from different stakeholders in a
process, such as management, users, and business analysts.
Snapshot Records of the state of library items in a process application or track of a
process at a specific time. You can create snapshots in the Process
Center console or in the Process Designer. You install, export, and archive
snapshots in the Process Center console.
Procedure
1. Make sure that the Standard HR Open New Position process is open and
the Definition tab is selected.
2. Review the process model by checking that your process model matches the
following image:
3. Step through the process to simulate a playback, explaining your process model
to a colleague.
4. Add new process requirements to the Standard HR Open New Position process.
For this tutorial, no additional requirements go into the process. The process
model is now ready for implementation.
5. Create a snapshot of your process application:
1. Click the icon in the main toolbar.
2. Select Create a new snapshot.
3. Type Playback Zero as the snapshot name.
4. For the description, type This is a snapshot of the process application up
to Playback zero.
5. Click Finish.
You can view the snapshot by opening Process Center and selecting the process
application.
Summary
You reviewed the process model with playback zero and took a snapshot of the
process application.
In the next module, you implement the process.
Hiring tutorial: Implement the process
Published on March 11, 2016
Hiring tutorial >
In this module, you implement the Standard HR Open New Position process that was
validated in Playback Zero.
After you complete the lessons in this module, you will understand the concepts and
know how to do the following tasks:
• Create business objects .
• Implement timer intermediate events.
• Implement gateways.
• Conduct Playback One.
< Previous | Next >
Learn more:
• Hiring tutorial: Conduct Playback One
• Hiring tutorial: Create business objects
• Hiring tutorial: Implement gateways
• Hiring tutorial: Implement the timer intermediate event
Hiring tutorial: Create business objects
Published on March 11, 2016
Hiring tutorial > Implement the process >
In this lesson, you create custom business objects to organize your process-specific
data for the Standard HR Open New Position process.
Business objects represent the business data that is relevant to the process. For each
business object, you define parameters to specify the data structure. A parameter is
assigned a variable type that can be a simple type or a business object. When you
create the user interface, you bind elements of the user interface to the parameters of
these business objects.
When you create business objects, follow these guidelines:
• Start business object names with an uppercase letter.
• If the name of the business object consists of more than one word, capitalize
the first letter of each word, for example NewPerson.
• Remember that the names of business objects are case sensitive.
• Add documentation details to business objects and parameters to clarify their
use to other users. These details display in the context-sensitive help windows
when someone selects the business objects for use with variables.
This lesson uses the following concepts:
Concept Description
business
objects
A variable that represents business data that is relevant in the context of a
process.
Procedure
1. Create a Person business object:
1. In the library, hover over Data and then click the icon.
Select Business Object.
2. Type Person for the business object name and click Finish.
3. In the Parameters section, click the add button.
4. Type lastName for the parameter name and keep the variable type
as String.
5. Use the following table to create the parameters for the business object:
Parameter Variable Type
lastName String
firstName String
supervisor String
startDate
Date
Tip: To change the variable type, click Select next to Variable
Type to select the Date variable type.
Parameter Variable Type
payLevel String
payType String
notes String
6. Save your work.
2. Create a Position business object. Use the following table to create the
parameters for the business object:
The tutorial uses this variable to store the position types that that the hiring
manager can select in the coach.
Parameter Variable Type
positionType String
positionTypeList
String (List)
Tip: Select the List check box.
replacement
Person
Tip: Click Select for the Variable Type and then click Personfrom
the list. This is the business object that you created in the
previous step.
jobTitle String
iId String
Save your work.
3. Create the Requisition business object. Use the following table to create the
parameters for the business object:
Parameter Variable Type
reqNum String
requester String
empType String
Parameter Variable Type
empTypeList String (List)
empNum Integer
approvalNeeded Boolean
date Date
department String
departmentList String (List)
location String
locationList String (List)
gmApproval Boolean
gmComments String
instanceId String
4. Save your work.
5. Open the Standard HR Open New Position process. When you modeled the
process, you created variables to model the decision gateway logic and left their
types as String. Now, change the type of these variables to the types of the
business objects that you created.
1. In the main canvas of the Standard HR Open New Position process, click
the Variables tab.
2. Select the currentPosition private variable and then change its variable
type from String to Position.
3. Enable Has default. The properties now have default values.
4. Change the variable type of the requisition private variable from String to
Requisition.
5. Enable Has default.
6. Save your work.
7. Click the Definition tab to return to the Standard HR Open New Position process
diagram.
Summary
You created business objects and then updated the process variables to used these
business objects as their type.
In the next lesson, you implement the timer intermediate event.
Hiring tutorial: Implement the timer
intermediate event
Published on March 11, 2016
Hiring tutorial > Implement the process >
In this lesson, you implement the timer intermediate event that you modeled in the
Standard HR Open New Position process.
When you implement the timer intermediate event that you attached to the boundary
of the Approve or reject requisition activity, you can set the following details:
1. Trigger on – Specifies when the timer intermediate event starts.
2. Before or After difference – Specifies the amount of time that is allowed to pass
after the due date before the timer is activated.
Procedure
1. Make sure that the Standard HR Open New Position process is open and
the Definition tab is selected.
2. Click the timer intermediate event that is attached to the Review position
request activity.
3. Open the Implementation properties.
4. In the Event Properties section, specify the following values:
o Trigger on – After due date. This selection causes the event to trigger
after the due date for the activity.
o Before or after difference – 1 and Days. This selection causes the event to
trigger one day after the due date.
Note: When you select to run the timer event repeatedly, make sure that
you set the Before or after difference to at least 1 minute. When the timer
is set to Repeatable and the before or after interval is 0, it causes high
CPU load because the escalation notices are sent continuously, without
an interval, until the activity completes.
5. Save your work.
Summary
You implemented the timer intermediate event that was modeled in the Standard HR
Open New Position process.
In the next lesson, you implement the gateways.
Hiring tutorial: Implement gateways
Published on March 11, 2016
Hiring tutorial > Implement the process >
In this lesson, you implement the exclusive gateways, new position and GM approved,
that you modeled in the Standard HR Open New Position process. When you specify
the implementation for a gateway, you define conditions that control whether a path is
followed during the running process.
Procedure
1. Make sure that the Standard HR Open New Position process is open and the
Definition tab is selected.
2. Implement the New position gateway:
1. Click the New position gateway.
2. Open the Implementation properties for the gateway. The
implementation provides a number path expressions that are checked in
order from top to bottom. The last path is the default path, which the flow
takes if none of the expressions apply. In this tutorial, the default flow
is No approval needed — > proceed to HR.
3. Build the expression for the Yes – GM approval required path. For the first
field, click the Select a variable icon.
4. In the window, expand currentPosition and select positionType.
5. In the next field that contains the expression type, change its value to ==.
6. In the last field, type “New”.
Note: You must include quotation marks because the positionType
variable is a string.
The implementation matches the following image:
3. Save your work.
4. Implement the GM approved gateway:
Click the GM approved gateway and open the Implementation properties for
the gateway.
Create the expression for the Approved –> proceed to HR path:
Field Value
First tw.local.requisition.gmApproval
Expression type ==
Last true
5. The implementation matches the following image:
6. Save your work.
Summary
You implemented the gateways that were modeled in the Standard HR Open New
Position process.
In the next lesson, you conduct Playback One.
Hiring tutorial: Conduct Playback One
Published on March 11, 2016
Hiring tutorial > Implement the process >
In this lesson, you conduct Playback One by validating the different paths in the
process and taking a snapshot of the process.
In Playback One, you validate the process as it is defined in Playback Zero and
demonstrate changes to the business stakeholders, users, and development. During
this playback, you uncover errors in the process flow or in the logic that is used to
evaluate the data.
In this lesson, you validate the following paths in the Inspector:
• The hiring manager submits a job requisition to fill a new position.
• After the job is submitted, the job requisition is routed to the general manager
(GM) for approval.
• The GM does not complete the task on time.
• The GM approves the requisition and it is routed to HR.
• The hiring manager submits a requisition to fill an existing position.
• After the job is submitted, the requisition is routed to HR.
This lesson introduces the following concepts:
Concept Description
Inspector A tool in Process Designer that is integral to an iterative approach to process
development. Using the Inspector, developers can run processes and services
on the Process Center server or remote runtime process servers. You can also
step through and debug a process instance in the Inspector.
process
instance
A specific instance of a process. For example, when you run a process, Business
Process Manager creates a default name for the process instance. This name is
visible to business users in Process Portal, allowing them to distinguish
between different instances of a process as they complete their work.
Concept Description
task A step or activity in a process.
token A marker that progresses through a process instance and indicates which
element is running. A process instance can generate several tokens. A token
can take only one path. In the Inspector,
a balloon indicates a token.
snapshot A record of the state of library items in a process application or track at a
specific point in time. You can
create snapshots in the Process Center console or in the Process Designer. You
install, export, and archive snapshots by using the Process Center console.
Start the process instance
1. Make sure that the Standard HR Open New Position process is open on the
Definition page.
2. To run an instance of the process, click the icon. The Inspector opens. It
shows the process with a token at the submit position request activity. The
instance details panel displays information about the running instance the tasks
created by the instance, the current location of the token, the process data, and
a set of controls to control the process flow.
Test the path for filling a new position
You are now ready to test the path in which the user chooses to fill a new position,
which requires GM approval.
1. To run the path, you must enter data.
1. Expand the Data section and expand the currentPosition variable.
2. For positionType parameter, enter the value “New”, including the
quotation marks.
3. Similarly, expand the requisition variable and set gmApproval to true.
Note: You could start the process with a script activity in the System lane to
initialize your data. Because this sample does not have a script yet, you enter
mock data to run Playback One and validate the process flow.
2. Expand the Tasks section and click the Submit position request task. A sample
coach opens.
3. In the sample coach, click Done and close the coach window.
4. Return to the process instance diagram. The token has moved from the submit
position request activity to the find position candidates activity. This routing
occurred because of the parameter you set in step 1. The Taskssection now
contains the find position candidates task in addition to the submit position
request task.
5. Skip the find position candidates task to complete the process.
1. In the Tasks section, click Find position candidates to open the task
details.
You can now see the details of the Find position candidates task.
2. In the toolbar at the top of the section, click Skip .
3. Click Return to process instance at the top of the Inspector.
In the details section of the Standard HR Open New Position process,
notice that the status is Completed. Click the process definition, and
notice that the token is gone.
6. Take a snapshot of the process application by clicking the icon in the
main toolbar.
7. Name the snapshot Playback One.
8. For the description, type This is a snapshot of the process application up to
Playback One.
9. Click Finish.
The process runs through the expected path. Now that you tested one path in the
Inspector, you can test the other paths.
Test the other paths
You are now ready to test the path in which the GM rejects the new position request
and the path in which the user chooses to fill an existing position, which does not
require GM approval.
• Test the path in which the GM rejects the new position request. Open the
requisition variable and set gmApproval to “Rejected”.
• Test the path in which the user requests for an existing position. Open the
currentPosition variable, set the default value of positionType to “Existing”.
• Test the path in which the GM does not reject or approve the new position
request by the due date. Use to make the request expire.
Run and test all the scenarios that you modeled in the process to ensure that all the
flow paths are correct. You can determine the test scenarios from the number of
decision gateways, events, and timers that are unique to a specific flow.
Summary
You validated the paths of the process and the decision gateways with Playback One.
You also took a snapshot of the process application.
In the next module, you create the user interface.
Hiring Tutorial: Create the user interface
Published on March 11, 2016
In this module, you create the user interface that the hiring manager and the general
manager (GM) use to interact with the process.
A user interface is a set of coaches in one or more human services.
Learning objectives
After you complete the lessons in this module, you will know how to do the following
tasks:
• Plan the user interface
• Create the coach view for the position request data
• Create the coach view for the position data
• Create the coach view for person data
• Create the Create Position Request CSHS client-side human service
• Create the coaches for the Create Position Request CSHS client-side human
service
• Complete the flow for the Create Position Request CSHS human service
• Create the GM Approval CSHS client-side human service
• Conduct playback two
Learn more:
• Hiring tutorial: Complete the flow for the Create Position Request CSHS human
service
• Hiring tutorial: Conduct Playback Two
• Hiring tutorial: Create the coach view for person data
• Hiring tutorial: Create the coach view for position data
• Hiring tutorial: Create the coach view for the position request data
• Hiring tutorial: Create the coaches for the Create Position Request CSHS client-
side human service
• Hiring tutorial: Create the Create Position Request CSHS client-side human
service
• Hiring tutorial: Create the GM Approval CSHS client-side human service
• Hiring Tutorial: Plan the user interface
Hiring Tutorial: Plan the user interface
Published on March 11, 2016
Hiring tutorial > Create the user interface >
In this lesson, you use the process requirements to determine the user interface
elements that you need to create and which ones you can reuse.
At the beginning of the tutorial, you reviewed the process requirements. In this lesson,
you use the process requirements to plan your user interface pages.
In the process requirements, the hiring manager must prepare a position request. In
the first page of the request, the hiring manager enters information that is common to
both a new and existing position. This data includes information about the requisition
and the position that must be filled including its qualifications.
The hiring manager then goes to the next page of the job requisition. If the job
requisition is for a new position, the hiring manager does not need to enter further
data. This page contains the same data as the first page, but it is read only so that the
hiring manager can review it before submitting the request. If the data is incorrect, the
hiring manager goes to the previous page to correct the data and submit the request
again.
If the position request is for an existing position, the hiring manager confirms only the
position data and enters the data of the person who currently holds the position.
The general manager (GM) reviews the request if it is for a new position. All of the
request information is read only. The GM must approve or reject the request. The GM
can also add comments.
Now that you have the pages planned, you can examine them to determine whether
you can reuse parts of the user interface, such as certain business objects. The
following list describes what you can reuse:
• In the requirements, the position type (new or existing) and position title are on
every page. This information is the position data part of the request. The
Position business object contains the information for this part of the user
interface.
• The remaining requisition information displays only when a job requisition is
created or when the hiring manager or GM reviews a new position request. This
information is the job requisition data part of the job requisition. The Requisition
business object contains the information for this part of the user interface.
• For existing positions, the hiring manager also enters data about the person.
This information is the person data part of the request. The Person business
object contains the information for this part of the user interface.
Summary
You analyzed the process requirements to identify the parts of the user interface. You
also identified the elements that can be reused.
In the next lesson, you create the coach views for the position request data.
Hiring tutorial: Create the coach view for the
position request data
Published on March 13, 2016
Hiring tutorial > Create the user interface >
In this lesson, you create the coach view that displays the position request data, such
as the hiring manager, the department, and the starting date.
About this task
This lesson uses the following concepts:
Concept Description
coach view A reusable piece of user interface that users
use to interact with a business object or service. Coach views can
contain other coach views to build a user interface.
control A coach view that is provided in the responsive
coaches toolkit. Controls include basic user interface artifacts,
such as buttons and text fields.
This lesson describes how to create the Requisition CV coach view. The Requisition CV
coach view consists of a panel that provides the title for the form. Inside the panel,
there are controls stacked vertically.
Procedure
1. Make sure that the My Hiring Sample process application is open in Process
Designer.
2. In the library, click the plus sign next to User Interface and select Coach View.
3. Type Requisition CV as the name and click Finish. You can now edit the coach
view that you created.
4. Bind the coach view to the Requisition business object by creating
a Requisition variable and assigning the Requisition business object as its type:
1. Select the Variables tab.
2. Click the plus sign next to Business Data.
3. Type Requisition as the name.
4. For the variable type, click Select and then select
the Requisitionbusiness object.
5. Click the Layout tab and then, from the palette, add a panel to the layout canvas
and change the label to Request data.
6. In the Configuration properties, under Appearance, set Color style to Primary.
Your diagram matches the following image:
7. Drop the following controls onto the Drop additional content here area of the
requisition data panel.
1. Single select
2. Single select
3. Text
4. Integer
8. Edit the properties of the first single select control:
1. In the General properties, change the label of the control to Employment
type.
2. Click Select for the binding. From the list, expand the Requisitionvariable
and then select EmpType.
3. In the Configuration properties, under Items, set the item lookup mode to
Items from Service.
4. For List items service, click New to create a new service that will populate
the selection list.
5. In the dialog that prompts you to create a service flow, enter the name
PopulateEmploymentTypeList and click Finish. The service flow editor
opens.
6. Click the Script Task. In the Properties, under Script, enter this code:
tw.local.results = new tw.object.listOf.String();
tw.local.results[0] = “Full-time”;
tw.local.results[1] = “Part-time”;
tw.local.results[2] = “Contract”;
tw.local.results.listAddSelected(0);
1. Switch to the Overview tab. Under Ajax Access, select Allow calls from all
users.
2. Switch to the Requisition CV coach view’s layout. Click the Employment
Type control and expand the Items list.
3. In the Visibility properties, set the visibility to Required.
Notice that the Employment Type control now has an asterisk.
9. Edit the properties of the second single select control.
Property Value
General > Label Department
General > Binding Requisition.department
Configuration > Items > Item lookup
mode > Items From Service
populateDepartmentList
Service Flow > Service Task > Script
tw.local.results = new
tw.object.listOf.String();
tw.local.results[0] = “Finance”;
tw.local.results[1] = “Marketing”;
tw.local.results[2] = “Product
Development”;
tw.local.results[3] = “Human Resources”;
tw.local.results[4] = “Sales”;
tw.local.results[5] = “Customer Service”;
tw.local.results[6] = “Business Partner
Service”;
tw.local.results[7] = “Business
Strategies”;
tw.local.results[8] = “Software
Engineering”;
tw.local.results.listAddSelected(0);
Property Value
Service Flow > Overview > Ajax Access Allow calls from all users.
Visibility > Visibility Required
10. Edit the properties of the text control:
Property Value
General > Label Hiring manager
General > Binding Requisition.requester
Configuration > Behavior > Placeholder text Enter name
11. Edit the properties of the integer control:
Property Value
General > Label Number of employees
General > Binding Requisition.empNum
Your diagram matches the following image:
12.Save your work.
Summary
You created the Requisition CV coach view.
In the next lesson, you create the coach view for position data.
Hiring tutorial: Create the coach view for
position data
Published on March 13, 2016
Hiring tutorial > Create the user interface >
In this lesson, you create the coach view that displays position data, such as the
position type and title.
This lesson is similar to the previous lesson. It provides the information you need to
construct the coach view but does not provide the detailed steps. For detailed steps,
see Create the coach view for the position request data.
Procedure
1. Create a coach view and name it Position CV.
2. Bind the coach view to business data:
1. Select the Variables tab.
2. Add the Position variable as the business data variable and set its type to
the Positionbusiness object.
3. Add a configuration option and rename it to Requisition. Set its type
to Requisition.
4. Click the Layout tab and then, from the palette, add a Panel to the layout canvas
and rename it to Position data.
5. Drop the following controls onto the Drop additional content here area of the
position data section.
1. Single select
2. Single select
3. Text
4. Date Time Picker
6. Edit the properties of the first single select control.
Property Value
General > Label Position type
General > Binding Position.positionType
Configuration > Items > Item lookup mode Items From Service
Configuration > Items > List items service Populate PositionTypeList
Visibility > Visibility Required
7. Edit the Populate PositionTypeList service flow
Property Value
populatePositionTypeList > Script
tw.local.results = new
tw.object.listOf.String();
tw.local.results[0] = "New";
tw.local.results[1] = "Existing";
tw.local.results.listAddSelected(0);
populatePositionTypeList >
Overview > Ajax Access Allow calls from all users.
8. Edit the properties of the second single select control.
Property Value
General > Label Location
Property Value
General > Binding
Requisition.location
Note: This is the configuration option that
you created earlier to have access to the
requisition data.
Configuration > Items
> Item lookup mode Items From Service
Configuration > Items
> List items service Populate LocationList
Visibility > Visibility Required
9. Edit the Populate LocationList service flow
Property Value
populateLocationList > Script
tw.local.results = new
tw.object.listOf.String();
tw.local.results[0] = "Atlanta";
tw.local.results[1] = "Boston";
tw.local.results[2] = "Chicago";
tw.local.results[3] = "Cincinati";
tw.local.results[4] = "Dallas";
tw.local.results[5] = "Denver";
tw.local.results[6] = "Des Moines";
tw.local.results.listAddSelected(2);
populateLocationList > Overview >
Ajax Access Allow calls from all users.
10.Edit the properties of the text control:
General > Label
Property Value
Title
General > Bindin Position.jobTitle
11.Edit the properties of the date time picker control:
Property Value
General > Label Starting date
General > Binding Requisition.date
Visibility > Visibility Required
12.Your diagram matches the following image:
13.Save your work.
Summary
You created the Position CV coach view.
In the next lesson, you create the coach view for person data.
Hiring tutorial: Create the coach view for
person data
Published on March 13, 2016
Hiring tutorial > Create the user interface >
In this lesson, you create the coach view that displays person data, such as name and
pay level.
This lesson is similar to the previous lesson. It provides the information you need to
construct the coach view but does not provide the detailed steps. For detailed steps,
see Create the coach view for position request data.
Procedure
1. Create a coach view and name it Person CV.
2. Bind the view to business data:
1. Select the Variables tab.
2. Add the Person variable as the business data variable and set its type to
the Personbusiness object.
3. Click the Layout tab and then, from the palette, add a panel to the layout canvas
and rename it to Person data.
4. Drop the following controls onto the Drop additional content here area of
the Person datasection.
1. Text control
2. Text control
3. Text control
4. Text Area control
5. Edit the properties of the first text control:
Property Value
General > Label Given name
Property Value
General > Binding Person.firstName
6. Edit the properties of the second text control:
Property Value
General > Label Family name
General > Binding Person.lastName
7. Edit the properties of the third text control:
Property Value
General > Label Manager
General > Binding Person.supervisor
8. Edit the properties of the text area control:
Property Value
General > Label Comments
General > Binding Person.notes
9. Save your work.
Summary
You created the Person CV coach view.
In the next lesson, you create the Create Position Request CSHS human service.
Hiring tutorial: Create the Create Position
Request CSHS client-side human service
Published on March 14, 2016
Hiring tutorial > Create the user interface >
In this lesson, you create the client-side human service that contains the user interface
that the hiring manager uses to create and submit the position request.
This lesson uses the following concepts:
Concept Description
human
service
A service flow that provides user interfaces for managing process
and case work in web-based applications.
client-side
human
service
A human service that runs in the web browser and can call the
server to obtain data. You use a client-side human service to
implement an interactive task, a dashboard, or a user interface for
a case or process instance that users can use to manage cases or
processes in an application.
Procedure
1. Create the client-side human service for the Submit position request activity:
1. Make sure that the My Hiring Sample process application is open in
Process Designer.
2. In the Standard HR Open New Position process, select the Submit
position request activity. In the Properties, select
the Implementation tab.
3. Create the client-side human service by clicking New in the
Implementation section.
The client-side human service that you create replaces the default human
service.
4. Type Create Position Request CSHS and click Finish. The Create Position
Request CSHS human service opens. In the Variables page, the private
variables of the process are automatically added as input and output
variables for the human service.
2. Add elements to the client-side human service diagram to create its flow:
1. Select the Diagram tab.
2. To create a script to initialize the variables that the human service uses,
drag a client-side script item from the palette onto the diagram.
3. Rename the server script to Initialize output.
4. Select the script item and then add the following code to
its Script properties:
tw.local.requisition = {};
tw.local.requisition.date = new Date(new Date().getTime() +
1000*60*60*24*7);
tw.local.currentPosition = {};
tw.local.currentPosition.replacement = {};
tw.local.requisition.reqNum = "1141";
tw.local.requisition.requester = "Tom Miller";
tw.local.requisition.department = "Finance";
tw.local.requisition.approvalNeeded = false;
tw.local.requisition.location = "Chicago";
tw.local.requisition.empType = "Full-time";
tw.local.currentPosition.jobTitle = "";
tw.local.currentPosition.replacement.lastName = "Smith";
tw.local.currentPosition.replacement.firstName = "Bob";
tw.local.currentPosition.replacement.supervisor = "Ann Fisher";
tw.local.currentPosition.replacement.payLevel = "8";
tw.local.currentPosition.replacement.payType = "Exempt";
tw.local.currentPosition.positionType = "New";
tw.local.currentPosition.replacement.notes = "";
/* Populate lists for selection*/
tw.local.requisition.empTypeList = [];
tw.local.requisition.empTypeList[0] = "Full-time";
tw.local.requisition.empTypeList[1] = "Part-time";
tw.local.requisition.empTypeList[2] = "Contract";
tw.local.requisition.departmentList = [];
tw.local.requisition.departmentList[0] = "Finance";
tw.local.requisition.departmentList[1] = "Marketing";
tw.local.requisition.departmentList[2] = "Product Development";
tw.local.requisition.departmentList[3] = "Human Resources";
tw.local.requisition.departmentList[4] = "Sales";
tw.local.requisition.departmentList[5] = "Customer Service";
tw.local.requisition.departmentList[6] = "Business Partner Service";
tw.local.requisition.departmentList[7] = "Business Strategies";
tw.local.requisition.departmentList[8] = "Software Engineering";
tw.local.requisition.locationList = [];
tw.local.requisition.locationList[0] = "Atlanta";
tw.local.requisition.locationList[1] = "Boston";
tw.local.requisition.locationList[2] = "Chicago";
tw.local.currentPosition.positionTypeList = [];
tw.local.currentPosition.positionTypeList[0] = "New";
tw.local.currentPosition.positionTypeList[1] = "Existing";
When you run the sample, the fields in the requisition form contain this
data.
Tip: If you see warnings, check for typos in the business object
parameters.
5. Rename the coach, which is included in the diagram by default, to Create
position request. Add two more coaches and rename them:
§ Specify existing position
§ Confirm position details
6. Add a decision gateway to the diagram.
7. Rename the decision to Position type?. The implementation for the
decision does not contain any paths. The Process Designer adds these
paths when you connect the decision to other nodes in the diagram.
3. Create the flow for the human service:
1. Select the flow line between the Start event and the Create position
request coach. A blue dot displays at the end of the arrow head. Drag this
blue dot onto a connection point on the Initialize output script. The
connection points display when pointer hovers over the script.
2. In the Initialize output script, hover over a selection point to display a
sequence flow arrow. Drag the arrow to the Create position
request coach. When the coach displays its selection points, drag the
sequence flow onto one of them.
3. Select the flow that exits the Create position request coach and change
it to connect to the Position type decision. This connection has an OK
label.
4. Connect the top selection point of the Position type decision to
the Specify existing position coach. Although you can use any selection
point, use the top selection point for a tidier diagram.
5. Connect the bottom selection point of the Position type decision to
the Confirm position details coach. Having different selection points for
the two paths makes it easier to see the two flows in the diagram.
6. Connect the Specify existing position coach to the Confirm position
details coach.
7. Connect the Confirm position details coach to the End event.
8. Rearrange the elements in the diagram to make it easier to read.
The flow lines that exit from the coaches use the OK button that is provided in
the default coaches.
4. Define the branches for the decision. In the process requirements, the direction
the flow takes depends on whether the position is new or exists. If the position
exists, the hiring manager must provide information about the existing position.
The hiring manager then reviews the job requisition and submits it. To
implement the split paths, you use the decision control.
1. Select the line that flows from the bottom of the Position type decision to
the Confirm position details coach. In the General properties, change its
name to New. Labeling the line helps you identify the branches in the
decision and in the diagram.
2. In the same way, rename the other flow line to Existing. The lines now
have labels.
3. Select the Position type decision and open
its Implementation properties.
4. For the New branch, click the variable icon and select
the currentPosition.positionTypevariable. The first field contains the
variable name.
The tw.local part of the name is the namespace that the system uses to
store values.
5. Because you want the flow to take this line only if the position is new
(or currentPosition.positionType =="New"), set the operation to == and the
second field to “New”. Because currentPosition.positionType is a string,
include the quotation marks to turn the value into a string.
5. Save your work.
Summary
You created a client-side human service to implement the submit job requisition
activity in the process. You created most of its flow.
In the next lesson, you implement the coaches that provide the user interface for the
Create Position Request CSHS client-side human service.
Hiring tutorial: Create the coaches for the
Create Position Request CSHS client-side
human service
Published on March 14, 2016
Hiring tutorial > Create the user interface >
In this lesson, you create the user interface that the hiring manager uses to create a
position request. In the Standard HR Open New Position process, the hiring manager
completes the submit position request activity. To enable the hiring manager to
complete the activity, you create the user interface in IBM® Business Process Manager
by using a number of coach views and the variables of the client-side human service.
This lesson uses the following concept:
Concept Description
coaches The user interfaces for human services.
Procedure
1. In the Create Position Request CSHS client-side human service:
1. Select the Coaches tab and then select the Create position
request coach. The coach opens to display the canvas. Because this
coach was created as a default, it already contains a number of controls
that are based on the variables of the human service and an OK button.
2. Delete all of the controls except for the OK button.
3. Drop a panel onto the layout area above the OK button.
4. Rename the panel to Position Request. In the Configuration properties,
change the color to Primary.
2. Create the form part of the coach:
1. In the panel, add a Horizontal Layout control.
2. From the palette, add the Requisition CV coach view to the horizontal
layout. When you create a coach view, it is added to the palette so that
you can add it to other coach views.
3. Add the Position CV coach view beside the Requisition CV in the
horizontal layout.
4. Bind the Requisition CV to Requisition and bind the Position CV to Position.
5. Select the Requisition CV and open its Positioning properties. Set
the Width to 49%. Repeat for the Position CV.
6. Set the Requisition configuration option for Position CV
1. Select Position CV
2. Click Properties > Configuration.
3. Click the purple icon beside Requisition
4. Click the Select button and select the requisition business
object.<img
src="/community/images/31/2016/03/gs_tutorial_requisition2.gif
" alt="The requisition configuration option"
7. Select the OK button. Relabel the button to Next.
3. Save your work.
4. Build the Confirm position details coach. This coach is where the hiring
manager reviews the position request.
1. In this coach, you want to view the details in the Requisition CV and
Position CV as read-only. However, the coach views have fields that have
a visibility of required. If you don’t want the fields to be marked required,
create duplicate coaches.
1. In the library, right click User Interfaces to view the coach views.
2. Right click Requisition CV and click Duplicate. A duplicate coach,
Requisition CV 2, is created.<img
src="/community/images/31/2016/03/gs_tutorial_activity_duplic
ate_CV.gif" alt="The Duplicate option"
3. Similarly, create a duplicate coach Position CV 2.
4. Edit Requisition CV 2 and Position CV 2 and change the visibility of
the following fields from required to Same as parent:
Position CV 2 > Position
Position CV 2 > Starting date
Requisition CV 2 > Employment type
Requisition CV 2 > Department type
2. Select the Confirm position details coach. In the Select a
Template window, start with the default coach and click OK.
3. Drop a panel onto the canvas. Relabel it to Confirm Position Request and
change the color style to Primary.
4. Add an Output Text control to the Confirm Position Request panel.
Change the label to Requisition number and bind it to requisition.reqNum.
5. Drop a Horizontal Layout into the Confirm Position Request panel. In
its Visibilityproperties, change its visibility to Read only.
6. Add the Requisition CV 2 and Position CV 2 to the horizontal layout. Set
their width to 49%each.
7. Bind Requisition CV 2 to Requisition and bind Position CV 2 to Position.
8. Set the Requisition configuration option for Position CV 2.
9. Drop a Horizontal Layout below the Confirm Position Request panel.
Change its horizontal alignment to right.
10.Drag the existing OK button into this section and then add another
button. Rename the left button to Back and the right button to Submit.
5. Save your work.
6. Build the Specify Existing Position coach. This coach is where the hiring
manager enters information about an existing position and the person currently
filling that position.
1. Select the Specify Existing Position coach. In the Select a
Template window, start with the default coach and click OK.
2. Drop a Panel onto the canvas. Relabel it to Existing Position and change
the color style to Primary.
3. Drop a Horizontal Layout into the panel.
4. Drop the Person CV into the horizontal layout and bind it
to currentPosition.replacement.
5. Add another panel beside the Person CV coach view and relabel it to
Position. In its Visibility properties, change its visibility to Read only.
6. Add a Text control to the section and relabel it to Position type. Bind it
to currentPosition.positionType.
7. Add another Text control to the section and relabel it to Title. Bind it
to currentPosition.jobTitle.
8. Drop a horizontal layout below the Existing Position section. Change its
horizontal alignment to left.
9. Drag the existing OK button into this section and then add another
button. Rename the left button to Back and the right button to Next.
Change the color style of the buttons to Primary
7. Save your work.
Summary
You created the user interface that the hiring manager uses to create a position
request.
In the next lesson, you will create the complete the flow for the Create Position
Request CSHS client-side human service.
Hiring tutorial: Complete the flow for the
Create Position Request CSHS human service
Published on March 14, 2016
Hiring tutorial > Create the user interface >
In this lesson, you enable the hiring manager to return to the editable job requisition
form by adding the flows for the two Back buttons.
In the Create Position Request CSHS human service, there are three coaches. When
you connected the coaches in the human service flow, their default OK buttons
provided the boundary event to move the flow to the next step. As part of creating the
user interface in the coaches, you renamed the OK buttons to Next or Submit. The
human service diagram depicts this change.
When a user clicks Next in the Create position request coach, the flow leaves that
coach and enters the decision. The flow then enters one of the other two coaches. The
Specify existing position coach contains two buttons. If the user clicks Next, the flow
goes to the Confirm position details coach. If the user clicks Back, nothing happens. In
this lesson, you create a boundary event that causes this second flow to go back to the
Create position request coach.
Procedure
1. In the Create Position Request CSHS human service, select the Diagram tab.
2. Make the following connections:
o The Specify existing position coach to the Create position
request coach
o The Confirm position details coach to the Create position
request coach
Both coaches have two coach views that fire boundary events: the Next
button and the Back button. The Next button already has a binding for its
boundary event. The Back button does not have a binding so the Back
button is used to create the flow.
Tip:If the lines going back to the Create position request coach are not
correct:
1. Select a flow line.
2. In the General properties the End state binding property shows the
button that is bound to the flow line. Click Select.
3. The coach opens. Click the button to which you want to bind the
flow line.
The diagram now has flow lines that return the flow to the Create position
request coach when the user clicks Back.
3. Save your work.
Summary
You have flow lines that return hiring managers to the editable requisition form when
they click Back in the coaches.
In the next lesson, you create the GM Approval CSHS client-side human service.
Hiring tutorial: Create the GM Approval CSHS
client-side human service
Published on March 14, 2016
Hiring tutorial > Create the user interface >
In this lesson, you create the client-side human service that the general manager (GM)
uses to review the job request. The human service includes one coach that provides
the user interface. The GM can then approve or reject the request.
Procedure
1. Create the human service for the Approve or reject job requisition activity.
1. Make sure that the My Hiring Sample process application is open in
Process Designer.
2. In the Standard HR Open New Position process, select the Review new
position requestactivity. In the Properties, select
the Implementation tab.
3. Create the client-side human service by clicking New in
the Implementation section. The client-side human service that you
create replaces the default human service.
4. Type GM Approval CSHS and click Finish. The GM Approval CSHS human
service opens. In the Variables page, the private variables of the process
are automatically added as input and output variables for the human
service.
2. Open the diagram for the human service and relabel the coach to Review new
position request. The flow provided as a default works for the purpose of this
tutorial. The diagram for the human service looks like the following image:
3. Build the Review new position request coach by deleting the existing content
and then adding the sections and controls. If you need help, follow the steps
in Create the coaches for the Create Position Request CSHS. For property
settings, consult the table later in this step.
The final layout of the coach looks like this:
The following table contains information about the controls and coach views
and the changes to their properties that you need to make:
Label
Type of
control Binding
Configuration
options
New
Position
Approval Panel
Configuration
> Appearance
> Color style
= Primary
Visibility >
Visibility
= Read only
Horizontal
Layout
Horizontal
Layout
Request
data
Requisition
CV 2 requisition
Positioning >
Width = 49%
Position
Position CV
2 currentPosition
Positioning >
Width = 49%
Approval Panel Approval
Approved?
Radio
Button
Group requisition.gmApproval
Configuration
> Items >
Item lookup
mode = Items
From Static
List
Configuration
> Items >
Label
Type of
control Binding
Configuration
options
Static list
name = true,
value
= Approved
Configuration
> Items >
Static list
name = false,
value
= Rejected
Comments Text area requisition.gmComment
Horizontal
Layout 2
Horizontal
Layout
Submit Button
Configuration
> Appearance
> Horizontal
alignment
= Right
Configuration
> Appearance
> Color style
= Primary
4. Save your work.
You created the client-side human service that the GM uses to review information on a
new position. The GM then approves or rejects the request.
In the next lesson, you conduct Playback Two.
Hiring tutorial: Conduct Playback Two
Published on March 14, 2016
Hiring tutorial > Create the user interface >
In this lesson, you conduct Playback Two by checking that the individual client-side
human services are working as expected and that the coaches display correctly, and
you take a snapshot.
In the playback, you check the following paths:
• The hiring manager requests a replacement for an existing position.
• The hiring manager creates a request for a new position and the general
manager (GM) approves the request for a new position.
• The hiring manager creates a request for a new position and GM rejects the
request for a new position.
For the tutorial, the Find position candidates activity in the process will use the default
responsive human service. See the Hiring sample for an example of how you could
implement a client-side human service for this activity.
Procedure
1. Make sure that the Standard HR Open New Position process is open on the
Definition page.
2. To run an instance of the process, click the icon.
3. In the Inspector, check the first path. Click the icon. The Process Portal
opens in another browser instance.
4. In the Tasks section of Process Portal, click the Submit position request step.
Claim the task. The Submit position request coach opens.
5. Enter values into the fields. For this path, select Existing for the Position type.
6. Click Next.
7. In the Specify existing position coach, confirm or provide data for the fields
and then click Next.
8. In the Confirm position details coach, confirm that the fields contain the same
data that you entered in the previous coaches. The fields should be read-only
however.
9. Click Submit. The Process Portal reopens.
10.Click Find position candidates step. The Find position candidates coach opens.
This coach is using a default UI because the tutorial has not created one.
11.Click Done.
12.Return to the Process Designer.
13.In the same way, test the second path, select New for the Position
type and Approved for GM Approval.
14.In the same way, test the third path, select New for the Position
type and Rejected for GM Approval.
15.Take a snapshot of the process application:
1. In Process Designer, click the icon in the main toolbar.
2. Name the snapshot Playback Two.
3. For the description, type This is a snapshot of the process application up
to Playback Two.
4. Click Finish.
Summary
You conducted Playback Two by checking that the human services are working as
expected and that the coaches display correctly. You also took a snapshot of the
process application.
In the next module, you provide validation to ensure the user provides data in required
fields.
Hiring Tutorial: Validating coach data
Published on March 11, 2016
In this module, you check that the data users enter into a coach is valid before
proceeding in the process flow.
In the tutorial, there are a number of fields that have the required decorator. This
module shows how to ensure that users provide a value in these fields and test the
requirement.
Learning objectives
After you complete the lessons in this module, you will understand the concepts and
know how to validate a coach.
• Add validation to the create position request coach
• Playback three
Learn more:
• Hiring Tutorial: Add validation to the create position request coach
• Hiring Tutorial: Playback Three
Hiring Tutorial: Add validation to the create
position request coach
Published on March 11, 2016
In this lesson, you create a validation service to ensure that the Create Requisition
Coach contains valid data when the user clicks Next.
Before you begin
This lesson builds on the artifacts that are created in the and modules.
Tutorials.pdf
Tutorials.pdf
Tutorials.pdf
Tutorials.pdf
Tutorials.pdf
Tutorials.pdf

More Related Content

Similar to Tutorials.pdf

eExpense Training
eExpense TrainingeExpense Training
eExpense Training
Tracy_Lynn
 
Cognos TM1 Assignments
Cognos TM1 Assignments Cognos TM1 Assignments
Cognos TM1 Assignments
rameshkp054
 
manual starsellersworld.com dynamic pricing: setting up rulesets
manual starsellersworld.com dynamic pricing: setting up rulesetsmanual starsellersworld.com dynamic pricing: setting up rulesets
manual starsellersworld.com dynamic pricing: setting up rulesets
Chris Reinhardt
 
tally ppt.pptx
tally ppt.pptxtally ppt.pptx
tally ppt.pptx
sourav mathur
 
Open erp to tally interface
Open erp to tally interfaceOpen erp to tally interface
Open erp to tally interfaceMillenniumsoft
 
How to design a report with fine report reporting tool
How to design a report with  fine report reporting toolHow to design a report with  fine report reporting tool
How to design a report with fine report reporting tool
FineReport Reporting Tool
 
ECON|i Software Training
ECON|i Software TrainingECON|i Software Training
ECON|i Software Training
EconomyModule
 
Advanced Tally with Goods and Service Tax .pptx
Advanced Tally with Goods and Service Tax .pptxAdvanced Tally with Goods and Service Tax .pptx
Advanced Tally with Goods and Service Tax .pptx
Ranjith495940
 
New utility for preparation of TDS correction statements
New utility for preparation of TDS correction statements New utility for preparation of TDS correction statements
New utility for preparation of TDS correction statements
Rupam Mishra
 
Purchase Invoice
Purchase InvoicePurchase Invoice
Purchase Invoice
FabGreen Technologies
 
3 meghdoot user manual1
3 meghdoot user manual13 meghdoot user manual1
3 meghdoot user manual1Tanuj Hans
 
Instructions_Bingham_17ed 2016 Revised.docTable of Content.docx
Instructions_Bingham_17ed 2016 Revised.docTable of Content.docxInstructions_Bingham_17ed 2016 Revised.docTable of Content.docx
Instructions_Bingham_17ed 2016 Revised.docTable of Content.docx
normanibarber20063
 
Sales Invoice
Sales InvoiceSales Invoice
Sales Invoice
FabGreen Technologies
 
Gesture software entry help ppt
Gesture software entry help pptGesture software entry help ppt
Gesture software entry help ppt
Souvik Roy Choudhury
 
Cookbook Oracle SOA Business Rules
Cookbook Oracle SOA Business RulesCookbook Oracle SOA Business Rules
Cookbook Oracle SOA Business Rules
Emiel Paasschens
 
AccuTrainers Mastering QuickBooks Lesson15 Presentation
AccuTrainers Mastering QuickBooks Lesson15 PresentationAccuTrainers Mastering QuickBooks Lesson15 Presentation
AccuTrainers Mastering QuickBooks Lesson15 Presentation
DennisHenry
 

Similar to Tutorials.pdf (20)

eExpense Training
eExpense TrainingeExpense Training
eExpense Training
 
Tally
TallyTally
Tally
 
Cognos TM1 Assignments
Cognos TM1 Assignments Cognos TM1 Assignments
Cognos TM1 Assignments
 
Thedashboard20111018 (1)
Thedashboard20111018 (1)Thedashboard20111018 (1)
Thedashboard20111018 (1)
 
manual starsellersworld.com dynamic pricing: setting up rulesets
manual starsellersworld.com dynamic pricing: setting up rulesetsmanual starsellersworld.com dynamic pricing: setting up rulesets
manual starsellersworld.com dynamic pricing: setting up rulesets
 
tally ppt.pptx
tally ppt.pptxtally ppt.pptx
tally ppt.pptx
 
Open erp to tally interface
Open erp to tally interfaceOpen erp to tally interface
Open erp to tally interface
 
How to design a report with fine report reporting tool
How to design a report with  fine report reporting toolHow to design a report with  fine report reporting tool
How to design a report with fine report reporting tool
 
ECON|i Software Training
ECON|i Software TrainingECON|i Software Training
ECON|i Software Training
 
Advanced Tally with Goods and Service Tax .pptx
Advanced Tally with Goods and Service Tax .pptxAdvanced Tally with Goods and Service Tax .pptx
Advanced Tally with Goods and Service Tax .pptx
 
New utility for preparation of TDS correction statements
New utility for preparation of TDS correction statements New utility for preparation of TDS correction statements
New utility for preparation of TDS correction statements
 
Purchase Invoice
Purchase InvoicePurchase Invoice
Purchase Invoice
 
3 meghdoot user manual1
3 meghdoot user manual13 meghdoot user manual1
3 meghdoot user manual1
 
Instructions_Bingham_17ed 2016 Revised.docTable of Content.docx
Instructions_Bingham_17ed 2016 Revised.docTable of Content.docxInstructions_Bingham_17ed 2016 Revised.docTable of Content.docx
Instructions_Bingham_17ed 2016 Revised.docTable of Content.docx
 
Sales Invoice
Sales InvoiceSales Invoice
Sales Invoice
 
Gesture software entry help ppt
Gesture software entry help pptGesture software entry help ppt
Gesture software entry help ppt
 
Tutorials2
Tutorials2Tutorials2
Tutorials2
 
Cookbook Oracle SOA Business Rules
Cookbook Oracle SOA Business RulesCookbook Oracle SOA Business Rules
Cookbook Oracle SOA Business Rules
 
Creating an Invoice in a Spreadsheet_Cosocius Proof of Concept
Creating an Invoice in a Spreadsheet_Cosocius Proof of ConceptCreating an Invoice in a Spreadsheet_Cosocius Proof of Concept
Creating an Invoice in a Spreadsheet_Cosocius Proof of Concept
 
AccuTrainers Mastering QuickBooks Lesson15 Presentation
AccuTrainers Mastering QuickBooks Lesson15 PresentationAccuTrainers Mastering QuickBooks Lesson15 Presentation
AccuTrainers Mastering QuickBooks Lesson15 Presentation
 

Recently uploaded

Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Globus
 
Using IESVE for Room Loads Analysis - Australia & New Zealand
Using IESVE for Room Loads Analysis - Australia & New ZealandUsing IESVE for Room Loads Analysis - Australia & New Zealand
Using IESVE for Room Loads Analysis - Australia & New Zealand
IES VE
 
How Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptxHow Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptx
wottaspaceseo
 
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Globus
 
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Globus
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
Adele Miller
 
2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx
Georgi Kodinov
 
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
Fermin Galan
 
GlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote sessionGlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote session
Globus
 
SOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBrokerSOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar
 
Accelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with PlatformlessAccelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with Platformless
WSO2
 
A Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of PassageA Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of Passage
Philip Schwarz
 
Understanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSageUnderstanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSage
Globus
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
rickgrimesss22
 
Enhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdf
Enhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdfEnhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdf
Enhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdf
Jay Das
 
Into the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdfInto the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdf
Ortus Solutions, Corp
 
RISE with SAP and Journey to the Intelligent Enterprise
RISE with SAP and Journey to the Intelligent EnterpriseRISE with SAP and Journey to the Intelligent Enterprise
RISE with SAP and Journey to the Intelligent Enterprise
Srikant77
 
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisProviding Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Globus
 
A Comprehensive Look at Generative AI in Retail App Testing.pdf
A Comprehensive Look at Generative AI in Retail App Testing.pdfA Comprehensive Look at Generative AI in Retail App Testing.pdf
A Comprehensive Look at Generative AI in Retail App Testing.pdf
kalichargn70th171
 

Recently uploaded (20)

Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
 
Using IESVE for Room Loads Analysis - Australia & New Zealand
Using IESVE for Room Loads Analysis - Australia & New ZealandUsing IESVE for Room Loads Analysis - Australia & New Zealand
Using IESVE for Room Loads Analysis - Australia & New Zealand
 
How Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptxHow Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptx
 
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
 
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
 
2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx
 
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
 
GlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote sessionGlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote session
 
SOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBrokerSOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBroker
 
Accelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with PlatformlessAccelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with Platformless
 
A Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of PassageA Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of Passage
 
Understanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSageUnderstanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSage
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
 
Enhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdf
Enhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdfEnhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdf
Enhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdf
 
Into the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdfInto the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdf
 
RISE with SAP and Journey to the Intelligent Enterprise
RISE with SAP and Journey to the Intelligent EnterpriseRISE with SAP and Journey to the Intelligent Enterprise
RISE with SAP and Journey to the Intelligent Enterprise
 
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisProviding Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
 
A Comprehensive Look at Generative AI in Retail App Testing.pdf
A Comprehensive Look at Generative AI in Retail App Testing.pdfA Comprehensive Look at Generative AI in Retail App Testing.pdf
A Comprehensive Look at Generative AI in Retail App Testing.pdf
 

Tutorials.pdf

  • 1. Tips & Tricks Published on May 15, 2018 This is a new section added in 2018. There are some excellent guidance on using Case capability as well as Process Tutorials Published on March 25, 2015 We have a number of tutorials available to get you started with IBM Business Automation Workflow or the previous IBM BPM offering. Hiring tutorial In this tutorial, depending upon whether you have IBM BPM or IBM Business Automation workflow you use the tools in IBM® Process Designer or IBM Workflow Designer to re- create the Hiring Sample process application that is in IBM Process Center. Interactive Installation and Configuration
  • 2. Guide Not specifically a tutorial, but this guide gets you all the info you need to get your on- premise installation of IBM BPM up and running. Learn more: • A tutorial on decisions in process applications: action rules and decision tables • Hiring Tutorial A tutorial on decisions in process applications: action rules and decision tables Published on July 10, 2018 IBM Business Automation Workflow V18.0.0.1 offers decision tasks which can be implemented as action rules and decision tables. This scenario shows how to create and test action rules (Business Action Language (BAL)) and decision tables in a decision task. The scenario presents a sample business process that is used to correctly determine the value added tax (VAT) for different kinds of goods in different countries. Before you begin To perform this task you must be in the web based IBM Business Automation Workflow Process Designer.
  • 3. About this task We look at the following scenario, a company sells various types of goods. It is selling in various European countries. When such a company sends out an order, the bill needs to be aligned with local regulations, for example, it needs to contain the payable amount with tax, and without tax. Depending on the country, the value added tax (VAT) depends on the type of the goods. In Germany, value added tax for books is just 7 percent, while for other goods it is 19%. Belgium, for example, has a VAT on food of 6% and 21% on everything else. The company needs to compute the value added tax depending on the country and the product type. There is already a process in place that computes the payable amount with and without tax. We add action rules for the different types of product and per country. Thereafter, we use a decision table for the same computation. The process has a simple interface to take as input how many of an item were bought to which price per item. The country of the purchase is set via a dropdown list. The first screen shot below shows the used variables, the second screen shot shows the process itself. The system service “Compute VAT” either uses action rules or a decision table to compute the VAT. MyComputeVAT is built to gain experience in constructing action rules and decision tables. Later compare MyComputeVAT with the original Compute VAT.
  • 4. Import the Pricing – Start.twx file which you can download here. 1. Open the IBM Business Automation Workflow Process Center. 2. On the right hand side click on Import Process App. 3. Select the Pricing – Start.twx file and Open. 4. In the Import Process App window click on Import. The Pricing process opens in the designer view. Procedure To add a decision service to a process, complete these steps: 1. Open the web based IBM Business Automation Workflow Process Designer.
  • 5. 2. From the left hand navigator choose Services, click on the + sign, choose Service flow, give it a name like “MyComputeVAT” and click Finish. A diagram with connected start and end nodes is shown. 3. The right hand navigator shows different options. Click on the down arrow of the top rectangle to see the choices for tasks and click and hold on Decision to drag a decision task between the start and end node. 4. Click on the decision and give it the name Action Rules. 5. Wire the start node to the decision task and from there to the end node. o Click on the existing connection and then press delete. Then wire from the Start node to Action Rules and from there to End. 6. Define the input and output variables of the decision task o Click on Variables and then the + sign for Input to add an input variable. o Give it the name product and choose as Variable type Product(predefined type). o Add another input variable and name it country of type String. o Add an output variable and give it the name taxrate of type Decimal. o Press CTRL-s to save your work. 7. Define the decision task o Click on Decisions at the top and then on Action Rules in the left hand navigator. The decision action rule editor opens and shows an if <condition> then <action> rule and a message that the rule is incomplete. o Click on <condition> and a box with choices opens, choose country, press the spacebar and then CTRL-spacebar; another choice box opens, choose is <an object >. CTRL-spacebar again and choose <string>, enter Germany between the quotes. Add a space after the last quote and press CTRL-spacebar again and choose and <condition>. Again add a space and press CTRL- spacebar and choose any of the following conditions is true :. Press CTRL-spacebar again and choose -<condition>. Press CTRL- spacebar again and choose the type of <a product>, CTRL- spacebar choose product, CTRL-spacebar choose is <an object>, CTRL-spacebar choose BOOK. o Now add a second condition where the type of product is FOOD.
  • 6. o Click on <action> and choose set <variable>, choose taxrate, next choose to <variable value> and finally choose <number> and set it to 7. o Press CTRL-s to save your work. The choice of the product type works because the type ProductType has already been defined as a Simple type of type Selection when the Pricing – Start.twx file was imported. So far we have achieved that there is a rule that determines the VAT correctly when books or food is bought. In order to set the VAT to 19% in all other cases we need an additional rule: if country is “Germany” and none of the following conditions are true : – the type of product is BOOK – the type of product is FOOD then set taxrate to 19 ; An additional action rule can be added by clicking on the Add action rule rule icon, the top icon on the right hand side of the existing action rule. Use the up and down arrows to determine the order in which the rules are checked. Use the description above to create the additional action rule for all the cases where neither book nor food is bought. Press CTRL-s to save your work. Your MyComputeVAT action rules decision should look as follows: For countries like Sweden which have three different VAT rates, for books (6%), food (12%), and everything else (25%) three action rules are needed.
  • 7. Decision tables offer a different way to model these rules which is explored now. Add another decision to the existing service flow. 1. If not still open, navigate to the MyComputeVAT service flow where we added the decision that was modeled as action rules. Click on Diagram at the top to open the flow editor. 2. Add a second decision onto the canvas by dragging a decision task from the right hand navigator onto it. Give it the name Decision Table. Wire it to the end node. Your service now looks as follows: 3. Click on Decision Table and then on Open Decision in the Implementation tab at the bottom of the page. The decision editor opens with an empty if-then rule. 4. Click on the X on the right hand navigator to delete that rule. 5. Mouse over the icons at the top on the right hand side and click on add a decision table. A table with two columns opens, a condition column, C0, and an action column, A0. 6. Right click on the C0 and choose Insert column -> Condition after. A second condition column, C2, is shown. Rename the columns as follows 1. Double click on the label C0 and enter the text Country. 2. Double click on the label C2 and enter the text Product type. 3. Double click on the label A0 and enter the text Value-added tax rate (%). 7. Next the values that can occur in a column need to be defined. 1. Right click on the column label of the first column “Country”, choose Define column. The Define Condition Column editor opens, click in the white space and hit CTRL-spacebar. A box opens with the available options. Choose the variable country press CTRL- spacebaragain and choose is <an object>:. Click on Define at the bottom of the editor window, the column content is now defined. 2. Right click on the label of the second column “Product type”. Choose Define column. In the open editor window click on the white
  • 8. space and then hit CTRL-spacebar. From the options choose the type of <a product>. Click on <a product> and choose the variable product. Add a space and hit CTRL- spacebar again and choose is <an object>. Then click on <an object> and choose <a product type>. When you are done click on Define at the bottom of the editor window and the column is defined. 3. Right click on the label of the action column and choose Define column. Define the column as “set taxrate to <a number>”. Click Define at the bottom of the editor and then CTRL-s to save your work. 8. The tax rate per object type and country can now be defined. 1. Click and hold the first cell in the Country column and move the mouse down such that you mark the first three rows of the Countrycolumn. 2. Right click the marked rows and choose Group from the options. 3. Double click the first cell of the Country column and enter Germany. Click anywhere outside the cells. All cells now have the same value. 4. Double click into the first cell in the Product type column and choose Book from the drop down menu. 5. Double click into the first cell of the Value-added tax rate (%) column and enter the number 7. 6. In the second row Germany is already entered, so add the values, FOOD, and 7 into the respective columns. 7. In the third row right click in the second cell and choose Set to Otherwise from the options menu. 8. In the cell of the third row for the Value-added tax rate (%) enter 19. 9. Press CTRL-s to save your work. You can check the rules for every row of the table by hovering the mouse over the row number. It is very easy to add new countries and their rules for the tax rate depending on different product types. Your MyComputeVAT decision table should look as follows:
  • 9. Run your implementation In the process designer navigate to the Processes on the left hand side and click on Print Bill. In the Definition tab of the process click on the Compute VAT system service. In the properties section at the bottom click on the Implementation tab and select as implementation the MyComputeVAT service. The resulting VAT is the input to the ShowBill human service that computes the prices with and without tax via a script and then displays them to the user. As the readily made process Pricing – Start.twx was imported with the Compute VAT which has just been replaced with the MyComputeVAT service the data mapping has to be adjusted. 1. In the properties section at the bottom click on Data Mapping. 1. To the right of the empty boxes click on the Variable Picker and map product to product, country to country, and taxrate to vat. 2. Click CTRL-s to save your choices. In order to try out the implementation navigate to the processes on the left hand navigator of the Web Process Designer and click on the Print Bill process. At the top of the page there is a small arrow in a circle pointing to the right that shows Run when the mouse is hovering over it. Click it to run your process. 1. On the right hand side new elements open, Details, Tasks, Locations, Data. Details and Locations are already expanded. The process shows a token at the position of the Purchase an item task.
  • 10. 2. In the locations area on the right hand side click on the start arrow for the Purchase an item task. 3. The input window opens and you can enter your information. When done click the ok button at the bottom of the page. Remember that from the offered countries you can only choose Germany as there are no rules for the other countries (yet). 4. The input window shows the message “The service has finished”. Close that window. 5. The process now shows a token at the Show Bill position. Sometimes it shows a token at the MyComputeVAT node. If that happens, click on the start arrow on the right hand side in the locations area and the token will move further on to the Show Bill task. 6. In the locations area on the right hand side click on the start arrow for the Show Bill task. 7. The Show Bill window opens and shows the appropriate prices with and without VAT. 8. Click the ok button at the bottom of the window and then close the window to finish the process. Go to the Services tab on the left hand navigator again and click on MyComputeVAT. Click on Diagram and change the endpoint of the arrow from Start to Decision Table instead of to Action Rules, save your change and run the process again. When you are done with testing your decisions you can try out the original Compute VAT Service. It contains more countries and rules for adding VAT onto different goods. In order to try out more countries than the four offered in the drop down box you will
  • 11. have to add them to the drop down box as shown in this screen shot. 1. In the left hand navigator click on User Interface and then on Enter order UI. Click on the Coaches tab at the top and then on Coach at the left. 2. Click on Country and in the properties section at the bottom on Configuration. 3. From the three elements Behavior, Items, and Appearance, click on Items. Scroll down a bit and click on the twisty left of Static list. 4. The list of elements that are shown in the drop down box is shown and you can add more countries right there. When done save your work by pressing CTRL- s and continue with your tests. Decisions can also be used to model the conditions of an exclusive gateway which determine the subsequent path through a process or service flow (see also using a decision service in an exclusive gateway). The use of decisions for modeling the conditions for an inclusive gateway is restricted to process flows. Depending on the task it may be easier to use action rules or decision tables. Offering both allows for maximum flexibility. Furthermore, you can export the decisions as a project file for use in IBM Operational Decision Manager (ODM)(see importing a project).
  • 12. Hiring Tutorial Published on March 9, 2016 In this tutorial, you use the tools in IBM® Process Designer to re-create the Hiring Sample process application that is in IBM Process Center. The Hiring Sample process application that you create using the tutorial is similar to the Hiring Sample process application that is already in Process Center. Most of the differences are minor, but there are some important differences: • The tutorial process application does not have the qualifications section and its business object. The sample demonstrates how to use tabs to present the qualifications. • The tutorial process application does not have Find Candidates client-side human service. This tutorial gets you started using Process Designer tool by having you iteratively model and test an instance of a hiring process application. As you complete the lessons, you learn about Process Designer so that you can build your own processes. Note: This tutorial is a learning exercise that describes one way of modeling, implementing, and testing a process. Depending on your company’s processes and needs, other techniques might be more appropriate. The tutorial consists of the following lessons: • Process requirements • Model the process o Create the process application o Create the process o Model teams o Add activities and events o Add sequence flows o Add event gateways o Add a timer intermediate event o Create process variables o Conduct playback zero • Implement the process o Create business objects o Implement the timer intermediate event
  • 13. o Implement gateways o Conduct playback one • Create the user interface o Plan the user interface o Create the coach view for the position request data o Create the coach view for position data o Create the coach view for person data o Create the coach view for qualifications o Create the Create Position Request CSHS client-side human service o Create the coaches for the Create Position Request CSHS o Complete the flow for the Create Position Request CSHS o Create the GM Approval CSHS client-side human service o Conduct playback two • Validating coach data o Add validation to the create position request coach o Conduct playback three Each lesson in this tutorial builds on the previous lesson so that you can work with the tutorial from beginning to end. Next > Learn more: • Hiring Tutorial: Create the user interface • Hiring tutorial: Implement the process • Hiring tutorial: Model the process • Hiring tutorial: Process requirements • Hiring Tutorial: Validating coach data Hiring tutorial: Process requirements Published on March 11, 2016 Hiring tutorial > The process that you are going to create is called the Standard HR Open New Position process. This process covers how to fill a job position by submitting, approving, and routing a job requisition to the Human Resources (HR) department to search for position candidates.
  • 14. The Standard HR Open New Position process includes the following requirements: • The hiring manager must either fill a new position or replace an employee who is departing from an existing position. • The hiring manager must determine the position requirements and prepare a position request to be submitted to the HR department. The hiring manager provides the following information in the request: o Name of the hiring manager o Title of the position o Name of the department that requires the position o Whether the request is for a new or existing position o Whether the job is part-time, full-time, or contract o When the position starts o Where the position is located For an existing position, the hiring manager must provide the following additional information about the person who will be replaced: o Given name o Family name o The person’s manager or supervisor o Comments regarding the person • The hiring manager reviews and approves the position request before the hiring procedure continues: o If the request is to fill an existing position, the hiring manager sends the request directly to HR. When HR receives the request, they search for candidates. o If the request is to fill a new position, the hiring manager sends the request to the general manager (GM) for approval. • When HR receives the position request, they process it. The tutorial does not provide an implementation of this processing. • The GM must evaluate the new position request and either approve or reject it. o If the GM approves the request, it then goes to HR so that HR can find candidates. o If the GM rejects the request, the hiring manager is notified and the process ends. o If the GM does not handle the request by the due date, the GM is notified.
  • 15. Hiring tutorial: Model the process Published on March 10, 2016 Hiring tutorial > You follow the process requirements to model the Standard HR Open New Position process and then test the current state of the process in Playback Zero. During Playback Zero, you discover new requirements and review the process with the business stakeholders. Learning objectives After you complete the lessons in this part of the tutorial, you will understand the concepts and know how to do the following tasks: • Create a process application. • Create a process. • Model teams by adding lanes and assigning teams to the process. • Add activities, events, and gateways to the process. • Add sequence flows to connect the activities, events, and gateways. • Add a timer intermediate event to the process. • Create process variables. • Run Playback Zero. Learn more: • Hiring tutorial: Add a timer intermediate event • Hiring tutorial: Add activities and events • Hiring tutorial: Add event gateways • Hiring tutorial: Add sequence flows • Hiring tutorial: Conduct Playback Zero • Hiring tutorial: Create process variables • Hiring Tutorial: Create the process • Hiring tutorial: Create the process application • Hiring Tutorial: Model teams
  • 16. Hiring tutorial: Create the process application Published on March 11, 2016 Hiring tutorial > Model the process To contain the Standard HR Open New Position process, you create the process application. The process application is stored in the Process Center repository, which you can access from Process Designer. This lesson uses the following concepts: Concept Description process application A container in the Process Center repository that stores process models and supporting implementations. A process application typically includes processes, the services that implement activities and integrate with other systems, and other items required to run the processes. Each process application can include one or more tracks. Process Center A central repository for all project assets that are created in Process Designer. When multiple Process Designer clients connect to Process Center, users can share items, such as processes and services. Users can also see changes that other users make as they happen. Process Designer An authoring tool that you use to model and implement your business processes and demonstrate a process design and flow during development. Procedure 1. Using the Process Center URL, open the Process Center. The Process Apps page displays the list of process applications that are available in Process Center. The Hiring Sample (HSS) process application is the one that is shipped with the product. You are creating your own process application for this tutorial.
  • 17. 2. Click the Create New Process App link on the right panel of Process Center. Enter the following information: o Process App Name: My Hiring Sample o Acronym: MHS o Description: Contains the process for filling a position. 3. Click Create. The process application is now in your list of process apps. 4. To open the My Hiring Sample process application, click Open in Designer. A Process Designer page opens, displaying the Process App Settings.
  • 18. The highlighted blue area in the library shows the process application that you are editing. Notice that this page gives you the opportunity to edit the process application settings, such as the name, acronym, and description. For now, leave the settings as they are and continue modeling the process. Summary In this lesson, you learned how to create a process application. In the next lesson, you create a process.
  • 19. Hiring Tutorial: Create the process Published on March 11, 2016 Hiring tutorial > Model the process In this lesson, you create a process for the Standard HR Open New Position process. After you name the process, you model it by defining lanes and teams and then adding flow objects such as activities, events, and gateways. This lesson uses the following concept: Concept Description Process A reusable process diagram or model that defines what is common to all runtime instances of that process model. Procedure 1. Make sure that the My Hiring Sample (MHS) process application is open in the Process Designer. 2. In the library, click the plus sign next to Processes and select Process. 3. Type Standard HR Open New Position and click Finish. The process is created and the process diagram opens showing the following
  • 20. modeling constructs: This image shows the initial Process Designer interface when you create a process. Descriptions are provided in the table that follows the image. 1. Main toolbar – Provides access to Designer, Inspector, and Process Center. The main toolbar is also where you go to save all open editors, take a snapshot, and view web help. 2. Library – Provides access to the library items for the current process application. 3. Main canvas – The area in which you can graphically model your process and the other artifacts that you create in the process application. Each process automatically includes a start event and an end event. Two default lanes are included for team and system tasks. 4. Palette – Provides elements that you can use to model your process. 5. Properties – Provides the properties of any element that you select in the main canvas.
  • 21. 4. Open the Overview page, add a description. Click Select for Expose to start and then select All Users. 5. Save your changes. If you open the process app settings, the process is now listed as an exposed item. Summary In this lesson, you learned how to create a process In the next lesson, you model the process by adding activities and events.
  • 22. Hiring tutorial: Add activities and events Published on March 11, 2016 Hiring tutorial > Model the process In this lesson, you add activities and events to the lanes in the Standard HR Open New Position process to establish the correct process flow. When you add activities and events, follow these guidelines: • Ensure that activities represent logical units of work that are assigned to a participant of a process. • Create multiple concurrent workflow steps that are assigned to one responsible role into one activity or task. • Use verb-noun statements to label activities, such as “Submit position request”. • Apply a top-down, left-to-right flow to your process so that it is easier to read. This lesson uses the following concepts: Concept Description event Controls flow objects for a process model. An event is something that occurs during a process. start event Triggers the initiation of the process through a manual or automatic input. There are four types of start events: none, message, ECM content, and document. In a process, a none start event is created automatically and only one instance is allowed in the model. To start a process when an external signal is received, add a message start event to the process. end event Occurs in a process when a final decision from all activities or a partial set of activities is reached. There are four types of end events: none, message, error, and terminate. You can have multiple standard end events. activity A single work task that a participant, whether the participant is a person or a system, accomplishes from beginning
  • 23. Concept Description to end during a process. There are many types of activities: For example, user task, system task, script, and decision task. user task An activity is implemented as a user task when a user or human starts or completes the activity. For example, the Submit position request activity is a user task. system task An activity is implemented as a system task when an automated system or service completes an activity. For example, the Notify hiring manager activity is a system task. script task An activity that uses JavaScript to access and manipulate data. decision task An activity with a decision or condition in a business rule to determine which process implementation is started. Procedure 1. Make sure that the Standard HR Open New Position process is open and the Definition tab is selected. 2. An Inline User Task is created when you create the process. Select this task and delete it.
  • 24. 3. Click the Team lane and, in the Properties tab, change the name to Hiring Manager. 4. Set the Color property to Green. 5. Drag a User Task activity from the palette into the Hiring Manager lane. Double click the activity and type Submit position request. 6. Change the color of the activity to Blue and click Edit under Documentation to add a description of the activity. 7. Add the remaining lanes and activities using the information in the following table: Lane Activities and color Events Name: Hiring Manager Color: Green Name: Submit position request Type: User Task Color: Blue Start
  • 25. Lane Activities and color Events Name: General Manager Type: User Task Color: Blue Name: Review new position request Color: Purple Name: Human Resources Type: User Task Color: Default Name: Find position candidates Type: User Task Color: Yellow Name: System Color: Purple Name: Notify hiring manager Type: User Task Color: Orange End Note: While you should add a description to each element in your process app to help users understand it, the tutorial will skip adding them for brevity. 8. Select the Notify hiring manager activity and then in the properties, click Implementation. For the activity type, select Script. 9. Move the End event to the right of the Notify hiring manager activity. Your diagram matches the following image:
  • 26. 10.Save your work. Summary You added activities and events to the Standard HR Open New Position process. In the next lesson, you model teams.
  • 27. Hiring Tutorial: Model teams Published on March 11, 2016 Hiring tutorial > Model the process In this lesson, you model the teams that participate in the Standard HR Open New Position process. Teams that are assigned to activities and lanes determine which users can work on tasks in Process Portal. If a team is assigned to a lane, members of that team can work on all the tasks that are part of that lane. Based on the process requirements, you must create a team for each of the identified user roles: hiring manager, general manager, and human resources manager. To model the teams, you add lanes and assign teams to the process. Each lane contains the activities that the associated team or system completes. You also define the teams by specifying the cost per hour, members, and managers. When you create a process, Process Designer generates two lanes: Team and System. For the Standard HR Open New Position process, you must have the following lanes and teams: Lane Team title Hiring Manager HiringManagers General Manager GeneralManagers Human Resources Human Resources System System The system lane contains the activities that IBM® Business Process Manager completes. This lesson uses the following concepts:
  • 28. Concept Description lanes Provide context for a process model. Each lane contains a series of activities that are assigned to a specific team or system. teams Contain the members who complete the runtime activities that are modeled in each lane. members User groups or individual users that are part of a team. managers The team whose members can use the Team Performance dashboard in Process Portal to manage this team and its tasks. Procedure 1. Make sure that the Standard HR Open New Position process is open and the Definition tab is selected. 2. Click the Human Resources lane. 3. Create the Human Resources Managers team: 1. In the Behavior section of the team properties, for Default Lane Teamclick New. 2. Type Human Resources for the name and click Finish. 3. In the Members section, click the add icon for User Groups and then select tw_allusers. Note: The group tw_allusers is created automatically when you install IBM Business Process Manager. All registered users are part of tw_allusers.
  • 29. 4. In the Managers section, click Select and select Managers of All Users. 5. Click Finish Editing. 4. To return to the Standard HR Open New Position process, click Human Resources and then select the process from the list. The list contains the artifacts that you have opened to view or edit. You are now back in the main canvas of the Standard HR Open New Position process. 5. Add the remaining teams using the information in the following table: Lane Team Members Managers Human Resources Human Resources tw_allusers Managers of All Users General Manager GeneralManagers tw_allusers Managers of All Users Hiring Manager HiringManagers tw_allusers Managers of All Users Summary You defined the teams and assigned them to lanes. In the next lesson, you use sequence flows to connect the activities and events to establish the process flow.
  • 30. Hiring tutorial: Add sequence flows Published on March 11, 2016 Hiring tutorial > Model the process In this lesson, you use sequence flows to connect the activities and events to establish the process flow in the Standard HR Open New Position process. At this stage of the process model, you are setting the expected flow of the process from the start to the end events. Later in the tutorial, you will create conditional paths Note: If more than one sequence flow leaves the same flow object, the first one that you add is the default sequence flow. Subsequent sequence flows that originate from the same object are followed only under certain conditions. For an example, see the sequence flows that originate from the Submit job requisition activity. Typically, you add process flow controls, which are known as gateways, when there is more than one flow out of an activity. In this lesson, you sequence only the activities and events. In the next lesson, you add the gateways. This lesson introduces the following concepts: Concept Description normal sequence flow A plain arrow that indicates that the process progresses to the next step in the process as soon as the first step is completed. default sequence flow A plain arrow with a back slash at the beginning of the flow line. A default sequence flow is required and is automatically created when there is a conditional sequence flow. The default sequence flow indicates a processing path to follow when none of the conditions on the conditional sequence flows are true. The default sequence flow ensures that there is at least one processing path (the default path) for the business process to follow.
  • 31. Procedure 1. Make sure that the Standard HR Open New Position process is open and the Definition tab is selected. 2. In the process diagram, move your mouse to the Start event. The event displays its connection points. 3. Hover over a selection point to display a sequence flow arrow. Drag the arrow to the Submit position request activity. When the activity displays its selection points, drag the sequence flow onto one of them. 4. Connect the Submit position request activity to the Find position candidates activity and then connect the Submit position request activity to the Review new position request activity. Notice that the flow line that goes to the Find position candidates activity is marked as the default flow line. o If more than one sequence flow leaves the same flow object, the first one that you add is the default sequence flow. o If your sequence is incorrect and you have the wrong default line, delete all the sequence flow lines from the activity and redo them.
  • 32. 5. Connect the Find position candidates activity to the End event. 6. Connect the Review new position request activity to the Find position candidates activity and to the Notify hiring manager activity. 7. Connect the Notify hiring manager activity to the End event. 8. Save your work. Summary You established the process flow in the Standard HR Open New Position process. In the next lesson, you add gateways to model points in the process execution.
  • 33. Hiring tutorial: Add event gateways Published on March 11, 2016 Hiring tutorial > Model the process In this lesson, you create two event gateways to model points in the Standard HR Open New Position process execution. In the previous lesson, you added a sequence flow line for each potential path from an activity. Now you add gateways to control the divergence and convergence of the sequence flow lines and to determine the branching of the paths that the process can take. An event gateway represents a branching point in a process where only one of several flows can be followed, depending on the events that occur. For the Standard HR Open New Position process, you need the following gateways: • New position?: If the position request is to fill an existing position, the request goes directly from the hiring manager to HR. If the request is to fill a new position, the requisition goes to the general manager (GM) for approval. • GM approved?: The GM evaluates the request for a new position and either approves or rejects it. If the GM approves the new position, the request goes to human resources, who can then search for position candidates. If the GM rejects the new position request, the hiring manager is notified and the process ends. This lesson uses the following concept: Concept Description gateway Controls the flow of a process, such as the divergence and convergence of sequence lines, determining, branching, and merging the flows that a process can take. There are two gateway modes: split and join. A gateway can split an incoming flow into multiple outgoing flows, or it can join incoming flows into one outgoing flow. There are two types of gateways: exclusive and parallel. This tutorial uses exclusive gateways.
  • 34. Procedure 1. Make sure that the Standard HR Open New Position process is open and the Definition tab is selected. 2. Drag a gateway from the palette to the right of the Submit position request activity on the process diagram. In the General properties, rename it to New position?. 3. In the General properties, verify that Exclusive Gateway is the gateway type. Tip: You can drag any activity or event to move it around in the diagram. 4. Connect the New position? gateway:
  • 35. 1. Click the sequence flow between the Submit position request and the Find position candidates activities and press the Delete key (or right-click and select Delete). 2. Delete the sequence flow between the Submit position request and Review new position request activities. 3. Connect the Submit position request activity to the New position?gateway. 4. Connect the New position? gateway to the top of the Find position candidates activity and then to the top of the Review new position request activity. 5. Name the sequence flow lines: 1. Click the sequence flow between the New position? gateway and the Find position candidates activity.
  • 36. 2. In the Properties tab, type No approval needed –> proceed to HR as the name. 3. Click the sequence flow between New position? and Review new position request. 4. In the Properties tab, type Yes – GM approval required as the name. 6. Drag a gateway from the palette to the right of the Review new position request activity on the process diagram. Type GM approved? in the text box that displays over the gateway. 7. Connect the GM approved? gateway: 1. Delete the sequence flow between the Review new position requestand the Find position candidates activities. 2. Delete the sequence flow between the Review new position requestand Notify hiring manager activities. 3. Connect the Review new position request activity to the GM approved? gateway. 4. Connect the GM approved? gateway to the Notify hiring manageractivity and the Find position candidates activity. 5. Name the sequence flow lines to Rejected and Approved –> proceed to HR. Your process model matches the following image:
  • 37. 8. Save your work. Summary You added event gateways to the Standard HR Open New Position process. In the next lesson, you add a timer intermediate event.
  • 38. Hiring tutorial: Add a timer intermediate event Published on March 11, 2016 Hiring tutorial > Model the process In this lesson, you model an escalation path with an attached timer intermediate event to satisfy process requirements for the Standard HR Open New Position process. Based on the process requirements, the General Manager (GM) evaluates the submitted job requisition and either approves it or rejects it. If the job requisition is not handled by the due date, the timer intermediate event is triggered and the system sends an escalation notice to the GM. In this lesson, you add the timer intermediate event, and in the Implement the process module, you implement the timer intermediate event. This lesson uses the following concepts: Concept Description Intermediate event Occurs between a start event and end event in the process. There are three types of intermediate events: timer, message, and error. Use the intermediate event to indicate a point in a service when you want Process Designer to capture the run time data for reporting purposes. Intermediate events can be in a sequence flow or attached to the boundary of an activity. Message (receiving) event Used to model a message that is received while a process is running. Message (sending) event Used to model a message that is sent while a process is running. ECM Content event Used to model an ECM Content message that is received.
  • 39. Concept Description Timer intermediate event Use a timer intermediate event to specify a time before or after an activity occurs. Timer intermediate events, which you use to model escalation paths or delays in the process, can occur either between activities or attached to an activity. Error boundary event Used to identify exceptions that occur while an activity runs and handle those exceptions by using an error handler activity, subprocess, or flow. Procedure 1. Make sure that the Standard HR Open New Position process is open and the Definition tab is selected. 2. Drag a Timer intermediate event from the palette onto the lower-left boundary of the Review new position request activity and type Overdue approval as the name. 3. In the Properties tab, click Implementation. In the Boundary Event Typesection, clear Interrupt activity. Keep Repeatable selected. Note:
  • 40. o If the Interrupt activity is selected, the attached activity is closed when the timer event is triggered. For this tutorial, you clear Interrupt activity because the GM completes the activity upon receiving the escalation notice. o If Repeatable is not selected, the escalation notice is sent only once. When the timer is set to repeatable, an escalation notice is sent each time that the specified interval elapses until the activity is completed. You set the other properties during implementation. 4. Add the Send escalation activity: o Drag a System Task activity from the palette to the System lane to the left of the Notify hiring manager activity. o Name the activity Send escalation notice. o Connect the Overdue approval timer intermediate event to the Send escalation notice activity. 5. Name the sequence flow line: 1. Click the sequence flow between the Overdue approval timer intermediate event and Send escalation notice activity. 2. In the General properties, type Missed due date as the name and select Name visible box.
  • 41. 3. In the Type section, for Connection type select Exception Path. 6. Add an End to end the exception path. Drag an End event from the palette onto the canvas to the right of Send escalation notice and change its name to End escalation and its event type to None. 7. Connect the Send escalation notice activity to the End escalation event. Tip: You can complete the escalation path by building an underlying service to implement the Send escalation notice activity. Typically, this activity is implemented as a send and chase design pattern that is modeled in a separate process. Your diagram looks like the following image: 8. Save your work. Summary You added an attached timer event to the Standard HR Open New Position process.
  • 42. Hiring tutorial: Create process variables Published on March 11, 2016 Hiring tutorial > Model the process In this lesson, you create the process variables to implement the gateway logic. The process uses private variables because these variables are used only by this process and possibly passed to linked processes. When you implement the process, you associate these variables with business objects that you will create. When you create variables, follow these guidelines: • Create variable names that begin with a lowercase letter. • Capitalize the first letter of a variable type. • If the variable name is only one word, spell that word in all lowercase letters. • If the variable name consists of more than one word, capitalize the first letter of each subsequent word. • Remember that variable names are case sensitive. This lesson uses the following concepts: Concept Description variables Data that provides the business context to a running process. Using variables, the business process passes data from one step to another. Private, input, and output are kinds of variables. private variables Values that the current process or service requires. input variables Values that pass into the current process or service. output variables Values that are passed from a process to a parent process or service.
  • 43. Procedure 1. Click the Variables tab in the main canvas of the Standard HR Open New Position process. 2. For a private variable, click its Add button and in the Details section that opens, type currentPosition for the name. 3. In the same way, add the requisition private variable. As a placeholder for now, leave their types as String. You will update the types after you have created the appropriate business objects. Your private variables match the following image: 4. Save your work. 5. Click the Definition tab in the main canvas of the Standard HR Open New Position process to return to the model. Summary You added process variables to the Standard HR Open New Position process.
  • 44. In the next lesson, you conduct Playback Zero. Hiring tutorial: Conduct Playback Zero Published on March 11, 2016 Hiring tutorial > Model the process In this lesson, you learn about playbacks, conduct Playback Zero by reviewing the process model with the stakeholders and taking a snapshot of the process. During a playback for business stakeholders, users, and development, the process model is examined at a designated development phase to establish process goals, achieve consensus, collaboratively improve the process model, and, ultimately, approve the process model. By using playbacks, you can develop a process application iteratively. Playback Zero is an important milestone in a Business Process Manager project- development lifecycle because it is during Playback Zero that a business process is identified and analyzed as a good candidate for a business process management project. During Playback Zero, the business process is defined, modeled, refined, and reviewed through discussion, discovery, and process analysis. After you complete a playback, take a snapshot of the process. Snapshots record the state of library items in a process application at a specific time. You can use a snapshot to return to a previous state in the project; therefore, take snapshots often. You can also compare two snapshots to identify changes. When you finish your project, you create a final snapshot that you deploy. This lesson introduces the following concepts: Concept Description Playback The act of demonstrating or running a process. A development team can use the Inspector in Process Designer to demonstrate the current process design and implementation in playback sessions. Playback
  • 45. Concept Description sessions help capture important information from different stakeholders in a process, such as management, users, and business analysts. Snapshot Records of the state of library items in a process application or track of a process at a specific time. You can create snapshots in the Process Center console or in the Process Designer. You install, export, and archive snapshots in the Process Center console. Procedure 1. Make sure that the Standard HR Open New Position process is open and the Definition tab is selected. 2. Review the process model by checking that your process model matches the following image: 3. Step through the process to simulate a playback, explaining your process model to a colleague.
  • 46. 4. Add new process requirements to the Standard HR Open New Position process. For this tutorial, no additional requirements go into the process. The process model is now ready for implementation. 5. Create a snapshot of your process application: 1. Click the icon in the main toolbar. 2. Select Create a new snapshot. 3. Type Playback Zero as the snapshot name. 4. For the description, type This is a snapshot of the process application up to Playback zero. 5. Click Finish. You can view the snapshot by opening Process Center and selecting the process application. Summary You reviewed the process model with playback zero and took a snapshot of the process application. In the next module, you implement the process.
  • 47. Hiring tutorial: Implement the process Published on March 11, 2016 Hiring tutorial > In this module, you implement the Standard HR Open New Position process that was validated in Playback Zero. After you complete the lessons in this module, you will understand the concepts and know how to do the following tasks: • Create business objects . • Implement timer intermediate events. • Implement gateways. • Conduct Playback One. < Previous | Next > Learn more: • Hiring tutorial: Conduct Playback One • Hiring tutorial: Create business objects • Hiring tutorial: Implement gateways • Hiring tutorial: Implement the timer intermediate event Hiring tutorial: Create business objects Published on March 11, 2016 Hiring tutorial > Implement the process > In this lesson, you create custom business objects to organize your process-specific data for the Standard HR Open New Position process. Business objects represent the business data that is relevant to the process. For each business object, you define parameters to specify the data structure. A parameter is assigned a variable type that can be a simple type or a business object. When you create the user interface, you bind elements of the user interface to the parameters of these business objects.
  • 48. When you create business objects, follow these guidelines: • Start business object names with an uppercase letter. • If the name of the business object consists of more than one word, capitalize the first letter of each word, for example NewPerson. • Remember that the names of business objects are case sensitive. • Add documentation details to business objects and parameters to clarify their use to other users. These details display in the context-sensitive help windows when someone selects the business objects for use with variables. This lesson uses the following concepts: Concept Description business objects A variable that represents business data that is relevant in the context of a process. Procedure 1. Create a Person business object: 1. In the library, hover over Data and then click the icon. Select Business Object. 2. Type Person for the business object name and click Finish. 3. In the Parameters section, click the add button. 4. Type lastName for the parameter name and keep the variable type as String. 5. Use the following table to create the parameters for the business object: Parameter Variable Type lastName String firstName String supervisor String startDate Date Tip: To change the variable type, click Select next to Variable Type to select the Date variable type.
  • 49. Parameter Variable Type payLevel String payType String notes String 6. Save your work. 2. Create a Position business object. Use the following table to create the parameters for the business object: The tutorial uses this variable to store the position types that that the hiring manager can select in the coach. Parameter Variable Type positionType String positionTypeList String (List) Tip: Select the List check box. replacement Person Tip: Click Select for the Variable Type and then click Personfrom the list. This is the business object that you created in the previous step. jobTitle String iId String Save your work. 3. Create the Requisition business object. Use the following table to create the parameters for the business object: Parameter Variable Type reqNum String requester String empType String
  • 50. Parameter Variable Type empTypeList String (List) empNum Integer approvalNeeded Boolean date Date department String departmentList String (List) location String locationList String (List) gmApproval Boolean gmComments String instanceId String 4. Save your work. 5. Open the Standard HR Open New Position process. When you modeled the process, you created variables to model the decision gateway logic and left their types as String. Now, change the type of these variables to the types of the business objects that you created. 1. In the main canvas of the Standard HR Open New Position process, click the Variables tab. 2. Select the currentPosition private variable and then change its variable type from String to Position.
  • 51. 3. Enable Has default. The properties now have default values. 4. Change the variable type of the requisition private variable from String to Requisition. 5. Enable Has default. 6. Save your work. 7. Click the Definition tab to return to the Standard HR Open New Position process diagram. Summary You created business objects and then updated the process variables to used these business objects as their type. In the next lesson, you implement the timer intermediate event.
  • 52. Hiring tutorial: Implement the timer intermediate event Published on March 11, 2016 Hiring tutorial > Implement the process > In this lesson, you implement the timer intermediate event that you modeled in the Standard HR Open New Position process. When you implement the timer intermediate event that you attached to the boundary of the Approve or reject requisition activity, you can set the following details: 1. Trigger on – Specifies when the timer intermediate event starts. 2. Before or After difference – Specifies the amount of time that is allowed to pass after the due date before the timer is activated. Procedure 1. Make sure that the Standard HR Open New Position process is open and the Definition tab is selected. 2. Click the timer intermediate event that is attached to the Review position request activity. 3. Open the Implementation properties. 4. In the Event Properties section, specify the following values: o Trigger on – After due date. This selection causes the event to trigger after the due date for the activity. o Before or after difference – 1 and Days. This selection causes the event to trigger one day after the due date. Note: When you select to run the timer event repeatedly, make sure that you set the Before or after difference to at least 1 minute. When the timer is set to Repeatable and the before or after interval is 0, it causes high CPU load because the escalation notices are sent continuously, without an interval, until the activity completes.
  • 53. 5. Save your work. Summary You implemented the timer intermediate event that was modeled in the Standard HR Open New Position process. In the next lesson, you implement the gateways.
  • 54. Hiring tutorial: Implement gateways Published on March 11, 2016 Hiring tutorial > Implement the process > In this lesson, you implement the exclusive gateways, new position and GM approved, that you modeled in the Standard HR Open New Position process. When you specify the implementation for a gateway, you define conditions that control whether a path is followed during the running process. Procedure 1. Make sure that the Standard HR Open New Position process is open and the Definition tab is selected. 2. Implement the New position gateway: 1. Click the New position gateway. 2. Open the Implementation properties for the gateway. The implementation provides a number path expressions that are checked in order from top to bottom. The last path is the default path, which the flow takes if none of the expressions apply. In this tutorial, the default flow is No approval needed — > proceed to HR. 3. Build the expression for the Yes – GM approval required path. For the first field, click the Select a variable icon. 4. In the window, expand currentPosition and select positionType. 5. In the next field that contains the expression type, change its value to ==. 6. In the last field, type “New”. Note: You must include quotation marks because the positionType variable is a string.
  • 55. The implementation matches the following image: 3. Save your work. 4. Implement the GM approved gateway: Click the GM approved gateway and open the Implementation properties for the gateway. Create the expression for the Approved –> proceed to HR path: Field Value First tw.local.requisition.gmApproval Expression type == Last true 5. The implementation matches the following image: 6. Save your work. Summary You implemented the gateways that were modeled in the Standard HR Open New Position process. In the next lesson, you conduct Playback One.
  • 56. Hiring tutorial: Conduct Playback One Published on March 11, 2016 Hiring tutorial > Implement the process > In this lesson, you conduct Playback One by validating the different paths in the process and taking a snapshot of the process. In Playback One, you validate the process as it is defined in Playback Zero and demonstrate changes to the business stakeholders, users, and development. During this playback, you uncover errors in the process flow or in the logic that is used to evaluate the data. In this lesson, you validate the following paths in the Inspector: • The hiring manager submits a job requisition to fill a new position. • After the job is submitted, the job requisition is routed to the general manager (GM) for approval. • The GM does not complete the task on time. • The GM approves the requisition and it is routed to HR. • The hiring manager submits a requisition to fill an existing position. • After the job is submitted, the requisition is routed to HR. This lesson introduces the following concepts: Concept Description Inspector A tool in Process Designer that is integral to an iterative approach to process development. Using the Inspector, developers can run processes and services on the Process Center server or remote runtime process servers. You can also step through and debug a process instance in the Inspector. process instance A specific instance of a process. For example, when you run a process, Business Process Manager creates a default name for the process instance. This name is visible to business users in Process Portal, allowing them to distinguish between different instances of a process as they complete their work.
  • 57. Concept Description task A step or activity in a process. token A marker that progresses through a process instance and indicates which element is running. A process instance can generate several tokens. A token can take only one path. In the Inspector, a balloon indicates a token. snapshot A record of the state of library items in a process application or track at a specific point in time. You can create snapshots in the Process Center console or in the Process Designer. You install, export, and archive snapshots by using the Process Center console. Start the process instance 1. Make sure that the Standard HR Open New Position process is open on the Definition page. 2. To run an instance of the process, click the icon. The Inspector opens. It shows the process with a token at the submit position request activity. The instance details panel displays information about the running instance the tasks created by the instance, the current location of the token, the process data, and a set of controls to control the process flow.
  • 58. Test the path for filling a new position You are now ready to test the path in which the user chooses to fill a new position, which requires GM approval. 1. To run the path, you must enter data. 1. Expand the Data section and expand the currentPosition variable.
  • 59. 2. For positionType parameter, enter the value “New”, including the quotation marks. 3. Similarly, expand the requisition variable and set gmApproval to true. Note: You could start the process with a script activity in the System lane to initialize your data. Because this sample does not have a script yet, you enter mock data to run Playback One and validate the process flow. 2. Expand the Tasks section and click the Submit position request task. A sample coach opens.
  • 60. 3. In the sample coach, click Done and close the coach window. 4. Return to the process instance diagram. The token has moved from the submit position request activity to the find position candidates activity. This routing occurred because of the parameter you set in step 1. The Taskssection now contains the find position candidates task in addition to the submit position request task. 5. Skip the find position candidates task to complete the process. 1. In the Tasks section, click Find position candidates to open the task details.
  • 61. You can now see the details of the Find position candidates task. 2. In the toolbar at the top of the section, click Skip .
  • 62. 3. Click Return to process instance at the top of the Inspector. In the details section of the Standard HR Open New Position process, notice that the status is Completed. Click the process definition, and notice that the token is gone. 6. Take a snapshot of the process application by clicking the icon in the main toolbar. 7. Name the snapshot Playback One. 8. For the description, type This is a snapshot of the process application up to Playback One. 9. Click Finish. The process runs through the expected path. Now that you tested one path in the Inspector, you can test the other paths.
  • 63. Test the other paths You are now ready to test the path in which the GM rejects the new position request and the path in which the user chooses to fill an existing position, which does not require GM approval. • Test the path in which the GM rejects the new position request. Open the requisition variable and set gmApproval to “Rejected”. • Test the path in which the user requests for an existing position. Open the currentPosition variable, set the default value of positionType to “Existing”. • Test the path in which the GM does not reject or approve the new position request by the due date. Use to make the request expire. Run and test all the scenarios that you modeled in the process to ensure that all the flow paths are correct. You can determine the test scenarios from the number of decision gateways, events, and timers that are unique to a specific flow. Summary You validated the paths of the process and the decision gateways with Playback One. You also took a snapshot of the process application. In the next module, you create the user interface.
  • 64. Hiring Tutorial: Create the user interface Published on March 11, 2016 In this module, you create the user interface that the hiring manager and the general manager (GM) use to interact with the process. A user interface is a set of coaches in one or more human services. Learning objectives After you complete the lessons in this module, you will know how to do the following tasks: • Plan the user interface • Create the coach view for the position request data • Create the coach view for the position data • Create the coach view for person data • Create the Create Position Request CSHS client-side human service • Create the coaches for the Create Position Request CSHS client-side human service • Complete the flow for the Create Position Request CSHS human service • Create the GM Approval CSHS client-side human service • Conduct playback two Learn more: • Hiring tutorial: Complete the flow for the Create Position Request CSHS human service • Hiring tutorial: Conduct Playback Two • Hiring tutorial: Create the coach view for person data • Hiring tutorial: Create the coach view for position data • Hiring tutorial: Create the coach view for the position request data • Hiring tutorial: Create the coaches for the Create Position Request CSHS client- side human service • Hiring tutorial: Create the Create Position Request CSHS client-side human service • Hiring tutorial: Create the GM Approval CSHS client-side human service • Hiring Tutorial: Plan the user interface
  • 65. Hiring Tutorial: Plan the user interface Published on March 11, 2016 Hiring tutorial > Create the user interface > In this lesson, you use the process requirements to determine the user interface elements that you need to create and which ones you can reuse. At the beginning of the tutorial, you reviewed the process requirements. In this lesson, you use the process requirements to plan your user interface pages. In the process requirements, the hiring manager must prepare a position request. In the first page of the request, the hiring manager enters information that is common to both a new and existing position. This data includes information about the requisition and the position that must be filled including its qualifications. The hiring manager then goes to the next page of the job requisition. If the job requisition is for a new position, the hiring manager does not need to enter further data. This page contains the same data as the first page, but it is read only so that the hiring manager can review it before submitting the request. If the data is incorrect, the hiring manager goes to the previous page to correct the data and submit the request
  • 66. again. If the position request is for an existing position, the hiring manager confirms only the position data and enters the data of the person who currently holds the position. The general manager (GM) reviews the request if it is for a new position. All of the request information is read only. The GM must approve or reject the request. The GM
  • 67. can also add comments. Now that you have the pages planned, you can examine them to determine whether you can reuse parts of the user interface, such as certain business objects. The following list describes what you can reuse: • In the requirements, the position type (new or existing) and position title are on every page. This information is the position data part of the request. The Position business object contains the information for this part of the user interface. • The remaining requisition information displays only when a job requisition is created or when the hiring manager or GM reviews a new position request. This information is the job requisition data part of the job requisition. The Requisition business object contains the information for this part of the user interface. • For existing positions, the hiring manager also enters data about the person. This information is the person data part of the request. The Person business object contains the information for this part of the user interface. Summary You analyzed the process requirements to identify the parts of the user interface. You also identified the elements that can be reused. In the next lesson, you create the coach views for the position request data.
  • 68. Hiring tutorial: Create the coach view for the position request data Published on March 13, 2016 Hiring tutorial > Create the user interface > In this lesson, you create the coach view that displays the position request data, such as the hiring manager, the department, and the starting date. About this task This lesson uses the following concepts: Concept Description coach view A reusable piece of user interface that users use to interact with a business object or service. Coach views can contain other coach views to build a user interface. control A coach view that is provided in the responsive coaches toolkit. Controls include basic user interface artifacts, such as buttons and text fields. This lesson describes how to create the Requisition CV coach view. The Requisition CV coach view consists of a panel that provides the title for the form. Inside the panel, there are controls stacked vertically. Procedure 1. Make sure that the My Hiring Sample process application is open in Process Designer.
  • 69. 2. In the library, click the plus sign next to User Interface and select Coach View. 3. Type Requisition CV as the name and click Finish. You can now edit the coach view that you created. 4. Bind the coach view to the Requisition business object by creating a Requisition variable and assigning the Requisition business object as its type: 1. Select the Variables tab. 2. Click the plus sign next to Business Data. 3. Type Requisition as the name. 4. For the variable type, click Select and then select the Requisitionbusiness object. 5. Click the Layout tab and then, from the palette, add a panel to the layout canvas and change the label to Request data.
  • 70. 6. In the Configuration properties, under Appearance, set Color style to Primary. Your diagram matches the following image: 7. Drop the following controls onto the Drop additional content here area of the requisition data panel. 1. Single select 2. Single select 3. Text 4. Integer 8. Edit the properties of the first single select control: 1. In the General properties, change the label of the control to Employment type. 2. Click Select for the binding. From the list, expand the Requisitionvariable and then select EmpType. 3. In the Configuration properties, under Items, set the item lookup mode to Items from Service. 4. For List items service, click New to create a new service that will populate the selection list. 5. In the dialog that prompts you to create a service flow, enter the name PopulateEmploymentTypeList and click Finish. The service flow editor
  • 71. opens. 6. Click the Script Task. In the Properties, under Script, enter this code: tw.local.results = new tw.object.listOf.String(); tw.local.results[0] = “Full-time”; tw.local.results[1] = “Part-time”; tw.local.results[2] = “Contract”; tw.local.results.listAddSelected(0); 1. Switch to the Overview tab. Under Ajax Access, select Allow calls from all users. 2. Switch to the Requisition CV coach view’s layout. Click the Employment Type control and expand the Items list. 3. In the Visibility properties, set the visibility to Required.
  • 72. Notice that the Employment Type control now has an asterisk. 9. Edit the properties of the second single select control. Property Value General > Label Department General > Binding Requisition.department Configuration > Items > Item lookup mode > Items From Service populateDepartmentList Service Flow > Service Task > Script tw.local.results = new tw.object.listOf.String(); tw.local.results[0] = “Finance”; tw.local.results[1] = “Marketing”; tw.local.results[2] = “Product Development”; tw.local.results[3] = “Human Resources”; tw.local.results[4] = “Sales”; tw.local.results[5] = “Customer Service”; tw.local.results[6] = “Business Partner Service”; tw.local.results[7] = “Business Strategies”; tw.local.results[8] = “Software Engineering”; tw.local.results.listAddSelected(0);
  • 73. Property Value Service Flow > Overview > Ajax Access Allow calls from all users. Visibility > Visibility Required 10. Edit the properties of the text control: Property Value General > Label Hiring manager General > Binding Requisition.requester Configuration > Behavior > Placeholder text Enter name 11. Edit the properties of the integer control: Property Value General > Label Number of employees General > Binding Requisition.empNum
  • 74. Your diagram matches the following image: 12.Save your work. Summary You created the Requisition CV coach view. In the next lesson, you create the coach view for position data.
  • 75. Hiring tutorial: Create the coach view for position data Published on March 13, 2016 Hiring tutorial > Create the user interface > In this lesson, you create the coach view that displays position data, such as the position type and title. This lesson is similar to the previous lesson. It provides the information you need to construct the coach view but does not provide the detailed steps. For detailed steps, see Create the coach view for the position request data. Procedure 1. Create a coach view and name it Position CV. 2. Bind the coach view to business data: 1. Select the Variables tab. 2. Add the Position variable as the business data variable and set its type to the Positionbusiness object. 3. Add a configuration option and rename it to Requisition. Set its type to Requisition. 4. Click the Layout tab and then, from the palette, add a Panel to the layout canvas and rename it to Position data. 5. Drop the following controls onto the Drop additional content here area of the position data section. 1. Single select 2. Single select
  • 76. 3. Text 4. Date Time Picker 6. Edit the properties of the first single select control. Property Value General > Label Position type General > Binding Position.positionType Configuration > Items > Item lookup mode Items From Service Configuration > Items > List items service Populate PositionTypeList Visibility > Visibility Required 7. Edit the Populate PositionTypeList service flow Property Value populatePositionTypeList > Script tw.local.results = new tw.object.listOf.String(); tw.local.results[0] = "New"; tw.local.results[1] = "Existing"; tw.local.results.listAddSelected(0); populatePositionTypeList > Overview > Ajax Access Allow calls from all users. 8. Edit the properties of the second single select control. Property Value General > Label Location
  • 77. Property Value General > Binding Requisition.location Note: This is the configuration option that you created earlier to have access to the requisition data. Configuration > Items > Item lookup mode Items From Service Configuration > Items > List items service Populate LocationList Visibility > Visibility Required 9. Edit the Populate LocationList service flow Property Value populateLocationList > Script tw.local.results = new tw.object.listOf.String(); tw.local.results[0] = "Atlanta"; tw.local.results[1] = "Boston"; tw.local.results[2] = "Chicago"; tw.local.results[3] = "Cincinati"; tw.local.results[4] = "Dallas"; tw.local.results[5] = "Denver"; tw.local.results[6] = "Des Moines"; tw.local.results.listAddSelected(2); populateLocationList > Overview > Ajax Access Allow calls from all users. 10.Edit the properties of the text control: General > Label
  • 78. Property Value Title General > Bindin Position.jobTitle 11.Edit the properties of the date time picker control: Property Value General > Label Starting date General > Binding Requisition.date Visibility > Visibility Required 12.Your diagram matches the following image: 13.Save your work. Summary You created the Position CV coach view. In the next lesson, you create the coach view for person data.
  • 79. Hiring tutorial: Create the coach view for person data Published on March 13, 2016 Hiring tutorial > Create the user interface > In this lesson, you create the coach view that displays person data, such as name and pay level. This lesson is similar to the previous lesson. It provides the information you need to construct the coach view but does not provide the detailed steps. For detailed steps, see Create the coach view for position request data. Procedure 1. Create a coach view and name it Person CV. 2. Bind the view to business data: 1. Select the Variables tab. 2. Add the Person variable as the business data variable and set its type to the Personbusiness object. 3. Click the Layout tab and then, from the palette, add a panel to the layout canvas and rename it to Person data. 4. Drop the following controls onto the Drop additional content here area of the Person datasection. 1. Text control 2. Text control 3. Text control 4. Text Area control 5. Edit the properties of the first text control: Property Value General > Label Given name
  • 80. Property Value General > Binding Person.firstName 6. Edit the properties of the second text control: Property Value General > Label Family name General > Binding Person.lastName 7. Edit the properties of the third text control: Property Value General > Label Manager General > Binding Person.supervisor 8. Edit the properties of the text area control: Property Value General > Label Comments General > Binding Person.notes 9. Save your work. Summary You created the Person CV coach view. In the next lesson, you create the Create Position Request CSHS human service.
  • 81. Hiring tutorial: Create the Create Position Request CSHS client-side human service Published on March 14, 2016 Hiring tutorial > Create the user interface > In this lesson, you create the client-side human service that contains the user interface that the hiring manager uses to create and submit the position request. This lesson uses the following concepts: Concept Description human service A service flow that provides user interfaces for managing process and case work in web-based applications. client-side human service A human service that runs in the web browser and can call the server to obtain data. You use a client-side human service to implement an interactive task, a dashboard, or a user interface for a case or process instance that users can use to manage cases or processes in an application. Procedure 1. Create the client-side human service for the Submit position request activity: 1. Make sure that the My Hiring Sample process application is open in Process Designer. 2. In the Standard HR Open New Position process, select the Submit position request activity. In the Properties, select the Implementation tab.
  • 82. 3. Create the client-side human service by clicking New in the Implementation section. The client-side human service that you create replaces the default human service. 4. Type Create Position Request CSHS and click Finish. The Create Position Request CSHS human service opens. In the Variables page, the private variables of the process are automatically added as input and output variables for the human service. 2. Add elements to the client-side human service diagram to create its flow: 1. Select the Diagram tab. 2. To create a script to initialize the variables that the human service uses, drag a client-side script item from the palette onto the diagram. 3. Rename the server script to Initialize output. 4. Select the script item and then add the following code to its Script properties: tw.local.requisition = {}; tw.local.requisition.date = new Date(new Date().getTime() + 1000*60*60*24*7); tw.local.currentPosition = {}; tw.local.currentPosition.replacement = {}; tw.local.requisition.reqNum = "1141"; tw.local.requisition.requester = "Tom Miller"; tw.local.requisition.department = "Finance"; tw.local.requisition.approvalNeeded = false; tw.local.requisition.location = "Chicago"; tw.local.requisition.empType = "Full-time"; tw.local.currentPosition.jobTitle = ""; tw.local.currentPosition.replacement.lastName = "Smith"; tw.local.currentPosition.replacement.firstName = "Bob";
  • 83. tw.local.currentPosition.replacement.supervisor = "Ann Fisher"; tw.local.currentPosition.replacement.payLevel = "8"; tw.local.currentPosition.replacement.payType = "Exempt"; tw.local.currentPosition.positionType = "New"; tw.local.currentPosition.replacement.notes = ""; /* Populate lists for selection*/ tw.local.requisition.empTypeList = []; tw.local.requisition.empTypeList[0] = "Full-time"; tw.local.requisition.empTypeList[1] = "Part-time"; tw.local.requisition.empTypeList[2] = "Contract"; tw.local.requisition.departmentList = []; tw.local.requisition.departmentList[0] = "Finance"; tw.local.requisition.departmentList[1] = "Marketing"; tw.local.requisition.departmentList[2] = "Product Development"; tw.local.requisition.departmentList[3] = "Human Resources"; tw.local.requisition.departmentList[4] = "Sales"; tw.local.requisition.departmentList[5] = "Customer Service"; tw.local.requisition.departmentList[6] = "Business Partner Service"; tw.local.requisition.departmentList[7] = "Business Strategies"; tw.local.requisition.departmentList[8] = "Software Engineering"; tw.local.requisition.locationList = []; tw.local.requisition.locationList[0] = "Atlanta"; tw.local.requisition.locationList[1] = "Boston"; tw.local.requisition.locationList[2] = "Chicago"; tw.local.currentPosition.positionTypeList = []; tw.local.currentPosition.positionTypeList[0] = "New"; tw.local.currentPosition.positionTypeList[1] = "Existing"; When you run the sample, the fields in the requisition form contain this data.
  • 84. Tip: If you see warnings, check for typos in the business object parameters. 5. Rename the coach, which is included in the diagram by default, to Create position request. Add two more coaches and rename them: § Specify existing position § Confirm position details 6. Add a decision gateway to the diagram. 7. Rename the decision to Position type?. The implementation for the decision does not contain any paths. The Process Designer adds these paths when you connect the decision to other nodes in the diagram. 3. Create the flow for the human service: 1. Select the flow line between the Start event and the Create position request coach. A blue dot displays at the end of the arrow head. Drag this blue dot onto a connection point on the Initialize output script. The
  • 85. connection points display when pointer hovers over the script. 2. In the Initialize output script, hover over a selection point to display a sequence flow arrow. Drag the arrow to the Create position request coach. When the coach displays its selection points, drag the sequence flow onto one of them. 3. Select the flow that exits the Create position request coach and change it to connect to the Position type decision. This connection has an OK label. 4. Connect the top selection point of the Position type decision to the Specify existing position coach. Although you can use any selection point, use the top selection point for a tidier diagram. 5. Connect the bottom selection point of the Position type decision to the Confirm position details coach. Having different selection points for the two paths makes it easier to see the two flows in the diagram. 6. Connect the Specify existing position coach to the Confirm position details coach. 7. Connect the Confirm position details coach to the End event. 8. Rearrange the elements in the diagram to make it easier to read. The flow lines that exit from the coaches use the OK button that is provided in the default coaches.
  • 86. 4. Define the branches for the decision. In the process requirements, the direction the flow takes depends on whether the position is new or exists. If the position exists, the hiring manager must provide information about the existing position. The hiring manager then reviews the job requisition and submits it. To implement the split paths, you use the decision control. 1. Select the line that flows from the bottom of the Position type decision to the Confirm position details coach. In the General properties, change its name to New. Labeling the line helps you identify the branches in the decision and in the diagram. 2. In the same way, rename the other flow line to Existing. The lines now have labels.
  • 87. 3. Select the Position type decision and open its Implementation properties. 4. For the New branch, click the variable icon and select the currentPosition.positionTypevariable. The first field contains the variable name. The tw.local part of the name is the namespace that the system uses to store values. 5. Because you want the flow to take this line only if the position is new (or currentPosition.positionType =="New"), set the operation to == and the second field to “New”. Because currentPosition.positionType is a string, include the quotation marks to turn the value into a string. 5. Save your work. Summary You created a client-side human service to implement the submit job requisition activity in the process. You created most of its flow. In the next lesson, you implement the coaches that provide the user interface for the Create Position Request CSHS client-side human service.
  • 88. Hiring tutorial: Create the coaches for the Create Position Request CSHS client-side human service Published on March 14, 2016 Hiring tutorial > Create the user interface > In this lesson, you create the user interface that the hiring manager uses to create a position request. In the Standard HR Open New Position process, the hiring manager completes the submit position request activity. To enable the hiring manager to complete the activity, you create the user interface in IBM® Business Process Manager by using a number of coach views and the variables of the client-side human service. This lesson uses the following concept: Concept Description coaches The user interfaces for human services. Procedure 1. In the Create Position Request CSHS client-side human service: 1. Select the Coaches tab and then select the Create position request coach. The coach opens to display the canvas. Because this coach was created as a default, it already contains a number of controls that are based on the variables of the human service and an OK button. 2. Delete all of the controls except for the OK button. 3. Drop a panel onto the layout area above the OK button. 4. Rename the panel to Position Request. In the Configuration properties, change the color to Primary.
  • 89. 2. Create the form part of the coach: 1. In the panel, add a Horizontal Layout control. 2. From the palette, add the Requisition CV coach view to the horizontal layout. When you create a coach view, it is added to the palette so that you can add it to other coach views. 3. Add the Position CV coach view beside the Requisition CV in the horizontal layout. 4. Bind the Requisition CV to Requisition and bind the Position CV to Position. 5. Select the Requisition CV and open its Positioning properties. Set the Width to 49%. Repeat for the Position CV. 6. Set the Requisition configuration option for Position CV 1. Select Position CV 2. Click Properties > Configuration. 3. Click the purple icon beside Requisition
  • 90. 4. Click the Select button and select the requisition business object.<img src="/community/images/31/2016/03/gs_tutorial_requisition2.gif " alt="The requisition configuration option" 7. Select the OK button. Relabel the button to Next. 3. Save your work. 4. Build the Confirm position details coach. This coach is where the hiring manager reviews the position request. 1. In this coach, you want to view the details in the Requisition CV and Position CV as read-only. However, the coach views have fields that have a visibility of required. If you don’t want the fields to be marked required, create duplicate coaches. 1. In the library, right click User Interfaces to view the coach views. 2. Right click Requisition CV and click Duplicate. A duplicate coach, Requisition CV 2, is created.<img src="/community/images/31/2016/03/gs_tutorial_activity_duplic ate_CV.gif" alt="The Duplicate option" 3. Similarly, create a duplicate coach Position CV 2. 4. Edit Requisition CV 2 and Position CV 2 and change the visibility of the following fields from required to Same as parent: Position CV 2 > Position Position CV 2 > Starting date Requisition CV 2 > Employment type Requisition CV 2 > Department type 2. Select the Confirm position details coach. In the Select a Template window, start with the default coach and click OK. 3. Drop a panel onto the canvas. Relabel it to Confirm Position Request and change the color style to Primary. 4. Add an Output Text control to the Confirm Position Request panel. Change the label to Requisition number and bind it to requisition.reqNum. 5. Drop a Horizontal Layout into the Confirm Position Request panel. In its Visibilityproperties, change its visibility to Read only. 6. Add the Requisition CV 2 and Position CV 2 to the horizontal layout. Set their width to 49%each. 7. Bind Requisition CV 2 to Requisition and bind Position CV 2 to Position. 8. Set the Requisition configuration option for Position CV 2.
  • 91. 9. Drop a Horizontal Layout below the Confirm Position Request panel. Change its horizontal alignment to right. 10.Drag the existing OK button into this section and then add another button. Rename the left button to Back and the right button to Submit. 5. Save your work. 6. Build the Specify Existing Position coach. This coach is where the hiring manager enters information about an existing position and the person currently filling that position. 1. Select the Specify Existing Position coach. In the Select a Template window, start with the default coach and click OK. 2. Drop a Panel onto the canvas. Relabel it to Existing Position and change the color style to Primary. 3. Drop a Horizontal Layout into the panel. 4. Drop the Person CV into the horizontal layout and bind it to currentPosition.replacement.
  • 92. 5. Add another panel beside the Person CV coach view and relabel it to Position. In its Visibility properties, change its visibility to Read only. 6. Add a Text control to the section and relabel it to Position type. Bind it to currentPosition.positionType. 7. Add another Text control to the section and relabel it to Title. Bind it to currentPosition.jobTitle. 8. Drop a horizontal layout below the Existing Position section. Change its horizontal alignment to left. 9. Drag the existing OK button into this section and then add another button. Rename the left button to Back and the right button to Next. Change the color style of the buttons to Primary 7. Save your work. Summary You created the user interface that the hiring manager uses to create a position request. In the next lesson, you will create the complete the flow for the Create Position Request CSHS client-side human service.
  • 93. Hiring tutorial: Complete the flow for the Create Position Request CSHS human service Published on March 14, 2016 Hiring tutorial > Create the user interface > In this lesson, you enable the hiring manager to return to the editable job requisition form by adding the flows for the two Back buttons. In the Create Position Request CSHS human service, there are three coaches. When you connected the coaches in the human service flow, their default OK buttons provided the boundary event to move the flow to the next step. As part of creating the user interface in the coaches, you renamed the OK buttons to Next or Submit. The human service diagram depicts this change. When a user clicks Next in the Create position request coach, the flow leaves that coach and enters the decision. The flow then enters one of the other two coaches. The Specify existing position coach contains two buttons. If the user clicks Next, the flow goes to the Confirm position details coach. If the user clicks Back, nothing happens. In this lesson, you create a boundary event that causes this second flow to go back to the Create position request coach. Procedure 1. In the Create Position Request CSHS human service, select the Diagram tab. 2. Make the following connections:
  • 94. o The Specify existing position coach to the Create position request coach o The Confirm position details coach to the Create position request coach Both coaches have two coach views that fire boundary events: the Next button and the Back button. The Next button already has a binding for its boundary event. The Back button does not have a binding so the Back button is used to create the flow. Tip:If the lines going back to the Create position request coach are not correct: 1. Select a flow line. 2. In the General properties the End state binding property shows the button that is bound to the flow line. Click Select. 3. The coach opens. Click the button to which you want to bind the flow line. The diagram now has flow lines that return the flow to the Create position request coach when the user clicks Back. 3. Save your work. Summary You have flow lines that return hiring managers to the editable requisition form when they click Back in the coaches. In the next lesson, you create the GM Approval CSHS client-side human service.
  • 95. Hiring tutorial: Create the GM Approval CSHS client-side human service Published on March 14, 2016 Hiring tutorial > Create the user interface > In this lesson, you create the client-side human service that the general manager (GM) uses to review the job request. The human service includes one coach that provides the user interface. The GM can then approve or reject the request. Procedure 1. Create the human service for the Approve or reject job requisition activity. 1. Make sure that the My Hiring Sample process application is open in Process Designer. 2. In the Standard HR Open New Position process, select the Review new position requestactivity. In the Properties, select the Implementation tab. 3. Create the client-side human service by clicking New in the Implementation section. The client-side human service that you create replaces the default human service. 4. Type GM Approval CSHS and click Finish. The GM Approval CSHS human service opens. In the Variables page, the private variables of the process are automatically added as input and output variables for the human service. 2. Open the diagram for the human service and relabel the coach to Review new position request. The flow provided as a default works for the purpose of this tutorial. The diagram for the human service looks like the following image:
  • 96. 3. Build the Review new position request coach by deleting the existing content and then adding the sections and controls. If you need help, follow the steps in Create the coaches for the Create Position Request CSHS. For property settings, consult the table later in this step. The final layout of the coach looks like this:
  • 97. The following table contains information about the controls and coach views and the changes to their properties that you need to make: Label Type of control Binding Configuration options New Position Approval Panel Configuration > Appearance > Color style = Primary Visibility > Visibility = Read only Horizontal Layout Horizontal Layout Request data Requisition CV 2 requisition Positioning > Width = 49% Position Position CV 2 currentPosition Positioning > Width = 49% Approval Panel Approval Approved? Radio Button Group requisition.gmApproval Configuration > Items > Item lookup mode = Items From Static List Configuration > Items >
  • 98. Label Type of control Binding Configuration options Static list name = true, value = Approved Configuration > Items > Static list name = false, value = Rejected Comments Text area requisition.gmComment Horizontal Layout 2 Horizontal Layout Submit Button Configuration > Appearance > Horizontal alignment = Right Configuration > Appearance > Color style = Primary 4. Save your work. You created the client-side human service that the GM uses to review information on a new position. The GM then approves or rejects the request. In the next lesson, you conduct Playback Two.
  • 99. Hiring tutorial: Conduct Playback Two Published on March 14, 2016 Hiring tutorial > Create the user interface > In this lesson, you conduct Playback Two by checking that the individual client-side human services are working as expected and that the coaches display correctly, and you take a snapshot. In the playback, you check the following paths: • The hiring manager requests a replacement for an existing position. • The hiring manager creates a request for a new position and the general manager (GM) approves the request for a new position. • The hiring manager creates a request for a new position and GM rejects the request for a new position. For the tutorial, the Find position candidates activity in the process will use the default responsive human service. See the Hiring sample for an example of how you could implement a client-side human service for this activity. Procedure 1. Make sure that the Standard HR Open New Position process is open on the Definition page. 2. To run an instance of the process, click the icon. 3. In the Inspector, check the first path. Click the icon. The Process Portal opens in another browser instance. 4. In the Tasks section of Process Portal, click the Submit position request step. Claim the task. The Submit position request coach opens. 5. Enter values into the fields. For this path, select Existing for the Position type. 6. Click Next. 7. In the Specify existing position coach, confirm or provide data for the fields and then click Next. 8. In the Confirm position details coach, confirm that the fields contain the same data that you entered in the previous coaches. The fields should be read-only however. 9. Click Submit. The Process Portal reopens.
  • 100. 10.Click Find position candidates step. The Find position candidates coach opens. This coach is using a default UI because the tutorial has not created one. 11.Click Done. 12.Return to the Process Designer. 13.In the same way, test the second path, select New for the Position type and Approved for GM Approval. 14.In the same way, test the third path, select New for the Position type and Rejected for GM Approval. 15.Take a snapshot of the process application: 1. In Process Designer, click the icon in the main toolbar. 2. Name the snapshot Playback Two. 3. For the description, type This is a snapshot of the process application up to Playback Two. 4. Click Finish. Summary You conducted Playback Two by checking that the human services are working as expected and that the coaches display correctly. You also took a snapshot of the process application. In the next module, you provide validation to ensure the user provides data in required fields.
  • 101. Hiring Tutorial: Validating coach data Published on March 11, 2016 In this module, you check that the data users enter into a coach is valid before proceeding in the process flow. In the tutorial, there are a number of fields that have the required decorator. This module shows how to ensure that users provide a value in these fields and test the requirement. Learning objectives After you complete the lessons in this module, you will understand the concepts and know how to validate a coach. • Add validation to the create position request coach • Playback three Learn more: • Hiring Tutorial: Add validation to the create position request coach • Hiring Tutorial: Playback Three Hiring Tutorial: Add validation to the create position request coach Published on March 11, 2016 In this lesson, you create a validation service to ensure that the Create Requisition Coach contains valid data when the user clicks Next. Before you begin This lesson builds on the artifacts that are created in the and modules.