lawson process automation administration guide

128
Lawson Process Automation Administration Guide Version 10.0.2.x Published August 2012

Upload: others

Post on 13-May-2022

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Lawson Process Automation Administration Guide

Lawson Process AutomationAdministration GuideVersion 10.0.2.xPublished August 2012

Page 2: Lawson Process Automation Administration Guide

Copyright © 2012 Infor. All rights reserved.

Important Notices

The material contained in this publication (including any supplementary information) constitutes andcontains confidential and proprietary information of Infor.

By gaining access to the attached, you acknowledge and agree that the material (including anymodification, translation or adaptation of the material) and all copyright, trade secrets and all otherright, title and interest therein, are the sole property of Infor and that you shall not gain right, title orinterest in the material (including any modification, translation or adaptation of the material) by virtueof your review thereof other than the non-exclusive right to use the material solely in connection withand the furtherance of your license and use of software made available to your company from Inforpursuant to a separate agreement, the terms of which separate agreement shall govern your use ofthis material and all supplemental related materials ("Purpose").

In addition, by accessing the enclosed material, you acknowledge and agree that you are required tomaintain such material in strict confidence and that your use of such material is limited to the Purposedescribed above. Although Infor has taken due care to ensure that the material included in this publicationis accurate and complete, Infor cannot warrant that the information contained in this publication iscomplete, does not contain typographical or other errors, or will meet your specific requirements. Assuch, Infor does not assume and hereby disclaims all liability, consequential or otherwise, for any lossor damage to any person or entity which is caused by or relates to errors or omissions in this publication(including any supplementary information), whether such errors or omissions result from negligence,accident or any other cause.

Without limitation, U.S. export control laws and other applicable export and import laws govern youruse of this material and you will neither export or re-export, directly or indirectly, this material nor anyrelated materials or supplemental information in violation of such laws, or use such materials for anypurpose prohibited by such laws.

Trademark Acknowledgements

The word and design marks set forth herein are trademarks and/or registered trademarks of Infor and/orrelated affiliates and subsidiaries. All rights reserved. All other company, product, trade or servicenames referenced may be registered trademarks or trademarks of their respective owners.

Publication Information

Release: 10.0.2.x

Publication date: October 15, 2012

Document Number: LPAAG_10.0.2.x_UW_03

Page 3: Lawson Process Automation Administration Guide

Contents

Part 1: Users, Tasks, Filters................................................................................................................6

Chapter 1: Getting Started.................................................................................................................7

What Is Lawson Process Automation?..............................................................................................7

Example: Creating a Simple Process: Single-Level Approval............................................................7

How Lawson Process Automation Works: Overview.......................................................................20

Chapter 2: Adding Users and Tasks to Lawson Process Automation ........................................26

Using Variables with an Eclipse-Based Designer: Overview...........................................................26

Lawson Process Server: User Configuration Menu Overview.........................................................28

Adding Users and Assigning Tasks to Lawson Process Automation...............................................29

Security access needed for Lawson Process Automation users.....................................................31

What Is Filtering in Lawson Process Automation?...........................................................................33

Chapter 3: Customizing Inbasket Displays....................................................................................36

Creating Custom Displays for Inbasket Actions...............................................................................36

Part 2: Preparing Processes to Run................................................................................................45

Chapter 4: Triggering Processes.....................................................................................................46

Configuring a Process for Runtime..................................................................................................46

Triggering a Process by Service Definition......................................................................................48

Triggering a Process by Process Definition.....................................................................................49

Preparing Processes to Launch from M3 Forms (M3 only).............................................................49

Lawson Process Automation Administration Guide | 3

Page 4: Lawson Process Automation Administration Guide

Scheduling an Action to Run in Lawson Process Automation.........................................................53

Part 3: Configuring Lawson Process Server and Connecting Servers........................................55

Chapter 5: Configuring Lawson Process Server and the Grid.....................................................56

Configuring Grid and other properties for Lawson Process Automation..........................................56

Chapter 6: Configuration Sets.........................................................................................................68

Lawson Process Server Configuration Sets: What They Are and How to Create Them..................68

Chapter 7: Creating Connections to Specific Types of Servers...................................................70

Web Run Connection in Lawson Process Automation....................................................................70

Landmark Connection in Lawson Process Automation...................................................................71

M3 connection in Lawson Process Automation...............................................................................72

IBM WebSphere MQ Connection in Lawson Process Automation..................................................73

S3 Connection in Lawson Process Automation...............................................................................74

JMS (Java Message Service) connector in Lawson Process Automation.......................................75

File (FTP) Connection for File Transfers in Lawson Process Automation........................................77

JDBC Connection in Lawson Process Automation..........................................................................77

Cloverleaf Connection.....................................................................................................................79

Event Hub Connectivity...................................................................................................................80

ION Connection...............................................................................................................................81

Configuring Basic Authentication for a Web Services Connection..................................................82

Chapter 8: Jar File Configuration....................................................................................................83

Configuring External .Jar Files Required for JDBC Connections....................................................83

4 | Lawson Process Automation Administration Guide

Contents

Page 5: Lawson Process Automation Administration Guide

Chapter 9: Configuring Channels and Receivers for Use with Lawson Process Automation....85

Channel / receiver communication with Lawson Process Automation: Overview............................85

Configuring a JMS channel and receiver.........................................................................................90

Creating a File channel and receiver...............................................................................................93

Configuring an ION Channel and Receiver.....................................................................................97

Event Hub Channel / Receiver Configuration................................................................................106

Monitoring and administering channels and receivers...................................................................109

Receiver Last Error........................................................................................................................110

Part 4: Monitoring and Troubleshooting.......................................................................................112

Chapter 10: Managing Workunits..................................................................................................113

Monitoring Lawson Process Server Workunits..............................................................................113

Sending email reminders to users of pending work items via a process.......................................115

Administratively or programmatically taking action on workunits ..................................................117

Process execution log files............................................................................................................119

Clearing logs and activities for workunits with status of Completed or Canceled..........................120

Cleaning up workunit views and table data...................................................................................122

Chapter 11: Troubleshooting..........................................................................................................126

Troubleshooting Lawson Process Server.......................................................................................126

Lawson Process Automation Administration Guide | 5

Contents

Page 6: Lawson Process Automation Administration Guide

Users,Tasks, Filters

• "Getting Started" on page 7

• "Adding Users and Tasks to Lawson Process Automation " on page 26

• "Customizing Inbasket Displays" on page 36

6 | Lawson Process Automation Administration Guide

Page 7: Lawson Process Automation Administration Guide

1Getting Started

• "What Is Lawson Process Automation?" on page 7

• "Example: Creating a Simple Process: Single-Level Approval" on page 7

• "How Lawson Process Automation Works: Overview" on page 20

What Is Lawson Process Automation?Lawson Process Automation is a tool for automating business processes. For example, if workers atyour organization perform a procedure (a series of tasks) repeatedly, automating the procedures makessense. Doing so ensures that all steps in the procedure and that they are performed and in the correctsequence.

Lawson Process Automation is the umbrella term for two software components, Lawson ProcessDesigner and Lawson Process Server.

Lawson Process Designer

Lawson Process Designer (LPD) is a desktop point-and-click tool for creating processes. A process isthe XML file of instructions that carries out the process instructions.

Any user at your site who will be creating processes, these users are typically business analysts, powerusers, and software developers, will need to have LPD installed on their desktop machines.

Lawson Process Server

Lawson Process Server (LPS) is a server based software tool that is typically needed only by systemadministrators. Administrators use it to configure, launch, maintain and troubleshoot processes.

Example: Creating a Simple Process: Single-Level ApprovalOne of the strengths of Lawson Process Automation is its flexibility in allowing customers to createprocesses, which are, in effect, custom applications.

Lawson Process Automation Administration Guide | 7

Page 8: Lawson Process Automation Administration Guide

Because of the flexibility, there is no single way to create a process. That is why the most effectiveway to describe how to create a process is to show a simple example that walks you through creatingone.

Example 1: Simple single-level approval process

This topic provides a step-by-step example for creating a process for routing a purchase order approval.To keep the example simple, it is limited to a single-level approval, meaning that only a single roundof approvals is needed to complete the process.

Figure 1. Illustration: Example approval process in Lawson Process Designer (when designing is completed)

The table that follows explains the purpose of each "node" or step in the process.

DescriptionActivity node

All processes have Start and End nodes. These appearautomatically on the Designer canvas when you start a new

Start and End

process. Start is the first node; End is the last node. All othernodes appear between Start and End.

This node is the part of the process where the user is presentedwith a task in the Inbasket. In our example, the possible actionsare Approve or Reject.

UserAction

The process includes two Email nodes, one for notifying if theuser approves the purchase order and one for notifying if theuser rejects the purchase order.

Email

The rest of this section provides details about how this simple process is configured.

Design the process "on paper"This is possibly the single most important step and should be done before you launch LawsonProcess Designer. Knowing before you start creating a process exactly how the process shouldbehave will save you a significant amount of time while creating and will also help you isolate aproblem if your process does not function as designed.

The following subsections outline the basic steps for designing a process on paper.

8 | Lawson Process Automation Administration Guide

Getting Started

Page 9: Lawson Process Automation Administration Guide

Analyze what you want the process to doFor our example process, Bob Johnson, who is the Procurement Manager for Example Companyneeds an approval for a purchase requisition that has been sent by a member of the ITdepartment. Jane Doe, the Chief Information Officer for Example Company signs off on allrequisitions from IT.

When the process runs, Jane will then receive an action item in her Inbasket to approve orreject the purchase request. Bob receives an email with Jane's decision and the process ends.

Block out the small steps that make up the actionFor our example, the small steps are shown below.

• The process starts when a purchase order is submitted.

• Jane receives a work action in her Inbasket which gives her the option to accept or rejectthe purchase request.

• Bob receives an automated email informing him of Jane's action.

• The process ends.

Map the small steps to activity nodesFor our example, the following activity nodes are needed:

• UserAction: This is where we configure a work item to be sent to Jane's Inbasket.

• Email for Approve action: If Jane approves the purchase, this automated message is sentto Bob.

• Email for Reject action: If Jane rejects the purchase, this automated message is sent toBob.

Now we are ready to begin creating the process using Lawson Process Designer.

Start a new process• From the Designer canvas, click File / New to start a new process.

A "blank" canvas displays. (By "blank canvas," we mean only the Start and End activity nodesappear on the canvas.)

All processes must begin with Start and have End as the last node. That is why these nodesappear automatically and cannot be deleted.

Add and configure the UserAction activity nodeFirst, we will perform configuration needed for the UserAction activity node.

Add and connect the node• From the User Interaction group of activity nodes, select UserAction ad drag it onto your

canvas.

Lawson Process Automation Administration Guide | 9

Getting Started

Page 10: Lawson Process Automation Administration Guide

• Use the Connect tool to connect the UserAction node to the Start node.

Now we are ready to configure the UserAction node.

Assign a Name to the node• By default, all activity nodes have properties for ID and Name which appear on the top

portion of the Properties dialog box. These properties can be changed.

For our example, we will change the Name from its default of UserAction1580 to a moremeaningful name of PurchaseApproval.

Create actions for the node• With the UserAction node selected on the Designer canvas, click on the Properties pane,

which, by default, is anchored on the bottom left of the Designer.

• Create the actions for the node. For our example, we want to create Approve and Reject.These will be the only actions that the user (Jane Doe) can take when a purchase orderrequest appears in her Inbasket.

• Click the Action tab.

• In the Actions portion of the tab, click Add (+) to open the Action Builder.

• Type the name of the action you want to create. For our example process, we willperform this step twice, once for the Approve action and once for Reject.

10 | Lawson Process Automation Administration Guide

Getting Started

Page 11: Lawson Process Automation Administration Guide

Figure 2. Screen capture: Action Builder creating a Reject action for a UserAction node

Figure 3. Screen capture: UserAction Properties / General tab / Actions after Approve and Rejectactions have been created

Assign the work item to a userUse the General tab to assign the user who will perform the approve / reject action. In ourexample, we are assigning the work to a specific person, Jane Doe, the CIO.

Use the General tab, Work assignment section, to locate a user to assign the approve/rejecttask to. For our example, we will assign to a specific user, Jane Doe, the CIO for ExampleCompany. To make this assignment:

Lawson Process Automation Administration Guide | 11

Getting Started

Page 12: Lawson Process Automation Administration Guide

• Click the Add (+) button

• Click the Users tab and then Browse to locate and select Jane Doe.

Configure the Proceed tabThe Proceed tab is for determining when the UserAction has been successfully executed sothat the process can begin executing ve to the next activity node.

For the sake of simplicity for our example, we have selected the option when "Any one recipienttakes an action." Jane is the only user who will be receiving the action in our case. When sheresponds, the appropriate Email node will execute.

12 | Lawson Process Automation Administration Guide

Getting Started

Page 13: Lawson Process Automation Administration Guide

In general, you would select "Any one recipient takes action" when you are sending to multipleusers but you only need one of them to approve. The Proceed tab can handle more complexscenarios, one of which we will describe in a later section.

Create the work item display for in the user's InbasketUse the Work tab to show what information will display in the Inbasket for our work item.

For our simple example, we will configure the following items:

• Work title: This is the name of the of the item as it appears in the Inbasket. It is similar toa subject line in an email box in that it is what Jane sees before she clicks the item to openit. It is a good idea to use a Work title that makes it clear what the user needs to do. Forour example, we are using "approve PO."

• Display type: The type of material that will display in the Inbasekt. It is possible to displaya URL, a Lawson form or many other things. For our example, we selected Content. Thisis the simplest type of display because what you type on this tab will be what the user seesin the Inbasket.

• Display name: This is the name that appears on the "inside" of the work item after the useropens it.

• Display content: This is the information that, in our example, the user needs to make adecision about the purchase order.

We display the Name and Employee Number of the requester, the person who wants tobuy the item that Jane will sign off on.

Our example puts brackets around <Name> and <Employee>. This means that thisinformation is a variable and will be supplied by trigger method (for example, a LawsonProcess Automation service or another activity node). For this example in which we arefocusing on using the Designer, we will not concern ourselves with triggering the processto execute.

Lawson Process Automation Administration Guide | 13

Getting Started

Page 14: Lawson Process Automation Administration Guide

Configure the Notify tabthe Notify tab is for sending a message to a user to tell them that a work action has been sentto their Inbasket.

On the Notify tab:

• Make sure the Notify all users of work flag is selected.

• Click the Create the notification message link.

On the Notify Message dialog box, populate the From:, Subject:, and Contents: fields.

Click the Browse button if you want to locate and open a file that contains information to becopied and pasted.

14 | Lawson Process Automation Administration Guide

Getting Started

Page 15: Lawson Process Automation Administration Guide

Add and configure the Email activity nodesNow we are ready to add and configure the nodes that will send out email messages to the processinitiator (Bob) telling him what action (Approve or Reject) Jane has taken.

Add two Email nodes to the Designer canvas• From the Common group of activity nodes, click Email and drag it to the Designer canvas.

• Repeat this step so that there are two Email nodes on the canvas.

• Change the Name and ID fields for the nodes. Name one "Approve Email" and the other"Reject Email." This will help you to identify them when you are configuring.

Lawson Process Automation Administration Guide | 15

Getting Started

Page 16: Lawson Process Automation Administration Guide

Connect the nodes to the actions• With a connector selected, connect the UserAction node to one of the Email nodes.

When you perform this step, a dialog box prompting you to select an action to be associatedwith the message. In our example, this is called a "Branch" condition because there aretwo possible actions that could be taken by the user.

Figure 4. Screen capture: Selecting a condition to be associated with an activity node, in our example,the Accept Email node

When you have

Perform this step for both the Approve and Reject messages.

Configure addresses for the email message• For our example, the approve or reject email messages are coming from a specific person,

Jane Doe, and are being sent to Bob Johnson.

Locate the recipient of the message (Bob Johnson). Click To: / Email tab and then clickBrowse. Select Bob Johnson from the list.

• With your cursor in the From: field, repeat the above steps to select the sender (Jane Doe).

Configure the content of the messages for the Email nodes• For both the Approve and Reject actions, type the text you want to appear. Populate both

the Subject line and the body of the message.

16 | Lawson Process Automation Administration Guide

Getting Started

Page 17: Lawson Process Automation Administration Guide

Figure 5. Configuring addresses and text of an automated email message

Test, upload and trigger a processWe have now completed creating the process. There are still more important steps that need tobe taken before a process can begin executing. These steps include testing the process on a testserver, uploading it to a production server, and configuring the conditions that will "trigger" a process.(Trigger. in this case, means cause it to run.)

Because we are focusing on learning how to use the Designer in this section, we will skip discussionsof testing, uploading and triggering for now. We will continue our discussion about how to use theDesigner by enhancing our simple process with some more advanced functionality.

Slightly more complex example...

...and also more practical because this example uses Tasks to represent specific users who performthe tasks. This means that a process that you create can be reused any time you have a purchaserequest that needs approval. Instead of Jane Doe approving a purchase request from the IT department,a task called CIO will do it. Instead of Bob Johnson receiving an email telling him the CIO's decision,a task called Procurement Manager will receive it.

Using tasks to stand for specific users gives even more flexibility to a process. For example, if JaneDoe leaves her position and Bob Johnson goes on vacation when a purchase needs to be approved,the process can still run successfully because whoever has taken over Jane's duties can approve orreject the request. Whoever is covering for Bob's vacation can proceed with (or cancel) the purchaserequest depending on the CIO's decision.

In this example, we will also add some other functions to this process, including:

• Configuring time out behavior, that is, define what the process should do if no one takes anappropriate action in the configured timeframe.

• Configuring Reminders. When reminders are configured in a process, they send reminders to theInbasket of tasks that have not yet performed a required action.

Lawson Process Automation Administration Guide | 17

Getting Started

Page 18: Lawson Process Automation Administration Guide

Configure the UserAction node for a task (instead of a specific user)• On the UserAction General tabl, when you click the Add (+) button to assign a work item to be

sent to the Inbasket of the person who must perform the task, you select the Tasks tab andthen select the task (or role) that you want to perform the work item. In our case, this is theCIO.

Figure 6. Screen capture: UserAction node / General tab / Tasks tab showing selection of a task instead of aspecific user

Configure the Time out tabOn the UserAction General tab, configure a timeout. A timeout stops the process and logs a failurebecause, in this case, users did not respond within a specified timeframe.

On the UserAction Properties Time out tab, we will make the following configuration:

• After how many hours or days does a timeout occur? In our example, we have configured threedays.

• Behavior upon timeout: Default choices are "Take action," one of the actions that we createdfor the process as a whole or Reassign.

For simplicity in our example, we chose Take action/Reject.This means that if a timeout occurs,the process will fail and the initiator of the process will receive a message that the approvalwas rejected.

18 | Lawson Process Automation Administration Guide

Getting Started

Page 19: Lawson Process Automation Administration Guide

Figure 7. UserAction Properties / Timeout tab showing "Take action Reject"

Configure the Reminders tabYou can configure reminders. These are notifications reminding users that they have not yet takenaction on an action item in their Inbasket.The Reminders tab is for configuring when the reminderswill be sent.

Figure 8. UserAction Properties / Reminders tab showing "Send one reminder after two days"

• Reminders flag must be checked

• Specify the number of days or hours after the work item is received in the Inbasket (and noaction has been taken) that the reminder will be sent. In our example, we have configured "2days."

Lawson Process Automation Administration Guide | 19

Getting Started

Page 20: Lawson Process Automation Administration Guide

• Configure a 1st Reminder message. Click the Create the reminder message link.

• You can use the 2nd Reminder tab to configure an additional follow-up reminder.

Other functionality that can be added

Even a relatively simple activity node like Email can have more functionality than we have shown here.For example, you could send attachments with a message or configure how the node should behaveif an error occurs.

For UserAction nodes, you can easily add such complex functionality as what the process should dowhen multiple users are assigned a work item and take different actions (Proceed tab).You can alsocustomize the work item that users see in their Inbasket (Work tab).

Now that you have a foundation for understanding how to create a process using Lawson ProcessDesigner, you can refer to the online help system and other user information in the infocenter to learnabout all the functionality that Lawson Process Automation provides.

How Lawson Process Automation Works: OverviewThe best way to understand how Lawson Process Automation works is through an example.

This section provides several high-level examples showing how a process moves through the systemfrom conception to execution. Each successive example is slightly more complex and builds on previousexamples to enhance your understanding.

20 | Lawson Process Automation Administration Guide

Getting Started

Page 21: Lawson Process Automation Administration Guide

Example 1: Simple process to route purchase orders

Suppose your company has three people who need to sign off on purchase orders.You want to createa process that automates the process of routing the purchase order among these individuals.

Who does itHowStep

A LPD developer who isknowledgeable about thebusiness process.

Using Lawson ProcessDesigner

Design the process.1

LPD developerUsing Lawson ProcessDesigner

Upload the process.

After the process has beencreated and tested, it is ready to

2

be uploaded to Lawson ProcessServer.

LPS system administratorUsing Lawson ProcessServer

Schedule the process to run.3

Using Lawson ProcessServer

From the menu: LawsonProcess Administrator /Process Scheduling / ByProcess Definition

N/AHappens automaticallythrough process execution

Work (requesting sign-off on thePO) appears in the Inbasket of theappropriate users.

4

Example 2: Adding tasks

In Example 1, users are notified directly. The process identifies users through their user IDs as thespecific persons whose Inbaskets should receive notifications.

In Example 2, work is assigned to Tasks, rather than directly to users.

In Lawson Process Automation, a task represents "users who perform a specific function." Work itemsare assigned to tasks; tasks are assigned to users.

For our PO sign-off example, we assume that a task called "PO Sign-off" has been created. When theprocess executes, a work item to sign off on a PO will appear in the Inbaskets of users who have beenassigned the task.

Who does itHowStep

Lawson Process Automation Administration Guide | 21

Getting Started

Page 22: Lawson Process Automation Administration Guide

LPS system administratorUsing Lawson ProcessServer

Assign the Task "PO Sign-off" tousers.

1

From the menu: LawsonProcess Administrator / UserConfiguration / Tasks

If tasks were not used, thesystem administrator would nothave to perform this step. Bydefault, all Lawson users areautomatically LPA users.

A LPD developer who isknowledgeable about thebusiness process.

Using Lawson ProcessDesigner

Design the process.2

LPD developerUsing Lawson ProcessDesigner

Upload the process.3

LPS system administratorUsing Lawson ProcessServer

Schedule the process to run.4

Using Lawson ProcessServer

From the menu: LawsonProcess Administrator /Process Scheduling / ByProcess Definition

N/AHappens automaticallythrough process execution

Work (requesting sign-off on thePO) appears in the Inbasket ofusers signed this task.

5

Example 3: Adding filters

In Example 2, users are notified of work items through tasks. In Example 3, tasks are still used but thisexample introduces an additional feature of LPA, filtering. Filtering is a way to route work items onlyto tasks (users) who need to see them.

For example, if you have many employees who sign off on POs, but who only do so for their owndepartments, you would not want them to see all POs that are being routed.You can create a Filter,"Department," with Criteria Values "Accounting," "IT," "HR," and so on.You can then map tasks tofilters and values.

In Example 3, when a purchase order for a new piece of hardware for the Accounting Department isrouted, the work item appears only in the Inbaskets of users who have been assigned the "PO sign-off"task and the Criteria Value "Accounting" for the Filter "Department."

Who does itHowStep

22 | Lawson Process Automation Administration Guide

Getting Started

Page 23: Lawson Process Automation Administration Guide

LPS system administratorUsing Lawson ProcessServer

Assign the Task "PO Sign-off" tousers.

1

From the menu: LawsonProcess Administrator / UserConfiguration / Tasks

LPS system administratorUsing Lawson ProcessServer

Create Filters.2

From the menu: LawsonProcess Administrator / UserConfiguration / Filters

LPS system administratorUsing Lawson ProcessServer

Create User Category criteria forthe task.

3

From the menu: LawsonProcess Administrator / UserConfiguration / Tasks

A LPD developer who isknowledgeable about thebusiness process.

Using Lawson ProcessDesigner

Design the process.4

LPD developerUsing Lawson ProcessDesigner

Upload the process.5

LPS system administratorUsing Lawson ProcessServer

Schedule the process to run.6

From the menu: LawsonProcess Administrator /Process Scheduling / ByProcess Definition

N/AHappens automaticallythrough process execution

Work (requesting sign-off on thePO) appears in the Inbasket ofusers who meet the filteringcriteria for the task.

7

Example 4: Using a service to trigger a process

In the previous examples, the process is triggered directly by the administrator. This means that theadministrator locates the process on the list of available processes and configures scheduling asneeded. For the purposes or keeping our examples simple, we have been assuming that the LawsonProcess Server administrator is notified when a purchase order is launched. The administrator thenlaunches the PO sign-off process. More realistically, an event (rather than a person) triggers a process.Lawson applications deliver many services for triggering processes.You can also develop customtriggers at your site.

Lawson Process Automation Administration Guide | 23

Getting Started

Page 24: Lawson Process Automation Administration Guide

In Lawson Process Automation, triggers are called services.

A service represents a business event. It adds a level of separation between the process and scheduling.Through application code, it triggers a process to execute.

In Example 4, when a user launches a PO from an application, trigger code launches the PO sign-offprocess.

Who does itHowStep

LPS system administratorUsing Lawson ProcessServer

Assign the Task "PO Sign-off" tousers.

1

From the menu: LawsonProcess Administrator / UserConfiguration / Tasks

LPS system administratorUsing Lawson ProcessServer

Create Filters.2

From the menu: LawsonProcess Administrator / UserConfiguration / Filters

LPS system administratorUsing Lawson ProcessServer

Create User Category criteria forthe task.

3

From the menu: LawsonProcess Administrator / UserConfiguration / Tasks

A LPD developer who isknowledgeable about thebusiness process.

Using Lawson ProcessDesigner

Design the process.4

Java or LPL developerCreate in Java or LawsonPattern Language (LPL).

If custom trigger code is used,create the code and test it with theprocess.

5

LPD developerUsing Lawson ProcessDesigner

Upload the process.

After the process has beencreated and tested, it is ready to

6

be uploaded to Lawson ProcessServer.

LPS system administratorUsing Lawson ProcessServer

Schedule the service.7

From the menu: LawsonProcess Administrator /Process Scheduling / ByService Definition

24 | Lawson Process Automation Administration Guide

Getting Started

Page 25: Lawson Process Automation Administration Guide

N/AHappens automaticallythrough process execution

Work (requesting sign-off on thePO) appears in the Inbasket ofusers who meet the filteringcriteria for the task.

8

Lawson Process Automation Administration Guide | 25

Getting Started

Page 26: Lawson Process Automation Administration Guide

2Adding Users and Tasks to LawsonProcess Automation

• "Using Variables with an Eclipse-Based Designer: Overview" on page 26

• "Lawson Process Server: User Configuration Menu Overview" on page 28

• "Adding Users and Assigning Tasks to Lawson Process Automation" on page 29

• "Security access needed for Lawson Process Automation users" on page 31

• "What Is Filtering in Lawson Process Automation?" on page 33

Using Variables with an Eclipse-Based Designer: OverviewThis section provides a brief overview of what a variable is. It also explains the types of variablesavailable in the Designer and how they are used.

What is a variable?

A variable is a name that represents a value. A variable can represent both numeric data (which canbe used in calculations) and alphanumeric (letters and numbers that are not used in calculations).

Here are some examples of variables:

• ITMgr_Email: The email address of the person who performs the role of IT Manager.

Suppose you want to create a process that, as a step in its execution, sends a message to yourcompany's IT Manager. If the process sends an email to the role that performs a job instead of tothe actual person currently performing the job, it will always be able to deliver the message, evenif one IT Manager leaves the company and is replaced by someone else. Using variables in thiscase means that you as a process designer would not need to update your process each time anew IT Manager was hired.

• <!appProdline>: This is an example of a variable that is delivered with Lawson.You might use thisparticular variable (and other similar system variables) when you want to create a query that needsto know the name of the Lawson product line associated with a workunit.

26 | Lawson Process Automation Administration Guide

Page 27: Lawson Process Automation Administration Guide

• Who_Is_Supervisor: If you need to send a task or message to the Inbasket of a worker and his orher supervisor, you could create a variable Who_Is_Supervisor that would store the informationobtained from a query to locate the supervisor.

Persistent and non-persistent variablesVariables can be "persistent," meaning they continue to be available throughout the execution ofa process or "non-persistent," meaning they are not available after the event occurs.

Types of Variables

Global service variablesService variables are available with workunits as they are created. They are persistent meaningthat, once they are created, they are available before the process executes, throughout execution,and after execution.

For example, service variable information associated with an Inbasket action is used to create theworkunit (before and during executiong) and still available for viewing even after the user hasperformed the requested action.

Process variablesProcess variables are variables that you as a process designer create on the Start node. Thesevariables are also persistent. In this case, persistence means they last throughout the executionof the process. Any node in the process can make use of the information in these variables duringexecution of the process.

Activity variablesVariables can be created for some activity nodes (in addition to the Start activity). These variablesare persistent in the sense that they last long enough to pass information to the next node. Theyare not available throughout execution of the entire process.

Return (or output) variablesReturn variables are a special type of variable associated with synchronous triggers and the Returnactivity node.

You as a process designer can use the Return activity node to request information to be sent backto the calling (or triggering) application after your process has executed.

More information about triggers, including the difference between synchronous and asynchronoustriggers, and about the Return activity node are discussed in other sections.

Specifying variables for Assign, Branch and Start nodes<!appProdline> is an example of a Lawson-delivered global service variable. When you specifythis variable in most activity nodes you spell it as shown above (the variable name is preceded byan exclamation point and the entire variable is surrounded in angle brackets).

Lawson Process Automation Administration Guide | 27

Adding Users and Tasks to Lawson Process Automation

Page 28: Lawson Process Automation Administration Guide

However, when you use this variable with the Assign, Branch, or Start nodes, which acceptJavaScript expressions (a special type of notation), you do not use "< >" or "!" with variables. Inthis case you simply type the variable name. For example:

appProdline==PROD

More information about creating JavaScript expressions with these nodes is in other sections.

Using queries to locate variables

You can combine queries with variables by storing query results in a variable and then passing thoseresults to another node.

For example, you could query the Landmark database (using the Landmark node) to find out who is auser's manager. Then when you create a User Action node, you can notify the manager if a user doesnot perform a required action within the specified timeframe.

Lawson Process Server: User Configuration Menu OverviewThe User Configuration sub-menu of the Lawson Process Server Administrators main menu has threeoptions: Users, Tasks, and Filters.This topic explains what you can do from each of these menu options.Additional topics explain how to use the features described here.

Filters are optional but they are a powerful tool available from Lawson Process Server. If you areplanning to use them, read the additional information about filters that is available in the LPAdocumentation set.

Users sub-menu

The Users sub-menu is for:

• Adding existing Lawson users to the LPS system.

• Assigning tasks to LPS users.

• Enabling filter for a user (if this was not done when the user was created).

• Linking tasks to filters.

• Assigning User Category values to filters. User categories are the actual filter values that LPS looksfor when it determines which users and tasks to assign work to.You create categories by typingin values (if a particular value previously did not exist) or by selecting an existing value.

Tasks

The task menu is for:

• Creating new tasks.

• Enabling filtering for a task (if this was not done when the task was created).

28 | Lawson Process Automation Administration Guide

Adding Users and Tasks to Lawson Process Automation

Page 29: Lawson Process Automation Administration Guide

Filters

The Filters menu is for creating new filters. Creating a filter simply means assigning a name and thensaving. Linking a filter to a user or a task and assigning category values to a filter is done through theUsers or Tasks menu.

Adding Users and Assigning Tasks to Lawson Process Automation

This procedure describes how to:

• Add users to the Lawson Process Automation (LPA)

• Assign tasks to users.

• Link users or tasks to filters

These steps can be performed in a single operation or you can add a user and then return later toassign tasks or link filters. This section breaks each step into a section in order to provide background.

Before you start• Make sure you are working from the correct product line / data area.

• Make sure that the user you want to make available for work in LPA is an existing actor in theLawson Landmark system.

• If the user will be scheduling actions, ensure that he or she has the appropriate access rights inLandmark security. More information about user access needs for Lawson Process Automation isanother section.

For more information, see "Security access needed for Lawson Process Automation users" onpage 31.

Adding a new user to LPA

An LPA user is someone who has been given access to the product. In order to take actions, they mustalso be assigned to tasks.

1 Access Process Server Administration>User Configuration>Users.

2 From the Actions menu in the Users region, choose Create.

3 In the User dialog, select the arrow in the User field, to open the Actor list. Scroll or filter to find theActor ID you want to add to LPA. Select the actor and choose Select (bottom of dialog box).

4 From the Actions menu, select Save.

You have now added a new user to LPA.

If you want to assign a task or a filter to this user now, you can do so now following instructions in thenext sections.You can also return later to assign tasks and filters.

Lawson Process Automation Administration Guide | 29

Adding Users and Tasks to Lawson Process Automation

Page 30: Lawson Process Automation Administration Guide

Assigning a task to a user

From User Configuration>Users1 Highlight the user, then in User Tasks choose Actions>Create.

2 Choose the task from the Tasks list, choose Select.

3 Add Start and Stop Dates if necessary.

4 From the Actions menu, select Save.

From User Configuration>Tasks1 Highlight the task, then in User Tasks choose Actions>Create.

2 Choose the user from the User list, choose Select.

3 Add Start and Stop Dates if necessary.

4 From the Actions menu, select Save.

Make selections for Start and Stop dates if necessary

• If the assignment is temporary, select Start and Stop Dates.

Figure 9. Screen capture: Assigning a task to a user for a specific timeframe (in this case June 1-30)

• if the assignment is not temporary but should not begin until a future date, select a Start Date only.

• If the assignment is immediate and permanent, leave the date fields blank.

Linking a filter to a user or task when you create the user

If you want to use filters with a user, you can enable filtering when you create a user.

The filter you want to link the user to must exist before you can link.

1 You can link filtering when you a create a new user.

On the dialog box for creating the user, click the Is Filter Enabled button.

2 Tasks can also be enabled for filtering.You can assign a filter to a task by clicking Is Filter Enabledwhen you link a task to a user. A user must also be filter-enabled in order to make use of filteringassociated with tasks.

30 | Lawson Process Automation Administration Guide

Adding Users and Tasks to Lawson Process Automation

Page 31: Lawson Process Automation Administration Guide

Security access needed for Lawson Process Automation usersWhen Lawson Process Automation is installed, the security classes and roles in the following table aredelivered. Other applications might deliver their own classes and roles that provide similar access tothose described here.Your application documentation should explain the behavior of security classesand roles it delivers.

You can assign the delivered roles to Lawson Process Automation users or create your own roles bymixing and matching the available security classes to meet your needs. (Doing this requires knowledgeof Lawson Landmark Technology security tools.)

You can also, if you are expert at working with the Lawson Landmark Technology security tools, createyour own security classes and assign them to roles that you create.

Note: In the table below "_ST" indicates "Standard Template" and is intended to help you recognizea delivered security class or role (as opposed to one you might have created yourself).

Contains these securityclasses

Intended for use byDelivered role

BasicProductLineAccess_STNormal end-users whoreceive work items in theInbasket

InbasketUser_ST

ProductLineAccess_ST

InbasketUser_ST

Lpa_ST

ProcessSchedulingAllAccess_ST

BasicProductLineAccess_STUsers who must performactions on the Landmark jobqueue.

JobQueueServer_ST

ProductLineAccess_ST

JobQueueAccess_ST

BasicProductLineAccess_STProcess developersProcessDesigner_ST

ProductLineAccess_ST

Lpa_ST

ProcessDesigner_ST

ProcessSchedulingAllAccess_ST

Lawson Process Automation Administration Guide | 31

Adding Users and Tasks to Lawson Process Automation

Page 32: Lawson Process Automation Administration Guide

BasicProductLineAccess_STLPA system administratorsProcessServerAllAccess_ST

ProductLineAccess_ST

Lpa_ST

LpaAdmin_ST

ProcessServerAllAccess_ST

ProcessSchedulingAllAccess_ST

ScheduledActionsAccess_ST

ProductLineAccess_STLPA assistant administrators,power users, developers

ProcessServerReadAccess_ST

ProcessServerReadAccess_ST(depending on policies atyour site)

Security class details

As delivered by LPA, the security classes listed in the above table provide access to the following.

• BasicProductLineAccess_ST: In conjunction with ProductLineAccess_ST, provides general productline access that all Landmark actors need.

• InbasketUser_ST: Access to user's own Inbasket for reviewing and taking action on work items.

• Lpa_ST: Access to the Lawson Process Automation system, including menus in Lawson RichClient. All LPA users need this.

• LpaAdmin_ST: Access to Lawson Process Automation administration menu options in LawsonRich Client.

• JobQueueAccess_ST: Access to the Landmark job queue.

• ProcessDesigner_ST: Access to the business classes that the Lawson Process Designer toolneeds.

• ProcessSchedulingAllAccess_ST: Provides read, write access to LPA triggering features.

• ProcessServerAllAccess_ST: Provides read, write access to all LPA features.

• ProcessServerReadAccess_ST: Provides read access to all LPA features.

• ProductLineAccess_ST: In conjunction with BasicProductLineAccess_ST, provides general productline access that all Landmark actors need.

• ScheduledActionsAccess_ST: Provides the ability to schedule Landmark actions.

32 | Lawson Process Automation Administration Guide

Adding Users and Tasks to Lawson Process Automation

Page 33: Lawson Process Automation Administration Guide

What Is Filtering in Lawson Process Automation?A filter is an additional level of grouping for users and workunits that get assigned to them. If you thinkof a Task as a group of users who will be assigned a work item, then a Filter is an additional way ofrefining a Task so that only the appropriate persons are assigned to the work.

A simple example is the best way to explain. Suppose you have defined the following Tasks at yoursite.

• President

• Vice President

• Division Manager

• Department Head

For most tasks, this structure works well for your company. However, when it comes to approvingpurchase orders, which is a work item assigned by processes to Department Heads, it does not workas well. This is because it doesn't make sense for all Department Heads to be routed purchase ordersfor all departments in the company. One way you can get around this is to create Filters for theDepartment Head Task.

You might the end up with a structure that looks like this:

UserDepartment (Filter)Department Head (Task)

JerryAccountingApprovePO

MaryHRApprovePO

HarryHRApprovePO

The Department Head Task is assigned to Jerry, Mary, and Harry but each user has a uniqe DepartmentFilter.

When a process that includes the ApprovePO with Filter Accounting executes, only Jerry will see it.

When a process that includes the ApprovePO with Filter HR executes, only Mary will see it. Likewisewith the Sales Filter and Harry.

If a process that includes a task ApprovePO but which does not contain a filter executes, Jerry, Mary,and Harry will all receive it.

Enabling Filtering

Any user for whom filtering is to be used must have filtering enabled at the User level. This means theIs Filter Enabled checkbox must be checked in the user profile.

All tasks with which you want to use filtering must also have filtering used for the task. If you do notenable filtering for a task, the task will not be filtered from any users, even if the user profile is enabledfor filtering.

Let's look to Jerry, Mary, Harry again for some examples.

Lawson Process Automation Administration Guide | 33

Adding Users and Tasks to Lawson Process Automation

Page 34: Lawson Process Automation Administration Guide

Example 1: Filtering used correctly at the user and task levelJerry has been interviewing candidates for an open accountant position on his team. He has madehis choice which must now be routed through the appropriate channels. A work item to gather theapprovals will execute and will be routed to the DepartmentHead Task with filtering enabled for"Accounting" and "HR."

The table below shows what happens when the process executes.

ReasonResultsWork item routed to

He is assigned to theAccounting Filter

Received work item asintended.

Jerry

She is assigned to the HRFilter

Received work item asintended.

Mary

He is not assigned to either theAccounting or HR Filter

Did not receive the work itemas intended.

Larry

Example 2: Filtering used incorrectly at the user levelIn this example Jerry is again interviewing candidates. The work item to gather final approvals forhis choice is the same as in Example 1 (work items routed to the DepartmentHead Task with filteringenabled for "Accounting" and "HR"). The difference in this case is that when the LPS systemadministrator created Harry as LPA user, his profile was not enabled for filtering.

ReasonResultsWork item routed to

He is assigned to theAccounting Filter

Received the work item asintended.

Jerry

She is assigned to the HRFilter

Received the work item asintended.

Mary

Because his user profile doesnot include filtering, all Tasks

Received the work item eventhough he was not intended to.

Larry

that are assigned to his profileare circulated to him whetheror not the task itself includesfiltering.

Example 3: Filtering used incorrectly at the task levelIn this example Jerry is still ready to hire his preferred candidate. The work item to gather finalapprovals for his choice is again the same as in Example 1 (work items routed to theDepartmentHead Task with filtering enabled for "Accounting" and "HR"). This time the differenceis that when the LPS administrator created the task ApproveHire, she didnot enable it for filteringeven though all three of our users have been enabled for filtering.

34 | Lawson Process Automation Administration Guide

Adding Users and Tasks to Lawson Process Automation

Page 35: Lawson Process Automation Administration Guide

ReasonResultsWork item routed to

No filtering. In this case, it's nota problem because Jerry

Received work item asintended.

Jerry

should sign off on thisparticular work item.

Mary, too, should see the workitem so this is also not aproblem.

Received the work item asintended.

Mary

Because a filter was omittedfrom the task, Harry receivedan inappropriate work item.

Received the work item eventhough he was not intended to.

Larry

Lawson Process Automation Administration Guide | 35

Adding Users and Tasks to Lawson Process Automation

Page 36: Lawson Process Automation Administration Guide

3Customizing Inbasket Displays

• "Creating Custom Displays for Inbasket Actions" on page 36

Creating Custom Displays for Inbasket ActionsCustomers who use the Landmark application, Lawson Process Automation, can create custom displaysfor user actions. (User actions are items, such as tasks, that are sent to user's Inbaskets throughLawson Process Automation.)

On the UserAction activity node in Lawson Process Designer, you can define in XML what you wantto display in Lawson Rich Client and in Lawson Smart Office.

General steps

The configuration you need to perform to create a custom display depends on the type of system fromwhich the action originates. For example, a request from an M3 program is specified differently froma request from an S3 application which is also different from a Landmark application and so on.

All custom displays have these things in common:

• Perform the configuration in Lawson Process Designer on a UserAction activity node, Work tab.

• From the dropdown list, select the Display type.

• Configure as necessary depending on the type.

The sections that follow provide information about each display type.

Display types

NoneIf you select "None" for display type, Lawson Smart Office does not display the Details tab.

36 | Lawson Process Automation Administration Guide

Page 37: Lawson Process Automation Administration Guide

Figure 10. Screen capture: Default Inbasket display in Lawson Smart Office

Action requestAn action request displays as a web link to Lawson Rich Client web interface.

When you select "Action request," you will be prompted to select the Approver state, Approver orFinal Approver.

Figure 11. Screen capture: Landmark action request link shown in Lawson Smart Office (the Lawson Rich Clientdisplay is similar)

Landmark applicationThe Landmark application display type presents the user with a link to the specified Landmarkapplication.

When you select "Landmark application" display type on the Work tab for the UserAction activitynode, you are prompted to supply:

• Web app: The name of the application

• Business class

• Navigation name

• Names of keys and key values

Lawson Process Automation Administration Guide | 37

Customizing Inbasket Displays

Page 38: Lawson Process Automation Administration Guide

Figure 12. Screen capture: Landmark application link shown in Lawson Smart Office (the Lawson Rich Clientdisplay is similar)

Landmark URIThe Landmark URI display type presents the user with a link to the specified Landmark application.

When you select "Landmark URI" display type on the Work tab for the UserAction activity node,you are prompted to supply a URI to a Landmark component.

Figure 13. Screen capture: Specifying a Landmark URI

Figure 14. Screen capture: Landmark URI Inbasket display (shown in Lawson Smart Office, the Lawson RichClient version is similar)

ContentThe Content display type is for including additional information from an outside source with a workitem. For example, one use of this display type would be to include review articles of items beingconsidered for purchase. The information is pasted into users' Inbaskets.

When you select the Content display type on the Work tab for the UserAction activity node, youcan click the Import button to locate the content you want to appear in the Inbasket.

38 | Lawson Process Automation Administration Guide

Customizing Inbasket Displays

Page 39: Lawson Process Automation Administration Guide

Figure 15. Screen capture: Content display type

FileLike, the Content display type, the File display type is for including additional information from anoutside source with a work item.The example of including review articles of items being consideredfor purchase also applies here. In this case, you supply a location on a server for the file.

When you select the File display type on the Work tab for the UserAction activity node, you specifythe location of the file on the server.

Figure 16. Screen capture: Content display type

URIThe URI display type presents the user with an external web link.

When you select the "URI" display type on the Work tab for the UserAction activity node, you areprompted to supply a URI.

Lawson Process Automation Administration Guide | 39

Customizing Inbasket Displays

Page 40: Lawson Process Automation Administration Guide

The result is a link to the URI in users' Inbaskets.

S3 applicationThe S3 application display type displays a link to an S3 form.

To use this display type, you must be knowledgeable about the S3 application and how fields, keysand so on must be referenced by calling applications.

When you select the "S3 application" display type on the Work tab for the UserAction activity node,you are prompted to supply the following information:

• Token: The complete ID of the form you want the user to link to, for example, HR11.1.

• Product line

• Keys: Values for key fields

• View form: If this option is selected, the result is an internal link to the form in users' Inbaskets.

S3 URIThis display type can be used to activate when an action, for example, a key press, has occurredon an S3 application.

To use this type of display, you must be familiar with SForms protocol. (Information is in the SFormsDeveloper's Guide.)

When you select the "S3 URI" display type on the Work tab for the UserAction activity node, youare prompted to supply a URI in the correct format, for example:

sforms://cu01.1?_PDL=YOUR_APP_PL&HK=USD

The result is a link to the form with the specified selection appearing in users' Inbaksets.

M3 applicationThe M3 application display type displays a link to an M3 form.

When you select the "M3 application" display type on the Work tab for the UserAction activity node,you are prompted to select information that defines the information to be used in the display.

The result is an internal link to the form in users' Inbaskets.

DescriptionName

The name of the M3 program to start. This selection isrequired.

program

The name of the M3 database table. This selection isrequired.

tablename

The panel to open.panel

The option to use when opening the panel.option

40 | Lawson Process Automation Administration Guide

Customizing Inbasket Displays

Page 41: Lawson Process Automation Administration Guide

The start panel for the panel sequence (set by the BusinessEngine program).

startpanel

The panel sequence (set by the Business Engine program).panelsequence

The name of the field to set keyboard focus to (set by theBusiness Engine program).

focus

Indicates if the start panel should be used. (True, false;default is true.)

includestartpanel

The inquiry type to use (set by the Business Engineprogram).

inquirytype

Select the unique key names and values for the record.keys

This selection is required.

M3 URIThe M3 URI display type displays a link to an M3 form.

This section describes syntax for an URI.

Required parameters

The parameters in this section are mandatory.

ConstraintsExample valueDescriptionName

Up to 10uppercasecharacters

MMS003The name of the M3program to start.

program

MITFACThe name of the M3database table.

tablename

M9CONO,330,M9FACI,A01,M9ITNO,TEST

The unique key namesand values for the record.The parameter should

keys

contain "key-1,value-1,key-2,value-2,key-n,value-n",see example. The valuesshould be URL encodedusing UTF-8.

Optional parameters

The parameters in this section are optional.

Lawson Process Automation Administration Guide | 41

Customizing Inbasket Displays

Page 42: Lawson Process Automation Administration Guide

ConstraintsExample valueDefault valueDescriptionName

1 uppercasecharacter. E-O | Q-Z

EnoneThe panel toopen.

panel

| 1-9 (A, B, C, D,and P are not validfor bookmarks)

Numeric 1-992noneThe option touse when

option

opening apanel.

A or BBSet by theBusiness

The start panelfor the panelsequence.

startpanel

Engineprogram.

Up to 10 uppercasecharacters

EFGSet by theBusinessEngineprogram.

The panelsequence

panelsquence

Up to 10 uppercasecharacters

WWITNOSet by theBusinessEngineprogram.

The name ofthe field to setkeyboardfocus to.

focus

"true" or "false" onlyfalsetrueIndicates if thestart panel

includestartpanel

should beused.

1Set by theBusiness

The inquirytype to use

inquirytype

Engineprogram.

W1OBKV,20noneFields to seton the start

fields

panel. Thesyntax for thevalue is thesame as forthe keysparameter, seeabove.

M3 URI examples:

Example 1: Minimal

42 | Lawson Process Automation Administration Guide

Customizing Inbasket Displays

Page 43: Lawson Process Automation Administration Guide

This bookmark uses only the minimum required parameters to start MMS003 and position on theitem TEST.

mforms://bookmark?program=MMS003&tablename=MITFAC&keys=M9CONO%2c330%2cM9FACI%2cA01%2cM9ITNO%2cTEST%2b%2b%2b%2b%2b%2b%2b%2b%2b&panel=B

Example 2: Detail panel

This bookmark opens the E-panel in MMS003 for the item TEST.

mforms://bookmark?program=MMS003&tablename=MITFAC&keys=M9CONO%2c330%2cM9FACI%2cA01%2cM9ITNO%2cTEST%2b%2b%2b%2b%2b%2b%2b%2b%2b%2b%2b&option=2&panel=E

Example 3: Detail panel without start panel

This bookmark opens the E-panel in MMS003 for the item TEST but the start panel is not part ofthe panel sequence.

mforms://bookmark?program=MMS003&tablename=MITFAC&keys=M9CONO%2c330%2cM9FACI%2cA01%2cM9ITNO%2cTEST%2b%2b%2b%2b%2b%2b%2b%2b%2b%2b%2b&option=2&panel=E&includestartpanel=false

Example 4: All parameters

This bookmarks uses all available parameters.

mforms://bookmark?program=MMS003&tablename=MITFAC&keys=M9CONO%2c330%2cM9FACI%2cA01%2cM9ITNO%2cTEST%2b%2b%2b%2b%2b%2b%2b%2b%2b%2b%2b&option=2&panel=E&includestartpanel=true&startpanel=A&panelsequence=E&inquirytype=1&focus=M9REWH

HTMLThis display type displays in Lawson Smart Office as a link to the classic ProcessFlow IntegratorWeb Inbasket.

When you select the "HTML" display type on the Work tab for the UserAction activity node, youare prompted to supply the location of the recsum.html that should be updated (per the applicationyou are working with).

LSO Display fileThis display type displays in Lawson Smart Office as custom content.

When you select the "LSO Display file" display type on the Work tab for the UserAction activitynode, you are prompted to supply the location of an XML file that contains the custom content youwant to display in users' Inbaskets.

The result is that the user Inbasket displays according to your needs as specified by your XMLcode.

Lawson Process Automation Administration Guide | 43

Customizing Inbasket Displays

Page 44: Lawson Process Automation Administration Guide

Figure 17. Screen capture: Example custom Inbasket display

LSO Display contentThis display type displays in Lawson Smart Office as custom content.

When you select the "LSO Display content" display type on the Work tab for the UserAction activitynode, you are prompted to import the XML custom content that you want to display in users'Inbaskets.

The result is that the user Inbasket displays according to your needs as specified by your XMLcode.

Figure 18. Screen capture: Example custom Inbasket display

S3 custom formUse this display type to display a link to your custom version of a Lawson form.

When you select the "S3 custom form" display type on the Work tab for the UserAction activitynode, you are prompted to specify the name of your custom form, for example:

cu01.1.myversion.xml

The result is a link to the custom form in users' Inbaskets.

44 | Lawson Process Automation Administration Guide

Customizing Inbasket Displays

Page 45: Lawson Process Automation Administration Guide

Preparing Processes to Run

• "Triggering Processes" on page 46

Lawson Process Automation Administration Guide | 45

Page 46: Lawson Process Automation Administration Guide

4Triggering Processes

• "Configuring a Process for Runtime" on page 46

• "Triggering a Process by Service Definition" on page 48

• "Triggering a Process by Process Definition" on page 49

• "Preparing Processes to Launch from M3 Forms (M3 only)" on page 49

• "Scheduling an Action to Run in Lawson Process Automation" on page 53

Configuring a Process for Runtime

This topic describes runtime configuration that an administrator can make to a process.This configurationaffects such things as level of detail to be maintained in log files and how notification about processexecution will occur.

Before you start The process you plan to configure must already be uploaded onto the system.

1 From the Process Server Administrator menu, click Process Definitions and then select User, System,or Application Defined Processes.

For more information, see "What are User, System, and Application Defined Processes?" on page47.

2 From the list of available processes, double-click the process you want to configure.

3 From the Process Definition dialog box, make selections for the following items:

DescriptionOption

This number is the version of the process thatwill execute (if multiple versions have been

Current Process Version

created). By default the system always runs withthe newest version (highest number).

46 | Lawson Process Automation Administration Guide

Page 47: Lawson Process Automation Administration Guide

A process must be enabled in order to run.When you are ready for a process to begin

Is Process Enabled

executing, check to make sure it has beenenabled.

If you want to log all calls to activity nodes in aprocess, enable this log. Depending on the size

Is Activity Node Log Enabled

of a process, how many actions it takes, and soon, log files can get large very quickly.

Two levels of logging detail are available.Log Level

Debug: Logs every action; equivalent to asystem trace. Log files can get large veryquickly.

No Debug: Logs successful completions andfailures only.

This option determines when a systemadministrator receives an email notification

Notify by Email

about flow execution. Select one of the followingoptions:

• Upon Completion: Sends an email only uponsuccessful completion.

• Upon Failure: Sends an email only uponnon completion.

• Upon Completion or Failure: Sends an emailin all cases.

• None: No email is sent in any case.

If more than one version of a process exists,this option lets you change the version of theprocess that will execute.

Process Version

What are User, System, and Application Defined Processes?

Processes can be defined in several ways:

• User-defined: These are processes that have been created using Lawson Process Designer atyour site. After they have been successfully uploaded onto the server that runs Lawson ProcessServer, they are available for configuring.

• System-defined: These are processes that are delivered by the Lawson Landmark environment.

• Application-defined. These are processes that are delivered by a Lawson application such asLawson Talent Management. These processes are business events such as, "AddAddress,"

Lawson Process Automation Administration Guide | 47

Triggering Processes

Page 48: Lawson Process Automation Administration Guide

"ChangePayRate," and "BeginLeave." They can be considered templates; designers at your sitecan make changes to them as needed.

Additional information about these processes is in your application documentation.

Triggering a Process by Service Definition

This topic describes a method for causing (or triggering) a process to run. This method makes use ofservice definitions.

An event for which a resulting series of activities must take place could occur at any time at your site.Here is an example: A department head decides to request a new position. As a result, many peopleneed to review the request to accept or reject it.

A process (created using Lawson Process Designer) routes and tracks the sign-offs that need to occur.In this case, a service (delivered with Lawson applications) triggers the launching of the process. (It isalso possible to create your own service; this topic does not describe how to create a service.)

Configuring the service

Lawson applications deliver services.Typically, configuring a service means selecting it and configuringit for use at your site. Configuring it for use at your site means determining the circumstances thatcause the process to launch.

1 From the Process Server Administrator menu, select Process Scheduling / By Service Definition.

2 From the displayed list of services, double-click the name of the service that you want to trigger theprocess.

3 For Work Title, type a name for this particular work item.

For example, if you are scheduling the RequestLeave service, the work title could be: "Requestleave of absence for Chicago employee"

Figure 19. Screen capture: Triggering a Process by a Service

4 If filters have been enabled for users and tasks associated with this service, select the Filter Key.

If you are using a Filter Key, you must also type the Filter Value. For example, if you selected "City"for a Filter Key, then "Chicago" might be a valid value.

48 | Lawson Process Automation Administration Guide

Triggering Processes

Page 49: Lawson Process Automation Administration Guide

5 If the service requires information from the application that it is used with, populate "Apps Key" and"Apps Value" with the appropriate data.

6 The Criteria tab lets you supply up to three levels of optional criteria.

7 If variables are enabled for the service, the Variables tab is active.

8 If links to documents or other information is available for use with this service, the Related Links tabis active.

9 When you are finished defining the circumstances, click Actions / Save.

Triggering a Process by Process Definition

When a process exists and has been uploaded to the server, it is available to be configured for for useat your site. Configuring it for use at your site means determining the circumstances that cause theprocess to launch.1 From the Process Server Administrator menu, select Process Scheduling / By Process Definition.

2 Select the process name.

3 Type a name for this particular work item.

For example, if you are scheduling a process called "NewLaptopRequest," the work title could be:"Request laptop for Chicago employee"

4 If filters have been enabled for users and tasks associated with this service, select the Filter Key.

If you are using a Filter Key, you must also type the Filter Value. For example, if you selected "City"for a Filter Key, then "Chicago" might be a valid value.

5 When you are finished defining the circumstances, click Actions / Save.

Preparing Processes to Launch from M3 Forms (M3 only)

This topic describes how to set up M3 to launch Lawson Process Automation processes.

M3 Business Engine always triggers a service.The service can, in turn, launch one or more processes.Criteria, configured in Lawson Process Automation, specify the conditions when a service shouldactivate a process. (How to configure criteria for Lawson Process Automation is described in anothersection of this document.

This topic describes how to trigger processes from within an M3 form. There are several ways to dothis.You can:

• If you are running Lawson Process Automation through the Lawson Grid, you will use the EventHub activity to do this. (More information about the event hub is in another section.) This is thepreferred method for triggering if you use the Grid but is available only with the Grid.

Lawson Process Automation Administration Guide | 49

Triggering Processes

Page 50: Lawson Process Automation Administration Guide

• Set up an application message, that is, a message that comes from a particular application, totrigger a process.

You do this through Application messages (CRS424).

• Create Java calls.

In all cases, movex.properties must be configured.

All procedures are described in the sections that follow.

❏ Configure movex.properties to support triggering processes

This configuration must be performed one time for any system that will launch processes fromforms.

____ Open movex.properties and make sure that the following properties are set:

DescriptionProperty

This is name of the RMI Server.app.pfi.rmiserver=<server>

The name of the user that the process runs as.app.pfi.user=<user>

The password of the user that the process runs as.app.pfi.user=<pwd>

The number of the Landmark asynchronous port.app.pfi.asyncport=<port>

This parameter must be set as "LPA."app.pfi.lpa.enabled=LPA

The location of the data area (or product line) onthe Landmark / Lawson Process Automation side.

app.pfi.dataarea=<dataarea>

❏ Configure an application message to trigger a process

Use this procedure to configure a message that will be used to trigger a process.____1 Open Application Messages (CRS424).

50 | Lawson Process Automation Administration Guide

Triggering Processes

Page 51: Lawson Process Automation Administration Guide

Figure 20. CRS424 showing an application message (131) that is triggering a process

____2 Locate the message that you want to trigger a process from the list of messages and thenadd a "1" in the PFI column.

This means that a Lawson Process Automation will be triggered any time an applicationsends the message.

____3 Click Next to configure the service name.

____4 On the screen that appears, set the flag and configure the name of the service that will betriggered.

If the service does not yet exist, add it through the Lawson Process Server administrationmenu using Lawson Rich Client.

Lawson Process Automation Administration Guide | 51

Triggering Processes

Page 52: Lawson Process Automation Administration Guide

Figure 21. CRS424 showing the name of the service (LPAService) that will launch whenever the message"Standard cost is zero" is generated by an application

❏ Triggering a service using Java calls

This procedure shows the Java calls that can be placed in an M3 application to trigger a LawsonProcess Automation process.

Use this callTo

cPFIAsyncTrigger2 trigger = newcPFIAsyncTrigger-2(this);

Initialize the trigger object

trigger.setFlow("fromM3LPA");Set the trigger name

trigger.addVariable("PRM_CONO", PHEAD.getCONO());

Add optional variables that should beavailable in the flow in Lawson ProcessAutomation

trigger.addVariable("V1", "For FreeUsage");

trigger.setCriteria1("C1");Set criteria to be used for LaunchingLawson Process Automation processes.

trigger.setCriteria1("C2");

trigger.setCriteria1("C3");

int ret = trigger.fire();Trigger the service

52 | Lawson Process Automation Administration Guide

Triggering Processes

Page 53: Lawson Process Automation Administration Guide

Scheduling an Action to Run in Lawson Process Automation

When a service or process has been configured for triggering, you can schedule its associated actionto run. This topic describes how to configure scheduling.

The processing described in this topic is based on the Landmark Asynch framework. Additionalinformation about Asynch is in the document: Landmark Administration: Server Setup and Maintenance.

Important: Any user who will be scheduling an action must have the appropriate Landmark securityaccess rights.

Additional information is in another section of this infocenter. For more information, see "Security accessneeded for Lawson Process Automation users" on page 31.

1 Select the service or process which you want to schedule to run.

a From the Lawson Server Administrator main menu, select Process Scheduling.

b From the sub-menu that appears, select By Service Definition or By Process Definition, dependingon which type of definition you want to schedule.

c You will be on the list of available Services or Processes. Select the service or process you wantto schedule and then click Actions / Schedule.

2 On the Schedule dialog box, make selections for the following items:

• Scheduled Action Name: Type a name for the action. This is the name that will appear on theTools menu under My Scheduled Actions.

• Notify Recipient Email address: Type the email address of the person, for example, the systemadministrator, who should be notified about the status of the run.

• Notification Type: Select when the notification should happen. Options are:

• Blank: Notification defaults to OnFailure if an emaill address is entered (or defaults in fromthe Actor); otherwise, it never notifies (see Never below).

• Never: Disables notification

• On Failure: Notification occurs only when the process does not run successfully

• Always: Notification occurs for all run attempts, successful and not

• Schedule Type: Select one of the following options.

• Run Once: The process will run one time only.

• By Frequency In Seconds: Typically not used at a customer site. The process will run onceevery specified number of seconds.

• By Date In Month: The process will run on a specific day of the month.

• By Day: The process will run every day on a specific day of the week.

Lawson Process Automation Administration Guide | 53

Triggering Processes

Page 54: Lawson Process Automation Administration Guide

• By Week Number: The process will run based on the schedule information. For example,the schedule might indicate that the process should run every week, only on a specific week,or every year in a specific week.

• First Time To Run: Select the date, day, week and so on, for the initial run.

• Override Action Failure Configuration: If you want to configure a unique method for handling afailure, select this option.When you click Next on the Schedule dialog box, you will be presentedwith a list of options for configuring failures.

3 When you are finished making selections on the Schedule dialog box, click Next. If you do not needto configure overriding action failure behavior, click Finish.

If you have selected the Override Action Failure Configuration option, when you click Next, you willbe at a dialog box for configuring action to be taken upon "misfire" (failure).

Configurable options:

• Strategy: How to proceed when a misfire occurs

• Reporting: Determines whether or not AsyncActionMisfire records should be created.

• Threshold: Acceptable timeframe for an action to run before a misfire is determined.

a For Strategy, select misfire behavior for the run.

Options are:

• Do Nothing: No further attempts will be made.

• Run Once: Make one attempt, skipping all missed executions.

• Run All Processes Scheduled: Run all scheduled processes, including all missed executions.

b For Report Options, select whether AsyncActionMisfire records should be created.

• No Report: Records not created.

• Report All Processes: Create records for all outcomes.

c Select options for Threshold Minutes.

Threshold determines how long of a grace period is allowed before determining that a misfirehas occurred. For example, if an action was scheduled to run at 1:30 PM and the threshold timewas 10 minutes, it would be considered acceptable for the action to actually run between 1:30and 1:40 PM. If it has not run after 1:40 PM, this is considered a misfire and misfire processingoccurs.

54 | Lawson Process Automation Administration Guide

Triggering Processes

Page 55: Lawson Process Automation Administration Guide

Configuring Lawson Process Serverand Connecting Servers

• "Configuring Lawson Process Server and the Grid" on page 56

• "Configuration Sets" on page 68

• "Creating Connections to Specific Types of Servers" on page 70

• "Jar File Configuration" on page 83

• "Configuring Channels and Receivers for Use with Lawson Process Automation" on page 85

Lawson Process Automation Administration Guide | 55

Page 56: Lawson Process Automation Administration Guide

5Configuring Lawson Process Server andthe Grid

• "Configuring Grid and other properties for Lawson Process Automation" on page 56

Configuring Grid and other properties for Lawson ProcessAutomationThis section describes properties that control general operation of Lawson Process Server. Thisconfiguration is performed in the Lawson Grid.

This section describes the Lawson Process Automation properties which are in the "LPA" section ofGrid properties. For general information about how to access and use Lawson Grid, refer to the LawsonGrid administration section of the document Lawson Landmark Technology Server Setup andMaintenance Guide which is available in the Landmark infocenter.

LPA properties: General information

Configuring some of the LPA properties can take trial and error. For example, suppose you expect thatthe maximum number of processes that you might need to run simultaneously is 5. To ensure thatprocesses would always have the database connections they need, you might initially set the parameterfor number of database connections in the pool "pfi.dispatcher.AccessPoolSize") to 10 to 15. If youbegan receiving messages that database requests were being rejected, it might indicate that you needto increase the number of connections in the access pool. If, on the other hand, you never receivemessages that database requests have been denied but your system performance is not what youwant it to be, it might indicate that you have allocated more connections in the AccessPool than youneed.

Many of these properties work in conjunction with another parameter. For example, thepfi.dispatcher.KeepAliveTime parameter determines how long to keep an idle thread in the core pool.The pfi.dispatcher.CorePool parameter reads the KeepAliveTime parameter and "kills" threads in thepool that have been in the pool longer than the specified timeframe.

The sections that follow describe the properties and how to configure them.

56 | Lawson Process Automation Administration Guide

Page 57: Lawson Process Automation Administration Guide

Example: Changing an LPA property in the Grid

This section provides a step-by-step example of changing an LPA property, in this case, escalatorpolling frequency (that is, how often LPA checks Inbaskets for work items that should be escalated fornon-response and for user action reminders). For our example, we will change the default of 30 minutesto 10 minutes.

1 Access the Lawson Grid. (If you need instructions for how to do this, refer to Lawson Griddocumentation.)

2 From the main Grid page, select Advanced from the menu at the top of the page.

Figure 22. Lawson Grid, "Advanced" is near the top of the page

3 Navigate to Configuration -> Configuration Manager -> Applications and then select the correctapplication.

Figure 23. Selecting the correct application, in this example "Landmark-MearsPark" is correct

4 Select Edit Properties and then scroll to the LPA Properties section of the page.

Most of the properties described in the sections that follow can be updated in LPA Properties. (Mailand timeout properties, described at the end of this section, are updated in LPA properties throughLawson Landmark Technology or the Landmark Web UI.)

5 Locate the property pfi.escalator.pollingFrequency.

Lawson Process Automation Administration Guide | 57

Configuring Lawson Process Server and the Grid

Page 58: Lawson Process Automation Administration Guide

Figure 24. Updating a property for GridHost

6 Update the property by typing "10" in the appropriate field: GridHost or Any Host.

• Update GridHost if you are updating the properties for only the current instance of LawsonProcess Automation.

• Update Any Host if you use horizontal scaling and have multiple installations of Lawson ProcessAutomation, all of which should have the same properties.

7 After you type the correct number of minutes, click Save on the pop-up dialog box and then clickSave again from the toolbar (disk icon).You will be prompted to click Save one final time (threeSaves total).

Figure 25. Saving a property

General properties

The following properties are for specifying .jar files to be added to the classpath and data areas to beused for process execution.

DescriptionParameter

Copy any external .jar files, for example, JDBC, that you want touse in a process to this location:

grid.app.classpath

$LACFGDIR/LPS/jars

58 | Lawson Process Automation Administration Guide

Configuring Lawson Process Server and the Grid

Page 59: Lawson Process Automation Administration Guide

Specify the data area for the Lawson Process Server to use.grid.app.dataareas

Example:

grid.app.dataareas=PROD

Database connection properties

Lawson Process Server creates a pool of database connections to be used for making database calls.This pool ensures that a connection to the database is always available when a process executionrequest made. The pool also makes processes execute faster and allows connections to be reused.

DescriptionParameter

Minimum number of database connections in thepool.

pfi.dataAccessPool.min

Default = 0

Maximum number of database connections in thepool.

pfi.dataAccessPool.max

Default = 2000

Maximum length of time, in milliseconds, that anidle connection should remain in the pool when

pfi.dataAccessPool.holdTime

the pool contains more than the number of objectsspecified in "pfi.dataAccessPool.min."

Default = 120000 (2 minutes)

Maximum time, in milliseconds, to wait for adatabase connection to become available beforetimeout occurs.

pfi.dataAccessPool.maxWaitTime

Default = 10000 (10 seconds)

Reusing an existing connection can improveperformance because time is saved by not havingto reestablish a database connection.

pfi.dataAccessPool.reuseLimit

This parameter specifies the number of times adatabase connection can be reused.

Default = 2000

Thread pool properties

Thread pools provide improved performance when executing large numbers of process executionrequests, because the threads are created ahead of time and are waiting for the requests. Thread

Lawson Process Automation Administration Guide | 59

Configuring Lawson Process Server and the Grid

Page 60: Lawson Process Automation Administration Guide

pools also provide a way to limit the number of threads used by Lawson Process Server to ensure thatresources are managed effectively.

The following properties let you configure the number of processes the server can executesimultaneously.

DescriptionParameter

Maximum number of threads to keep in the pool.If a thread is idle for the time specified by pfi.

pfi.dispatcher.CorePoolSize

dispatcher.KeepAliveTime, the thread will bepurged.

System administrators can change thisconfiguration as needed to ensure efficientrunning of the system in conjunction withresources needed by other systems.

Default = 2

Time in seconds to keep the thread alive in thepool when a thread is idle.

pfi.dispatcher.KeepAliveTime

Default = 5 minutes

The size of the queue for workunits or Inbasketactions waiting for a thread.

pfi.dispatcher.QueueSize

Default = unlimited

Polling frequency properties (general)

The properties in this section control the frequency with which Lawson Process Server polls for suchthings as work escalation, reminders, and for new workunits.

DescriptionParameter

Polling frequency, in minutes, for Lawson ProcessServer to look for work escalation and remindersmessages for Inbasket.

pfi.escalator.pollingFrequency

Default = 30 minutes

Polling frequency, in minutes, for workunitsneeding processing.

pfi.workunit.pollingFrequency

Default = 30 minutes

60 | Lawson Process Automation Administration Guide

Configuring Lawson Process Server and the Grid

Page 61: Lawson Process Automation Administration Guide

Polling frequency properties M3

Separate connection pools are maintained for each "data source", which is a combination of M3 hostand M3 port. This means each "M3 server" has its own connection pool.

Within each connection pool, subpools are created for each user + M3 program, which prevents anunused connection for a user to be reused by a different user or a different M3 program.

Requests to borrow a connection from the pool will be honored as long as the subpool for the user +M3 program has not reached the limit of active connections (pfi.pooling.m3MaxActiveConnections).

If the limit is reached, pfi.pooling.m3MaxConnectionWaitSec determines if a failure happens immediately,a wait happens for a period of time then fails, or an indefinite wait happens.

When a connection is returned to the pool, if the limit for idle connections has been reached then theconnection is closed, otherwise it goes to the pool. An "eviction" process can be configured(pfi.pooling.m3TimeBetweenEvictionRunsSec) which will scan for unused connections that can beremoved. Any connection that has been in the pool for 30+ mins (currently not configurable) will beclosed.

Validation of unused connections can be performed before the pool hands out a connection. If aconnection is "invalid", it is removed and a new connection is created before being handed out by thepool.

DescriptionParameter

Enables or disables M3 connection poolingpfi.pooling.m3UsePooledConnections

Default = false

Maximum number of active connections for ALLusers + M3 programs. A negative number meansno limit.

pfi.pooling.m3MaxTotalConnections

Default = -1

Maximum number of active connections for a user+ M3 program. A negative number means no limit.

pfi.pooling.m3MaxActiveConnections

Default = 10

Max number of idle connections for a user + M3program. A negative number means no limit. The

pfi.pooling.m3MaxIdleConnections

pool will have at least this many connections forthe user + M3 program.

Note: Zero (0) means all returned connectionsare closed which results in no pooling.

Default = 2

Lawson Process Automation Administration Guide | 61

Configuring Lawson Process Server and the Grid

Page 62: Lawson Process Automation Administration Guide

Time (seconds) to wait for an availableconnection, if pool is full for the user + M3program.

pfi.pooling.m3MaxConnectionWaitSec

Options are:

• 0 = immediate failure

• -1 = indefinite wait

• >0 = wait for specified time, then fail

Default = 300

Determines how often the eviction process is run.(It should be configured to run infrequently.) -1

pfi.pooling.m3TimeBetweenEvictionRunsSec

turns off the eviction process. When enabled,connections idle for 30 minutes are closed.

Default = -1

Enables or disables the verification of connectionspfi.pooling.m3EnableConnectionValidation

Default = false

Connection validation for M3 polling propertiesWhen connection validation is enabled, unused connections in the pool are first validated beforebeing given out. An invalid connection will be closed and a new connection created before it ishanded out.

Important: The M3 server has a configuration option that automatically closes any idle connections.The default is 10 minutes. Care should be taken to configure this correctly in relation to the M3connection pool setup.

Polling frequency properties JDBC

Separate connection pools are maintained for each "data source", which is a combination of JDBCDriver Name and JDBC URL. This means each "database" has its own connection pool.

Within each connection pool, subpools are created for each user which prevents an unused connectionfor one user to be reused by a different user.

Requests to borrow a connection from the pool will be honored as long as the subpool for the user hasnot reached the limit of active connections (pfi.pooling.jdbcMaxActiveConnections).

If the limit is reached, pfi.pooling.jdbcMaxConnectionWaitSec determines if a failure happensimmediately, a wait happens for a period of time then fails, or an indefinite wait happens. When aconnection is returned to the pool, if the limit for idle connections has been reached, then the connectionis closed, otherwise it goes to the pool.

62 | Lawson Process Automation Administration Guide

Configuring Lawson Process Server and the Grid

Page 63: Lawson Process Automation Administration Guide

An "eviction" process can be configured (pfi.pooling.jdbcTimeBetweenEvictionRunsSec) which willscan for unused connections that can be removed. Any connection that has been in the pool for 30+minutes (currently not configurable) will be closed.

Validation of unused connections can be performed before the pool hands out a connection. If aconnection is "invalid," it is removed and a new connection is created before being handed out by thepool.

DescriptionParameter

Enables or disables JDBC connection poolingpfi.pooling.jdbcUsePooledConnections

Default = false

Maximum number of active connections for auser. A negative number means no limit.

pfi.pooling.jdbcMaxActiveConnections

Default = 10

Max number of idle connections for a user. Anegative number means no limit. The pool willhave at least this many connections for the user.

pfi.pooling.jdbcMaxIdleConnections

Note: Zero (0) means all returned connectionsare closed which results in no pooling.

Default = 2

Time (seconds) to wait for an availableconnection, if pool is full for the user.

pfi.pooling.jdbcMaxConnectionWaitSec

Options are:

• 0 = immediate failure

• -1 = indefinite wait

• >0 = wait for specified time, then fail

Default = 300

Determines how often the eviction process is run.(It should be configured to run infrequently.) -1

pfi.pooling.jdbcTimeBetweenEvictionRunsSec

turns off the eviction process. When enabled,connections idle for 30 minutes are closed.

Default = -1

Enables or disables the verification of connectionspfi.pooling.jdbcEnableConnectionValidation

Default = false

Lawson Process Automation Administration Guide | 63

Configuring Lawson Process Server and the Grid

Page 64: Lawson Process Automation Administration Guide

Defines the SQL statement that is used to verifya connection. Each JDBC Driver can have it's

pfi.pooling.jdbcValidationQuery

own validation SQL statement. Format of thisproperty is:

<JDBC Driver>=<SQL statement>;<JDBC Driver>=<SQL statement>;...

For example:

org.gjt.mm.mysql.Driver=select 1

Connection validation for JDBCWhen connection validation is enabled, unused connections in the pool are first validated beforebeing given out. An invalid connection will be closed and a new connection created before it ishanded out.

The validation query must be a SQL statement that returns 1 or more rows in order for the JDBCconnection to be valid.

Following are pre-defined validation queries setup for the commonly used database systems.Theycan be overridden by the pfi.polling,jdbcValidationQuery property.

• DB2: select 1 from sysibm.sysdummy1

• Oracle: select 1 from dual

• SQL Server: select 1

• MySQL: select 1

• <default>: select 1

Special characters encoding

These parameters are to be used with S3 applications only. Use them to configure special charactersthat are not enabled by default.

DescriptionParameter

64 | Lawson Process Automation Administration Guide

Configuring Lawson Process Server and the Grid

Page 65: Lawson Process Automation Administration Guide

A set of commonly used special characters areencoded by default for use with S3 applications.

pfi.extraEncodingChars

andA list of these characters is in developer

pfi.extraEncoding documentation in the infocenter and in theLawson Process Designer online help.

If you need characters other than those that areencoded by default, you can configure themthrough the Grid properties pfi.extraEncodingCharand pfi.extraEncoding.

pfi.extraEncodingChar is where you configure thecharacter you want to use.

pfi.extraEncoding is where you configure whatwill be sent for the character.

Example:

To display the following letters with diacritics,specify the following:

pfi.extraEncodingChars=ä,ë,ï

pfi.extraEncoding=%E4,%EB,%EF

where

"ä,ë,ï" are the characters you want to display

and

"%E4,%EB,%EF" is what you will send torepresent these characters.

Custom activity node properties

The properties in this section apply only if you use the Custom activity node.

DescriptionParameter

Class names for .jar files needed for customactivities. List them in this property separated bycommas or semicolons.

pfi.customActivity.beans

Lawson Process Server must be stopped andrestarted in order for these activities to beavailable.

Lawson Process Automation Administration Guide | 65

Configuring Lawson Process Server and the Grid

Page 66: Lawson Process Automation Administration Guide

It is a good idea to isolate custom adapters in aseparate process to ensure that they do not

pfi.customActivity.beansToRunSeparate

interfere with Lawson Process Server generaloperation.

This true / false flag indicates that customadapters will run in their own process, separatefrom Lawson Process Server.

This parameter lets you specify your own runtimeoptions for custom activities. These options are

pfi.customActivity.beansToRunSeparateOptions

available only for custom activities that run in aseparate process.

Configuring mail and timeout properties in Lawson Rich Client

The properties in this section are configured using Lawson Rich Client.

To access these properties:

1 From the Lawson Rich Client main menu, click Process Server Administrator / Configuration / SystemConfiguration and then double-click System Properties.

2 From the list of properties that appears, select the property you want to change and then right-clickand select Update. (You can also select Update from the Actions menu.)

A dialog box for updating the property appears. Make changes as needed.

3 Make changes to the following properties as needed:

DescriptionProperty

The email address from which systemmessages (failures, timeouts, and so on) will be

mailFrom

sent unless an overriding address has beenconfigured for a process.

Example

[email protected]

The server from which system email messageswill be sent.

mailServer

Example

smtp.YourCompany.com

66 | Lawson Process Automation Administration Guide

Configuring Lawson Process Server and the Grid

Page 67: Lawson Process Automation Administration Guide

Use this parameter to list names of users (validactors in the Landmark system) for whom

timeOutActionUser

timeouts will be acted upon if the user does notrespond to a work item in the Inbasket withinthe configured timeframe.

The timeframe, in minutes, used by theFileAccess activity node list files function. Any

getFileAccessCheckTime

files that did not change during the timeframeare not picked up when it directory is updated.(This improves system performance bypreventing unnecessary work from beingperformed.)

Lawson Process Automation Administration Guide | 67

Configuring Lawson Process Server and the Grid

Page 68: Lawson Process Automation Administration Guide

6Configuration Sets

• "Lawson Process Server Configuration Sets: What They Are and How to Create Them" on page68

Lawson Process Server Configuration Sets: What They Are andHow to Create ThemIn Lawson Process Server, configuration sets are stored sets of technical specifications for connectingto a server, including such things as server name, port number, user name, password and other piecesof information. The types of information you need to provide for a connection vary depending on thetype of server you are connecting.

The System Configuration menu of Lawson Process Server lets you save connections you create ina configuration set. When you create a configuration set, all connections you create, whether they areto a Landmark Server, M3, classic S3, and so on, are in one location. For example, suppose you createa configuration set called "MyConfigurations." Suppose further that you create connections to Landmark(MyLandmark) and Classic S3 (MyClassicS3).You can add MyLandmark and MyClassicS3 toMyConfigurations. Any time you need to connect to either Landmark or S3, you would specify"MyConfiguration" as the configuration to use.

The "main" configuration set

By default, all connections are stored in a delivered configuration set called "main." If you have only afew connections, you might not need to create custom configuration sets; customizing the mainconfiguration might be all you need to do.

If you have more than a few connections and, if you want to save multiple sets of connections, it is agood idea to create custom configuration sets.

The main configuration set is stored in:YourInstallationLocation/LASYSDIR/LPS/config/lpsconfig.xml

where "LASYSDIR" = $LASYSDIR or %LASYSDIR% depending on your platform

The file lpsconfig.xml contains defaults for "mailFrom" and "mailServer." Any emails that are sent fromLawson Process Server to an undefined sender will come from this "mailFrom." The server specifiedas "mailServer" will be used to send email from LPS unless another location has been defined.

68 | Lawson Process Automation Administration Guide

Page 69: Lawson Process Automation Administration Guide

Creating a new configuration set

Creating a configuration set is simply a matter of assigning a name to it.

1 From the Process Server Administrator main menu, select Configuration / System Configuration /Configuration Sets.

2 From the Configuration Set dialog box, click Actions / Create.

3 Assign a name to your configuration set, for example, MyConfigurations.

4 Type a longer description to give some additional information about the configuration set.

5 When you are finished, click Actions / Save.

The new configuration set will be available for you to add any new connections that you make.

Lawson Process Automation Administration Guide | 69

Configuration Sets

Page 70: Lawson Process Automation Administration Guide

7Creating Connections to Specific Types ofServers

• "Web Run Connection in Lawson Process Automation" on page 70

• "Landmark Connection in Lawson Process Automation" on page 71

• "M3 connection in Lawson Process Automation" on page 72

• "IBM WebSphere MQ Connection in Lawson Process Automation" on page 73

• "S3 Connection in Lawson Process Automation" on page 74

• "JMS (Java Message Service) connector in Lawson Process Automation" on page 75

• "File (FTP) Connection for File Transfers in Lawson Process Automation" on page 77

• "JDBC Connection in Lawson Process Automation" on page 77

• "Cloverleaf Connection" on page 79

• "Event Hub Connectivity" on page 80

• "ION Connection" on page 81

• "Configuring Basic Authentication for a Web Services Connection" on page 82

Web Run Connection in Lawson Process AutomationThis topic describes how to configure a connection to a web server in order to use the Web Run activitynode to execute any program that is located either on your Lawson internal web server (through IOS)or on an external site.

DescriptionParameter

70 | Lawson Process Automation Administration Guide

Page 71: Lawson Process Automation Administration Guide

The name of the configuration that this connectionis associated with.

Configuration Name

You can have one Web Run connection perconfiguration.

More information about configuration sets isavailable in another section.

For more information, see "Lawson ProcessServer Configuration Sets: What They Are andHow to Create Them" on page 68.

Web server and port information. For example:Web Root

https://YourServer.YourDomain.com:port#

User ID of the user running the query.User

Password of the user running the query.Password

Number of seconds of attempting to connect afterwhich a timeout occurs.

Time Out

Landmark Connection in Lawson Process AutomationThis topic describes how to configure a connection to a Landmark server in order to query Landmarkfor data using the Landmark Transaction activity node.

The table that follows describes the configuration parameters.

DescriptionParameter

The name of the configuration that this connectionis associated with.

Configuration Name

You can have one Landmark connection perconfiguration.

More information about configuration sets isavailable in another section.

For more information, see "Lawson ProcessServer Configuration Sets: What They Are andHow to Create Them" on page 68.

The data area that contains the Landmark datayou want to query with the Landmark Transactionactivity node.

Data Area

Lawson Process Automation Administration Guide | 71

Creating Connections to Specific Types of Servers

Page 72: Lawson Process Automation Administration Guide

This flag determines if the connection is comingfrom a remote server.

External Connection

Web server and port information. For example:Web Root

https://YourServer.YourDomain.com:port#

User ID of the Landmark actor running the query.User

Password of the Landmark actor running thequery.

Password

Number of seconds of attempting to connect afterwhich a timeout occurs.

Time Out

M3 connection in Lawson Process AutomationThis topic describes how to configure a connection to an M3 server in order to query M3 data usingthe M3 activity node.

The table that follows describes the configuration parameters.

Note: Information about system parameters that can be configured to optimize the JDBC connectionare in another section of this infocenter. For more information, see "Configuring Grid and other propertiesfor Lawson Process Automation" on page 56.

DescriptionParameter

The name of the configuration that this connectionis associated with.

Configuration Name

You can have one M3 connection perconfiguration.

More information about configuration sets isavailable in another section.

Note: If you have selected to edit this connectionfrom within a configuration set, the name of theset is displayed and is not editable.

Host name / IP address for the M3 server.MI Host

M3 server port.MI Port

M3 user ID (16 characters maximum).User

72 | Lawson Process Automation Administration Guide

Creating Connections to Specific Types of Servers

Page 73: Lawson Process Automation Administration Guide

M3 user password.Password

Optional. Key used for encryption and decryption.Encryption Key

If selected, connections are pooled.Use Pooled Connection

Maximum number of records to retrieve per fetch.Max Records

IBM WebSphere MQ Connection in Lawson Process AutomationThis topic describes how to configure a connection to IBM MQ in order to add an IBM WebSphere MQactivity node to a process. The IBM WebSphere MQ activity node lets you write a message to aWebSphere MQ message queue.

The connection parameters needed are for MQ. If you need to know what these parameters are, contactyour system administrator.

DescriptionParameter

The name of the configuration that this connectionis associated with.

Configuration Name

You can have one WebSphere MQ connectionper configuration.

More information about configuration sets isavailable in another section.

Make sure the External flag is selected. This isthe only supported configuration.

External

These fields are looking for information aboutyour MQ system. Contact your system

MQ Host

MQ Port administrator if you need assistance locatingthese parameters.MQ Channel

Specify User

MQ User

MQ Password

Lawson Process Automation Administration Guide | 73

Creating Connections to Specific Types of Servers

Page 74: Lawson Process Automation Administration Guide

S3 Connection in Lawson Process AutomationThis topic describes how to configure a connection to LSF in order to query or update Lawson S3 datain processes (for example, using the S3 Query and S3 Transaction nodes).

The table that follows describes the configuration parameters.

DescriptionParameter

The name of the configuration that this connectionis associated with.

Configuration Name

More information about configuration sets isavailable in another section.

For more information, see "Lawson ProcessServer Configuration Sets: What They Are andHow to Create Them" on page 68.

Note: If you have selected to edit this connectionfrom within a configuration set, the name of theset is displayed and is not editable.

Options are:Connection Type

• Web: This type makes a call to IOS servlets.Use this type of connection when connectingto Lawson Process Designer.

• EJB: Connects via EJBs (Direct IOS). Usethis type of connection when connecting toLawson Process Server.

Web connection parameters

ID of the user running the query.User

Password of the user running the query.Password

The data area that contains the S3 data you wantto query in your process.

Data Area

Web server and port information. For example:Web Root

https://YourServer.YourDomain.com:port#

Number of seconds of attempting to connect afterwhich a timeout occurs.

Time Out

Maximum amount of data to retrieve per fetch.Page Size

If you specify page size, you can also specifymaximum parameters as part of the query string.

74 | Lawson Process Automation Administration Guide

Creating Connections to Specific Types of Servers

Page 75: Lawson Process Automation Administration Guide

Number of retry attempts.Retry Count

Number of milliseconds to pause between retryattempts.

Pause Time (milliseconds)

EJB Connection parameters

Note: Parameters being called for here are specified on the LSF system in GENDIR/install/services.cfg

The fully qualified domain name of the LSF (S3)system.

Host

(This is the SERVER_NAME parameter in theservices.cfg file referenced in the note above.)

The bootstrap port of the WebSphere applicationserver.

IIOP Port

(This is the SERVER_IIOP_PORT parameter inthe services.cfg file referenced in the note above.)

name of the Java factory class to make the directIOS connection.

Connection Factory

(This is the CONTEXT_FACTORY parameter inthe services.cfg file referenced in the note above.)

The namespace in WebSphere, in the followingformat:

Server Namespace

cell/nodes/<node name>/servers/<server name>/

(This is the SERVER_NAMESPACE parameterin the services.cfg file referenced in the noteabove.)

JMS (Java Message Service) connector in Lawson ProcessAutomationThis topic describes how to configure a connection to JMS, a J2EE-compliant API for sending messagesbetween or more clients.

You would use this connection with the JMS activity node.

The JMS activity node can make use of the error connector.

Lawson Process Automation Administration Guide | 75

Creating Connections to Specific Types of Servers

Page 76: Lawson Process Automation Administration Guide

Note: In its current implementation, the JMS activity node supports only sending, not receiving,messages.

Note: This document does not provide information about how to use and format the API. Informationis provided only for how to configure the connection.

Lawson Process Automation online help contains information about how to configure the JMS activitynode.

DescriptionParameter

The name of the configuration that this connectionis associated with.

Configuration Name

You can have one JMS connection per connectionset.

More information about configuration sets isavailable in another section.

Note: If you have selected to edit this connectionfrom within a configuration set, the name of theset is displayed and is not editable.

Fully qualified class name of the factory class thatwill create an initial context.

JNDI Initial Factory

URL string that specifies the service provider.JNDI Provider URL

Name of the location to be used to create aconnection to the JMS provider.

JNDI Connection Factory Name

The JNDI user ID.JNDI User

The JNDI password.JNDI Password

The name and location of a file that containsproperties about the connection.You can use this

Context Property File

file to specify the properties available on thisdialog.You can also use it to specify other JNDIproperties that might available from the Provideryou use.

If the properties file conflicts with information onthe JMS connection dialog box, Lawson ProcessServer gives precedence to setting on the dialogbox.

The JMS user.JMS User

The JMS password.JMS Password

76 | Lawson Process Automation Administration Guide

Creating Connections to Specific Types of Servers

Page 77: Lawson Process Automation Administration Guide

File (FTP) Connection for File Transfers in Lawson ProcessAutomationThis topic describes how to configure a FTP connection for use with the File Transfer activity node inLawson Process Automation.

DescriptionParameter

The name of the configuration that this connectionis associated with.

Configuration Name

You can have one FTP connection perconfiguration.

More information about configuration sets isavailable in another section.

The name of the server to which you want theprocess to connect.

Host

The user ID that will run the connection.User

The password of the user ID that will run theconnection.

Password

FTP or SFTPProtocol

JDBC Connection in Lawson Process AutomationThis topic describes how to configure a JDBC connection on the server side so that it is available forprocesses containing nodes that use a JDBC connection (for example, SQL Query and SQL Transaction).

In addition to the configuration described here, you must also:

• Configure external .jar files on the Lawson Process Designer classpath. (Information is in theLawson Process Designer Developer's Guide available on the infocenter.)

• Your system administrator must configure external .jar files on the server.

Information about this configuration is in another section. For more information, see "ConfiguringExternal .Jar Files Required for JDBC Connections" on page 83.

• You might need to configure some system parameters specific to the JDBC. Information aboutthem is in another section of this infocenter. "Configuring Grid and other properties for LawsonProcess Automation" on page 56

Lawson Process Automation Administration Guide | 77

Creating Connections to Specific Types of Servers

Page 78: Lawson Process Automation Administration Guide

Important: As a convenience to our customers, this section attempts to provide vendor-specificinformation that is published by the vendor. At the time this information was published, the vendor-specificinformation in the tables below was accurate. However, this information is subject to change by thevendor. Always check with your database vendor for the latest information.

DescriptionParameter

The name of the configuration that this connectionis associated with.

Configuration Name

More information about configuration sets isavailable in another section.

See the table below.Driver

See the table below.Database URL

User ID of the user running the SQL database.User

Password of the user running the SQL database.Password

Database URLJDBC DriverPlatform

jdbc:db2://YourComputerName/YourDatabaseName

com.ibm.db2.jcc.DB2DriverIBM DB2 Version 9, UNIXand Windows

jdbc:db2://YourComputerName/YourDatabaseName

COM.ibm.db2.net.DB2DriverIBM DB2 Version 8, UNIXand Windows

jdbc:as400://YourComputerName/YourDatabaseSchemaName

COM.ibm.as400.access.AS400JDBCDriver

IBM DB2 on System i

jdbc:oracle:drivertype:@databaseoracle,jdbc.driver.OracleDriverOracle

Note: Use a thin driver type as this ispure Java and does not depend on theC library and is platform-independent.This requires that the Oracle server isconfigured with TCP/IP listener.

Example:

jdbc:oracle:thin@myhost:port:sid

78 | Lawson Process Automation Administration Guide

Creating Connections to Specific Types of Servers

Page 79: Lawson Process Automation Administration Guide

jdbc:sqlserver://Host:port;databaseName=databaseName

com.microsoft.sqlserver.jdbc.SQLServerDriver

Microsoft SQL Server2005

Note: For customersupgrading from MicrosoftSQL Server 2005: Thedriver class name is notthe same as it was forMicrosoft SQL Server2000. Both the classname and the URL prefixhave changed.

jdbc:microsoft:sqlserver://Host:port;databaseName=databaseName

com.microsoft.jdbc.sqlserver.SQLSeverDriver

Microsoft SQL Server2000

Cloverleaf ConnectionLawson Process Automation provides an activity node that allows one-way communication with aCloverleaf system. This topic describes how to configure a connection to Cloverleaf which allows aprocess to send a message to a Cloverleaf-compatible system.

Note: Cloverleaf is a messaging system that is primarily used among health care institutions.

DescriptionProperty

Select an existing configuration that this connection is associatedwith. This is a configuration that contains a connection toCloverleaf.

Configuration The name of theconfiguration that thisconnection is associated with.

If you are not using a configuration for this connection, select anexisting connection or configure a new one.

Connection

Choices are:Message Encoding

• USASCII: Character-based encoding scheme based on English

• UTF8: 8-bit Unicode

• UTF16BE: 16-bit unicode in big endian format (first byte ismost significant)

• UT16LE: 16-bit unicode in little endian format (first byte is mostsignificant)

Lawson Process Automation Administration Guide | 79

Creating Connections to Specific Types of Servers

Page 80: Lawson Process Automation Administration Guide

Enable this byte order mark to send a byte order mark at thebeginning of the data flag that tells which byte is most significant.

Use Byte Order Mark

TCPIP is currently the only available protocol.Protocol

Protocol Information

IP addressHost

Cloverleaf port numberPort

Amount of time in milliseconds that the system waits for a return(ack) message before issuing a timeout.

Socket Timeout (milliseconds)

Message Length Indicator

Sends the length of the indicator fieldLength of Indicator Field

The fill character for the length of indicator field.Fill Character

Indicates whether the value in the length indicator field is right- orleft-justified.

Justification

Indicates whether the value in the length indicator field (that is,the field specifying the message length), includes the size indicatorfield.

Length Calculator

Event Hub ConnectivityLawson Process Automation can act as a subscriber to the Event Hub and launch processes basedon events posted to the Event Hub.

Lawson Process Automation can also act as a publisher and publish events to the Event Hub for othersto act upon via the Event Hub activity node.

Event Hub nodes require a connection to the server where the Event Hub is running. This is set up inLawson Process Automation through an Event Hub connection.

A configuration must be created in Lawson Process Automation to provide host, port, security credentialsand other information. The table below describes the connection properties.

DescriptionProperty

External

This flag indicates that the host you are connecting to is on adifferent physical server.

External

Host nameHost

80 | Lawson Process Automation Administration Guide

Creating Connections to Specific Types of Servers

Page 81: Lawson Process Automation Administration Guide

Port numberPort

Secured

If this flag is enabled, the connection is secured.Secured

if secured, location of the authentication certificate.Key Store Path

Certificate passwordCert Password

Key store passwordKey Store Password

The name of the domain where the key store is located.Domain

ION ConnectionION Inbox is for receiving BODs to the Lawson system from other systems.

Lawson Process Automation requires a connection to the ION system to be configured.

Note: The ION connection uses JDBC which requires that external .jar files are configured on theserver and locally on the machine where Lawson Process Designer is running. More information is inanother section. "Configuring External .Jar Files Required for JDBC Connections" on page 83

DescriptionProperty

The name of the configuration that this connection is associatedwith.

Configuration name

More information about configuration sets is in another section.

The JDBC driver class name.JDBC Driver

Example: oracle.jdbc.driver.OracleDriver

Location of the database of the ION tables.Database URL

Example: jdbc:oracle:thin:@myserver:1521:mydb

User nameUser

PasswordPassword

The name and location of the DB SchemaDB Schema

Lawson Process Automation Administration Guide | 81

Creating Connections to Specific Types of Servers

Page 82: Lawson Process Automation Administration Guide

Configuring Basic Authentication for a Web Services ConnectionProcesses that use the Lawson Web Service activity node might need to allow users to log in via HTTP.This section describes how to create a configuration for a web service process that allows for basicauthentication.

1 From Lawson Rich Client, navigate to the administration menus for your data area and then selectLawson Process Administrator->Configuration->System Configuration.

2 On the System Configuration page, select the configuration set for which you want to create a webservice configuration.

For example, if you want to add the web service configuration to the Main configuration set,double-click Main (or select Main and then click Actions->Update).

3 Click the Web Service tab.

A dialog box for creating a web service configuration appears.

Figure 26. Creating a web service configuration that allows for basic authentication

4 From the Authentication dropdown, select Basic Authentication.

5 Click Save when you are finished making edits.

82 | Lawson Process Automation Administration Guide

Creating Connections to Specific Types of Servers

Page 83: Lawson Process Automation Administration Guide

8Jar File Configuration

• "Configuring External .Jar Files Required for JDBC Connections" on page 83

Configuring External .Jar Files Required for JDBC Connections

This topic describes how to verify and configure external .jar files required for JDBC connections. Thistype of connection is required for processes that include activity nodes that make use of JDBC (forexample, SQL Transaction, SQL Query, ION, and so on).

JDBC drivers must be installed on the Lawson Process Automation server and on each machine thatuses Lawson Process Designer (LPD).

The sections that follow describe which .jar files are needed and in which locations they must beinstalled on the server and on LPD.

JDBC driver .jar files: where to get them

As a convenience to customers who use IBM DB2 and Microsoft SQL Server, Lawson LandmarkTechnology delivers .jar files for the IBM DB2 platform and for Microsoft SQL server.

Note: Database vendors can change their driver file requirements at any time. For this reason, it is agood idea to check your database vendor's web site for the latest information about database driversbefore you install. This is true even if your database drivers were delivered by Lawson.

Jar filesPlatform

The following files are delivered by Lawson to thelocation LAENVDIR/install/jdbc:

IBM DB2, UNIX and Windows

db2jcc4.jar

db2jcc4_license_cu.jar

Obtain the appropriate .jar files for the version ofOracle you use from oracle.com.

Oracle

Lawson Process Automation Administration Guide | 83

Page 84: Lawson Process Automation Administration Guide

The following files are delivered by Lawson to thelocation LAENVDIR/install/jdbc:

Microsoft SQL Server

sqljdbc4.jar

Configuring JDBC .jar files on the Lawson Process Automation server

To configure the .jar files on the server, simply copy the file/s to this location on the Lawson ProcessAutomation server: LACFGDIR/LPS/jars

Configuring JDBC .jar files for an instance of Lawson Process Designer

1 Verify that the appropriate .jar files are on the classpath.

From the Designer toolbar, click Window / Preferences / Lawson Process Designer / External Jars.

2 If the jars are listed in the Designer, click Cancel.

You are ready to work with the JDBC-connecting activity nodes.

3 If the .jars are not listed, they are not on the classpath. Click New and browse to the location wherethe .jars are located.

If you cannot locate the .jars, contact your system administrator.

4 Copy and paste (or type) the full path to the .jar file onto the External JARs space in the Designerand then click OK.

When you are ready to upload and run a process that includes a JDBC-connecting node, the external.jar files specified here must also be listed on the classpath for the server. This configuration isperformed by your system administrator.

84 | Lawson Process Automation Administration Guide

Jar File Configuration

Page 85: Lawson Process Automation Administration Guide

9Configuring Channels and Receivers forUse with Lawson Process Automation

Topics in this chapter describe how to configure channels and receivers in one-way communicationbetween Lawson Process Automation and external sources. Information received through channels isused to trigger workunits.

Information can be in the form of Java Message Service (JMS) messages and files.

Important: This document describes Lawson's implementation of the JMS protocol, not the protocolitself. If you choose to use this feature, Lawson assumes you are familiar with JMS and have accessto information about the protocol.

• "Channel / receiver communication with Lawson Process Automation: Overview" on page 85

• "Configuring a JMS channel and receiver" on page 90

• "Creating a File channel and receiver" on page 93

• "Configuring an ION Channel and Receiver" on page 97

• "Event Hub Channel / Receiver Configuration" on page 106

• "Monitoring and administering channels and receivers" on page 109

• "Receiver Last Error" on page 110

Channel / receiver communication with Lawson Process Automation:OverviewIn Lawson Process Automation (LPA), channels provide a means of one-way communication betweenLPA and external sources. There are different types of channels in LPA to support reception ofinformation from different types of sources.

In LPA channel implementation is based on defining a channel and one or more receivers under achannel. Each channel represents a link to a single outside source of messages or other content.Information and parameters on the channel, any software runtime connections, and the single outsidesource of content associated with a channel are shared by all receivers under that channel, but each

Lawson Process Automation Administration Guide | 85

Page 86: Lawson Process Automation Administration Guide

receiver can differ in terms of what messages or content are accepted for processing by the receiverand how that material is handled

Figure 27. Illustration: Channel with multiple receivers

Currently, LPA provides support for the following types of communication:

• Java Message Service (JMS): LPA makes use of a subset of the protocol to receive messagesonly (not send).

There are numerous ways in which a JMS channel could be used. For example, you could set upa channel to receive pricing updates from vendors. When updates are received, a process todetermine whether the product should be ordered launches.

• File: Messages that are sent to a file and saved to disk can also be used to trigger workunits

Customers might use a file channel to collect payroll deductions that come in from a third-partypayroll processing company. Another application would be as a holding location for transactionsthat should be posted to GL.

The channel / receiver administration tool is delivered with Lawson Process Server components andmenus which are accessible through Lawson Rich Client.

How LPA channels work: General

Lawson Process Automation channels provide a means of communication between LPA and externalsources. Currently, LPA provides channels for two types of external sources, Java Message Service(JMS) and files, that is, information received via files that is stored on disk (local or remote).

Information received via channels is used to create and trigger workunits.

Defining channelsUse the Channels administration tool available through the Lawson Process Server menus onLawson Rich Client to define a channel and its receiver or multiple receivers.

Details about how to create a channel are in other sections of this document.

"Configuring a JMS channel and receiver" on page 90

"Creating a File channel and receiver" on page 93

86 | Lawson Process Automation Administration Guide

Configuring Channels and Receivers for Use with Lawson Process Automation

Page 87: Lawson Process Automation Administration Guide

Managing running channelsWhen a channel has been created and activated, the background program, ManageChannelsImpl,which runs in the Lawson Grid, controls the execution of all channels, receivers, and relatedprocesses in a given data area.

In addition to defining channels, administrators can use the configuration / administration tool to:

• Activate channels

• Enable / disable and activate / deactivate (Differences between these procedures are explainedin the appropriate sections.)

• Monitor channel execution

• Perform maintenance

More information is in another section.

"Monitoring and administering channels and receivers" on page 109

JMS channels

A JMS channel represents and carries the information needed to establish a Java Message Serviceconnection. The properties used to create the InitialContext for JNDI will be set from information in aproperty file if specified. If properties are configured on the JMS channel record, they will override theproperty file settings.

Information about how to perform configuration necessary to create a JMS channel is in another section.

"Configuring a JMS channel and receiver" on page 90

Following is an example of the execution cycle of a JMS channel:

1 JMS credentials, if supplied, are used to establish a connection. If they are not supplied, theconnection will be established without credentials.

2 JMSReceivers (receivers under a JMSChannel) carry the information needed to establish and usea Java Message Service Session under the JMS channel’s connection.

3 A new session is established for each receiver that is activated for a JMSChannel

Additional information about JMS channels as implemented in LPA:

• Each active receiver has its own session but all sessions under a channel share a single (channel)connection to JMS.

• Sessions are not shared (one consumer per session).

• JMS point-to-point (Queue) and publish/subscribe (Topic) scenarios are supported.

• Receivers can connect only to a single topic or queue.

• Durable subscriptions are not supported.

• JMSReceivers consume messages provided by JMS message providers. Receivers do not providethe ability to send messages, only to receive them.

• Message selectors are supported and are designated on the JMSReceiver.

Lawson Process Automation Administration Guide | 87

Configuring Channels and Receivers for Use with Lawson Process Automation

Page 88: Lawson Process Automation Administration Guide

• All message reception is asynchronous (via MessageListeners).There is no provision for groupingof messages. Individual messages are processed without consideration of prior or subsequentmessages.

• Only TextMessage and MapMessage Message types are supported. If a message of an unsupportedtype is received, it will not be processed but it will be acknowledged so the provider does not tryto send the message again.

• When a message is received, information it contains, along with information on the receiver, isused to provision a workunit which is subsequently triggered.The message is then acknowledged.

• All Message Header and Message property values will be assigned to process variables in the LPAprocess.

• If the Message is a MapMessage type, the message payload (name/value pairs) will be assignedto Process variables.

• If the Message is a TextMessage type, the message payload (text) will be loaded into theWorkunitInputData.

• Only AUTO_ACKNOWLEDGE and CLIENT_ACKNOWLEDGE message acknowledgement modesare supported. (Additional details about message acknowledgement are in another section.

"JMS acknowledge modes as implemented in Lawson Process Automation" on page 92

File channels

LPS FileChannels provide the ability to get information from local or remote files, which, along withinformation on FileReceivers (receivers under a FileChannel), provision workunits to be triggered.

What information can be monitoredWhen you configure a file channel, you can specify the information supplied to a workunit whichdetermines how the workunit is created.

The table that follows gives a high level description of the options.

What it meansOption

If File Name is specified, a single workunit is created andtriggered. The file name only is included in theWorkunitInputData associated with the workunit.

File name

If File Data is specified, a single workunit is created andtriggered. The data contained in the file is included in theWorkunitInputData associated with the workunit.

File data

If File Line is specified, a workunit is created and triggered foreach line in the file, and the line content is included in theWorkunitInputData associated with the workunit.

File line

88 | Lawson Process Automation Administration Guide

Configuring Channels and Receivers for Use with Lawson Process Automation

Page 89: Lawson Process Automation Administration Guide

Monitored directoryWhen you configure a file channel, you specify a directory that you want to monitor for files thatare awaiting processing.

FileReceivers carry the information needed to select and process particular files detected in thedirectory specified by its parent FileChannel. The LPS channel administrator instantiates and runsa single (by data area) file monitor to actively monitor file directories specified by FileChannels foractive FileReceivers.

Details about how to make specifications are in another section.

"How file selection matching works" on page 97

Error and processed directoriesAn error file directory must also be specified on the FileChannel. Files that are not processedsuccessfully are moved from the monitored directory to the error file directory (deleted from themonitored directory).

A processed file directory can also be specified on the FileChannel but is not required. Files thathave been processed successfully are moved from the monitored directory to the processeddirectory after they are processed. If a processed file directory is not specified, files that have beenprocessed successfully are deleted from the monitored directory without being saved.

Additional information about error and processed directories:

• Files that are moved to error or processed directories can overlay existing files.

• The error and processed file directories must be local. LPA does not support specifying alocation on a remote server. (This is possible for a monitored directory.)

System configuration properties affecting file channelsThe following properties control how often the FileChannelsMonitor program scans directories:

• fileChannelsMonitorLoopInterval, a SystemConfiguration property.

• File Access Check Time, a FileChannel property

These properties are configured with other Lawson Process Automation properties.

For more information, see "The "main" configuration set" on page 68.

The fileChannelsMonitorLoopInterval value overrides any lesser scan time on a specific FileChannel.(For example, if the FileChannel has a File Access Check Time of three minutes butfileChannelsMonitorLoopInterval is set to five minutes, the FileChannel would be scanned everyfive minutes, not three.)

The scan loop that checks all active FileChannels to see if their File Access Check Time has elapsedsleeps for the specified fileChannelsMonitorLoopInterval and then checks each channel to see ifits scan interval time has elapsed.

Details about how to configure a file channel and receivers are in another section.

"Creating a File channel and receiver" on page 93

Lawson Process Automation Administration Guide | 89

Configuring Channels and Receivers for Use with Lawson Process Automation

Page 90: Lawson Process Automation Administration Guide

Configuring a JMS channel and receiver

This topic describes how to configure a JMS channel and receiver for use with Lawson ProcessAutomation.

Lawson assumes that persons performing this configuration are knowledgeable about the JMS protocol.

JMS channel configuration

A Lawson Process Automation JMS channel represents and carries the information needed to establisha Java Message Service connection.

1 From the Lawson Rich Client canvas Application Menu, click Process Server Administration >Channels Administrator and then click the JMS Channel List tab.

2 From the top portion of the dialog box, click Action > Create.

A dialog box for configuring JMS options appears.

3 Type or select options for the following:

DescriptionParameter

Assign a name to the channel. This can be anything youwant it to be and can include numbers and special

Channel Name

characters. Use a name that reflects the purpose of thechannel.

Optional. Assign a description that provides some detailabout what the channel is used for.

Description

By default, the channel is enabled meaning that isavailable to be activated either automatically, whenLawson Process Server is started, or manually.

Enabled

If a channel is disabled, none of its receivers can beactivated.

The fully qualified class name of the factory class that willcreate an initial context.

JNDI Initial Factory

URL string that specifies the service provider.JNDI Provider URL

Name of the location to be used to create a connectionto the JMS provider.

JNDI Connection Factory Name

The JNDI user ID.JNDI User

The JNDI password.JNDI Password

90 | Lawson Process Automation Administration Guide

Configuring Channels and Receivers for Use with Lawson Process Automation

Page 91: Lawson Process Automation Administration Guide

DescriptionParameter

You can use a file to configure JNDI properties insteadof or in addition to using the fields on the dialog box.You

Context Property File

might want to use this simply because it is moreconvenient for you or in order to specify additionalproperties that might be available from a provider.

If you choose to use the context property file, use thisfield to configure the name and location of the file.

If the properties file conflicts with the information on theJMS connection dialog box, Lawson Process Server givesprecedence to the setting on the dialog box.

If supplied, these will be used when establishing the JMSconnection.

JMS User

JMS Password

This setting is for configuring an email address to benotified if a JMS connection for a channel is lost.

Notify By Email If Connection Lost

Options are:

• None: No notifications will occur.

• On Loss: If this option is selected, a tab appears whenyou save a channel configuration. Use this tab toconfigure the email notification information. Anotification will be sent if a connection is lost.

Values entered here override the system configurationproperty channelEmailTo.

For more information, see "The "main" configurationset" on page 68.

JMS receiver configuration

This section describes how to configure a JMS receiver for use with Lawson Process Automation..

To create a JMS receiver

1 From the JMS Channel Receivers portion of the JMS Channel List tab (bottom of the page), clickAction > Create.

A dialog box for configuring file receiver options appears.

2 Make selections for the following parameters:

Lawson Process Automation Administration Guide | 91

Configuring Channels and Receivers for Use with Lawson Process Automation

Page 92: Lawson Process Automation Administration Guide

DescriptionOption

This field is pre-populated based on the channel for which youare configuring a receiver.

Channel Name

Assign a name to the receiver. This can be anything you wantit to be and can include numbers and special characters. Usea name that reflects the purpose of the receiver.

Receiver

Optional. Assign a description that provides some detail aboutwhat the receiver is used for.

Description

Queue or topic (as defined by the JMS protocol).Destination

Options are:Acknowledge Mode

• Auto Acknowledge:

• Client Acknowledge:

Additional details about the JMS acknowledge modes thatLawson Process Automation supports are in another section.

"JMS acknowledge modes as implemented in Lawson ProcessAutomation" on page 92

Display field showing the timestamp of the most recentlyreceived message.

Last Message Received Time

Select the Lawson Process Automation process that will beactivated based upon workunits that are created from

Process

messages associated with this receiver. (The process mustalready exist.)

Msg Selector as defined by the JMS protocol.Msg Selector

Display field. Current status of the receiver.Status

Display field. The time the most recent error occurred.Last Error Time

Display field. Type of error of the most recent error that wasreceived. The system will display "Channel" or "Receiver."

Last Error Type

Display field. The text of the most recent error that wasreceived.

Last Error

JMS acknowledge modes as implemented in Lawson Process Automation

Only AUTO_ACKNOWLEDGE and CLIENT_ACKNOWLEDGE message acknowledgement modesare supported.

92 | Lawson Process Automation Administration Guide

Configuring Channels and Receivers for Use with Lawson Process Automation

Page 93: Lawson Process Automation Administration Guide

CLIENT_ACKNOWLEDGEIf CLIENT_ACKNOWLEDGE mode is used, precautions are exercised to prevent more than oneworkunit being created for the same message in cases where a message may be redelivered.

When a message is received, a workunit is created but it is not released for processing until themessage is successfully acknowledged. If the message is not acknowledged or the attempt toacknowledge the message fails, the workunit (if it has been successfully created), is deleted. Thereason for this is the assumption that, when the message is redelivered, it will be processedsuccessfully and a workunit will be created and triggered. This logic prevents processing of thesame message more than once (and multiple workunits from being created).

Precautions are also exercised to protect from loss of messages which are received but are notprocessed successfully. If a message cannot be processed successfully, it is not acknowledgedand the receiver will stop processing any subsequent messages. The receiver also automaticallyrequests self-deactivation.This logic prevents the loss of messages that could occur if the receiverwere to acknowledge any subsequent message. An exception is messages of unsupported messagetypes that are received. These are always acknowledged so the provider does not try to send themessage again.

These safeguards might not be as effective in Publish/Subscribe messaging scenarios as theywould be for Point-to-Point messaging scenarios.

AUTO_ACKNOWLEDGEIf AUTO_ACKNOWLEDGE mode is used, no precautions are exercised to prevent more than oneworkunit being created for the same message in cases where a message may be redelivered.Neither do precautions exist to prevent loss of received messages that have not been processedsuccessfully.

Creating a File channel and receiver

This topic describes how to configure a file channel and receiver.

File channel configuration

When you configure a file channel, you specify the directory to be monitored for files to process andset parameters related to the monitoring process.

To create a file channel

1 From the Lawson Rich Client canvas Application Menu, click Process Server Administration >Administration > Channels Administrator and then click the File Channel List tab.

2 From the top portion of the dialog box, click Action > Create.

A dialog box for configuring File channel options appears.

3 Make selections for the following parameters:

Lawson Process Automation Administration Guide | 93

Configuring Channels and Receivers for Use with Lawson Process Automation

Page 94: Lawson Process Automation Administration Guide

DescriptionOption

Assign a name to the channel. This can be anything you wantit to be and can include numbers and special characters. Usea name that reflects the purpose of the channel.

Channel Name

Optional. Assign a description that provides some detail aboutwhat the channel is used for.

Description

By default, the channel is enabled meaning that it is availableto activated either automatically, when Lawson Process Serveris started, or manually.

Enabled

If a channel is disabled, none of its receivers can be activated.

The directory to monitor for location of target files.Directory

Select where the directory being monitored resides in relationto the server you are configuring. Options are:

File Channel Type

Local (default): The directory is located on the machine youare configuring. In this case, the directory location is sufficient.

Remote: The directory is located on a different machine thanthe one you are configuring.

If you select remote, additional properties appear on a dialogbox when you save the receiver.

Additional properties for remote:

• Host: The ID of the remote machine

• Protocol: The type of connection you plan to use, FTP orSFTP.

• User: The user who will be logging into the remotemachine.

• Password: The password for the user.

Make specifications for case of file name:File Match Case Sensitivity

Enforce Case: Select if you want the channel to enforce casewhen selecting of files.

Ignore Case: Select if you want the channel to ignore casewhen selecting files.

Additional information about how file selection is anothersection.

"How file selection matching works" on page 97

94 | Lawson Process Automation Administration Guide

Configuring Channels and Receivers for Use with Lawson Process Automation

Page 95: Lawson Process Automation Administration Guide

DescriptionOption

The local directory where files that are not processedsuccessfully are moved. This must be on the local machine.

Error File Directory

Optional. The local directory where processed files (files thatprocessed normally) are moved.

Processed File Directory

The number of minutes between scans of the monitoreddirectory for files to process.

File Access Check Time inMinutes

The System Configuration property,FileChannelsMonitorLoopInterval might override this setting.Additional information is in another section.

For more information, see "Error and processed directories"on page 89.

Display field that shows the timestamp of the most recent scanfor files.

Last File Scan Time

File receiver configuration

When you configure a file receiver, you are telling Lawson Process Automation how to handle the filedata that comes in from the channel.

To create a file receiver

1 From the File Channel Receivers portion of the File Channel List tab (bottom of the page), clickAction > Create.

A dialog box for configuring file receiver options appears.

2 Make selections for the following parameters:

DescriptionOption

This field is pre-populated based on the channel for which youare configuring a receiver.

Channel Name

Assign a name to the receiver. This can be anything you wantit to be and can include numbers and special characters. Usea name that reflects the purpose of the receiver.

Receiver

Optional. Assign a description that provides some detail aboutwhat the channel is used for.

Description

Lawson Process Automation Administration Guide | 95

Configuring Channels and Receivers for Use with Lawson Process Automation

Page 96: Lawson Process Automation Administration Guide

DescriptionOption

The file that you are looking for: Either the specific name ofthe file (for example, vendor_xyz.xml) or a regular expressionshowing selection criteria for the file.

File Name

Additional information is in another section.

"How file selection matching works" on page 97

Select the Lawson Process Automation process that willactivate for workunits that are created from files associatedwith this receiver. (The process must already exist.)

Process

Select the type of data that will be provided to the workunitwhen a file is received.

Data

• File Name: A single workunit is created and triggered.Thefile name only is included in the WorkunitInputDataassociated with the workunit.

• File Data: A single workunit is created and triggered. Thedata contained in the file is included in theWorkunitInputData associated with the workunit.

• File Line: A workunit is created and triggered for each linein the file, and the line content is included in theWorkunitInputData associated with the workunit.

Determines when the receiver starts up. Options are:Startup Type

• Automatic: File starts up automatically when the systemstarts.

• Manual: File does not start automatically when the systemstarts. The administrator must start it manually.

• Disable: The receiver has been taken off-line, does notstart.

Display field. The time stamp showing the most recent time afile was processed by the receiver.

Last Message Received Time

Display field. Current status of the receiver.Status

Display field. The time that the most recently received erroroccurred.

Last Error Time

Display field. Type of error of the most recent error that wasreceived. The system will display "Channel" or "Receiver."

Last Error Type

Display field. The text of the most recent error that wasreceived.

Last Error

96 | Lawson Process Automation Administration Guide

Configuring Channels and Receivers for Use with Lawson Process Automation

Page 97: Lawson Process Automation Administration Guide

How file selection matching works

File selection matching is based on the java.util.regex.Pattern class, which is a compiled representationof a regular expression. Lawson assumes you are familiar with this pattern class. If you need details,refer to available documentation on the Web.

Following are some examples of how file matching works.

Important: Lawson recommends that you test any file name matching pattern and case sensitivitysettings to insure that only targeted files will be selected for processing before you use them in aproduction environment.

Table 44. Pattern matching examples

Use...To match files...

.+\.txt...with file extension ".txt"

Or

.+\.txt$

Dept3.*\.rpt...that start with "Dept3" andhave a filename extension of".rpt"

Or

Dept3.*\.rpt$

.*reg1.*...that include "reg1" anywherein the filename, including thefilename extension

".*salesresults.*\.txt$...that include "salesresults"anywhere in the filename andhave a file extension .txt

(.*salesresults.*|.*SalesResults.*)\.txt$...that include "salesresults" or"SalesResults" anywhere in the

Orfilename and have theextension .txt .*[Ss]ales[Rr]esults.*\.txt$

Configuring an ION Channel and ReceiverION Connect is a messaging hub provided by Infor. The channel / receiver is for receiving messages,called Business Object Documents (BODs) from ION Connect. Each BOD received from ION Connectcan be assigned to a receiver. Those receivers are assigned to a channel. Each channel is assignedto one connection point in the ION Connect server. This topic describes how to configure the channeland receivers.

With some releases of Lawson Process Automation, it is possible to receive BODs in a batch of twoor more BODs. This is a way for ION to receive large data sets.

Lawson Process Automation Administration Guide | 97

Configuring Channels and Receivers for Use with Lawson Process Automation

Page 98: Lawson Process Automation Administration Guide

The configuration instructions in this section include information on setting up for batch BODs. Additionalinformation about how batch BODs are processed are in another section.

Configuring an ION channel

1 From the Lawson Rich Client canvas Navigator, click Process Server Administrator > Administration> Channels Administrator and then click the ION Channel List tab.

2 From the top portion of the dialog box, click Action > Create.

A dialog box for configuring channel options appears.

3 Make selections for the following parameters:

DescriptionOption

Assign a name to the channel. This can be anything you wantand can include numbers and special characters. Use a namethat reflects the purpose of the channel.

Channel Name

By default, the channel is enabled meaning that it is availableto activate. This activation could occur either manually orautomatically when Lawson Process Automation is started.

Enabled

If a channel is disabled, none of its receivers can be activated.

For database connection parameters, use the location of the ION tables which are typically inthe same location as the application tables.

The JDBC driver class name.JDBC Driver

Example: oracle.jdbc.driver.OracleDriver

This is for connecting to the database. In order for thisconnection to work, the driver jar file should be added to Serverclass path or copied to LACFGDIR/LPS/jars directory.Additional information is in another section. "ConfiguringExternal .Jar Files Required for JDBC Connections" on page83

A database (or JDBC) URL is a platform-independent way ofaddressing a specific database instance . A database/JDBC

Database URL

URL is of the form: jdbc:[subprotocol]:[node]/[databaseName]

Example: jdbc:oracle:thin:@myserver:1521:mydb

User nameUser

PasswordPassword

98 | Lawson Process Automation Administration Guide

Configuring Channels and Receivers for Use with Lawson Process Automation

Page 99: Lawson Process Automation Administration Guide

DescriptionOption

The name of the DB Schema; leave blank to use defaultschema.

DB Schema

If the ION tables are created with a prefix, include the prefix inthis field.

Configuring an ION receiver

When you configure an ION receiver, you are telling Lawson Process Automation how to handle datathat comes in from a particular ION channel.

1 With the channel for which you want configure a receiver selected, click Action > Create.

A dialog box for configuring file receiver options appears.

2 Make selections for the following parameters:

DescriptionOption

This field is pre-populated based on the channel for which youare configuring a receiver.

Channel Name

The name of the BOD (XML document) to listen for in theformat: Noun.Verb

BOD Type

Example: Process.Shipment

The ION Connect Logical ID of this Connection Point.To Logical ID

Short description of the receiverDescription

The name of the process that triggers when the BOD isreceived.

Process

How often, in minutes, the receiver, should look for this BODmessage.

Scan Frequency

Options are:Process Mode

• Timestamp Async: Process the next BOD immediatelyafter the previous workunit is successfully created.

• Timestamp Sync: Process the next BOD only if theprevious workunit completed.

See below for additional details about process modes.

Lawson Process Automation Administration Guide | 99

Configuring Channels and Receivers for Use with Lawson Process Automation

Page 100: Lawson Process Automation Administration Guide

DescriptionOption

Enable if you are receiving BODs in a batch and want the BODsto be processed sequentially by Batch Id.

Enforce Sequential Batch Id

If this option is set to True, the following processing occurs:

• Batches for a specific source (From Logical ID) areprocessed in sequence based on BatchID.

• A batch that goes out of sequence waits for the expectedbatch. No other batch processing from any source occursuntil either the expected batch or an abort for that batch isreceived. (An abort would cause the expected batch to bediscarded.)

• If the receiver is waiting for batch that will never bereceived, that batch can be manually skipped by updatingthe LastBatch# in the IONBatchNum record for theBODType and FromLogicalId.

Do this by setting the field to be the batch number that thereceiver is waiting for, to simulate that it was received.Thiswill allow the receiver to scan for the next batch.

If this option is set to False, the following processing occurs:

• BatchID is ignored.

• Timestamp is used; "out of sequence" batches will notoccur.

This indicates how many times the Inbox is rescanned. Afterthe configured number of retries, the Inbox record that failedto process is marked in error and skipped.

Sync BOD Retries

For Sync, the assumption is that if an inbox record failed, it isbecause a dependent record has not yet been received. Arescan could pick up that dependent record.

The time to wait between retries.Sync BOD Retry Frequency

Determines when the receiver starts up. Options are:Startup Type

• Automatic: File starts up automatically when the systemstarts.

• Manual: File does not start automatically when the systemstarts. The administrator must start it manually.

• Disable: The receiver has been taken off-line, does notstart.

100 | Lawson Process Automation Administration Guide

Configuring Channels and Receivers for Use with Lawson Process Automation

Page 101: Lawson Process Automation Administration Guide

DescriptionOption

Display field. Current status of the receiver.Status

Display field. The time that the most recently received erroroccurred.

Last Error Time

Display field. Type of error of the most recent error that wasreceived. The system will display "Channel" or "Receiver."

Last Error Type

Display field. The text of the most recent error that wasreceived.

Last Error

Workunit information for BODs

This section describes workunit attributes and available variables for BODs. It also provides statuscodes for ION Inbox processing.

Figure 28. ION Inbox workunit example (with attributes circled)

Workunit attributesThe workunit created to process the Inbox record contains the attributes described in the followingtable.

Information representedWorkunit attribute

Applies to batch BODs only. The workunit of the first batchpart.

Parent Workunit

Lawson Process Automation Administration Guide | 101

Configuring Channels and Receivers for Use with Lawson Process Automation

Page 102: Lawson Process Automation Administration Guide

Information representedWorkunit attribute

Made up of the following pieces of information:Work Title

BODType / ToLogicalId / InboxId / MessageId/ BatchID / BatchSequence

InboxIDApps Key

MessageIDApps Value

IONChannelSource Type

BODType and ToLogicalID in the format:BODType:ToLogicalId

Source

ION-related workunit variablesThe following workunit variables are available:

TypeION workunit variables

stringInboxId

stringTenantID

integerMsgPriorty

date / timeCreateDateTime

stringFromLogicalId

stringToLogicalId

stringBODType

stringMessageId

stringHdrTenantId

stringBODId

stringVariationId

BooleanIsBatch

stringBatchId

integerBatchNum

integerBatchSeqence

integerBatchSize

102 | Lawson Process Automation Administration Guide

Configuring Channels and Receivers for Use with Lawson Process Automation

Page 103: Lawson Process Automation Administration Guide

TypeION workunit variables

integerBatchRevision

ION Inbox status codesThe C_WAS_PROCESSED field of the ION table COR_INBOX_ENTRY is updated by the IONreceiver to indicate the processing status:

DescriptionCOR_INBOX_ENTRY.C_WAS_PROCESSED

Unprocessed0

Non-batch process, processed successfully1

Non-batch process, failed-1

Batch part processed successfully101

Batch part aborted102

Batch part revised103

Batch part process failed-101

Batch part skipped, due to error in another batch part-102

Batch part skipped, due to batch number lower than currentbatch number

-103

Batch BOD processing

A large incoming transaction can be divided into two more small transactions which are sent as partof a batch. The following sections describe the processing on the receiver side.

Important: To be recognized as a batch BOD, the BatchId must be present, and the BatchNumbercomponent must have a value greater than 0.

The Lawson Process Automation ION receiver looks for the following batch related header keys in thetable COR_INBOX_HEADERS:

Lawson Process Automation Administration Guide | 103

Configuring Channels and Receivers for Use with Lawson Process Automation

Page 104: Lawson Process Automation Administration Guide

NotesDefaultDescriptionHeader Key

Starts at 1.This numbermight need to be

[string]:-1Consists of:

FromLogicalId + :(colon) +BatchNumber

BatchId

sequential dependingon the selection for the"Enforce batch

Example: processing by BatchID"option.infor.lx.1:75

Starts with 1 and isalways sequential.

-1Sequence numberof the BOD in thebatch.

BatchSequence

Specified as part of thelast batch sequence.

1 (indicates that this isthe original batch)

Total number ofBODs in the batch.

BatchSize

Does not need to besequential.

1 (indicates that this isthe original batch orthat batch revision isomitted)

Revision number ofthe batch.

BatchRevision

See "Batch BODrevisions behaviordetails" below foradditional informationthat might apply insome specializedsituations.

Not applicable.falseIndicates that thebatch is to bediscarded.

BatchAbortIndicator

See "Aborted BODrevisions behaviordetails" below foradditional informationthat might apply insome specializedsituations.

Batch BOD partsThe individual batch sequences that make up a complete batch are referred to as "batch parts"and are processed in the following ways:

• In sequence using BatchSequence.

• Serially: Sequence 1 is processed completely before Sequence 2 and so on.

• The same LPA process is triggered for each batch part.

104 | Lawson Process Automation Administration Guide

Configuring Channels and Receivers for Use with Lawson Process Automation

Page 105: Lawson Process Automation Administration Guide

• If a batch part fails:

• Async mode: Processing for the batch is stopped.

• Sync mode: Retries are performed, and processing for the batch stopped if retries areunsuccessful.

Batch BOD revisions behavior detailsIf a batch is received completely the first time it was sent, it has revision number 1. If the initialreceive was not successful, subsequent attempts are processed per the following:

• The original batch have a BatchRevision of "1," unless the revision number, which is optional,was omitted. If BatchRevision is omitted, this number is always 1.

For example, an original batch could be sent with no revision number, in which case, LPAassumes the revision is 1.

• Actual revision numbers start at 2 (or higher, depending on number of attempts) but they arenot necessarily sequentially numbered.

• If a revision is received for a batch that exists in the Inbox, the original/lower revision batch arediscarded. The revised batch are processed as if it was received with a timestamp of theoriginal/lower revision batch.

• If a revision is received for a batch that does not exist in the Inbox (the original batch couldalready be processed / never received / yet to be received), the revision is processed as thoughit was an original version.

• If more than one revision is received, only the highest revision number are processed. All lowerrevisions are discarded.

• Revisions received are not be tracked.This means that if Revision 5 was received and processedand Revision 2 was received later, Revision 2 is processed (even though it is an earlier revision).

• To manually skip/abort the incomplete batch, update the IONBatchNum record. If used, thenext message in the Inbox (by Timestamp) are processed next.

Aborted batch BOD behavior detailsIf an abort is received for a batch (complete, incomplete, out of sequence, revision), in the Inbox,the following behavior occurs:

• The Inbox discards the batch and all instances of the batch. (If there was an original plus arevision, the abort discards all.)

• An abort received for a non-existent (in the Inbox) or already processed batch is ignored.

• If an original, a revision and an abort are received for the same BatchID, the abort applies toall instances, resulting in the original and revision being discarded. This means that the abortdoes not cancel just the revision, it also cancels the original.

Batch BOD number trackingThe IONBatchNum table is used to keep track of the last batch number for each BODType +FromLogicalId. The table consists of these fields:

Lawson Process Automation Administration Guide | 105

Configuring Channels and Receivers for Use with Lawson Process Automation

Page 106: Lawson Process Automation Administration Guide

• BODType (key)

• FromLogicalId (key)

• Last batch #: This means for the particular BODType+FromLogicalId, the next batch numberis expected to be the LastBatch# + 1 (if Sync is used).

Event Hub Channel / Receiver ConfigurationThe Event Hub channel / receiver is for receiving messages coming in from the Event Hub applicationwhich will, in turn, be used to trigger a process. This topic describes how to configure the channel /receiver.

Configuring an Event Hub channel

When you configure an event hub channel, you specify the location where the messages will be receivedfrom.

1 From the Lawson Rich Client canvas Navigator click Process Server Administrator > Administration> Channels Administrator and then click the Event Hub Channel List tab.

2 From the top portion of the dialog box, click Action > Create.

A dialog box for configuring channel options appears.

3 Make selections for the following parameters:

DescriptionOption

Assign a name to the channel. This can be anything you wantand can include numbers and special characters. Use a namethat reflects the purpose of the channel.

Channel Name

Optional. Assign a description that provides some detail aboutwhat the channel is used for.

Description

By default, the channel is enabled meaning that it is availableto activate. This activation could be either automat whenLawson Process Server is started or manually.

Is Enabled

If a channel is disabled, none of its receivers can be activated.

The directory to monitor for location of target files.External

Name or IP address of the channelHost

The number of the listening portPort

Flag to specify if the connection is secured.Secured

106 | Lawson Process Automation Administration Guide

Configuring Channels and Receivers for Use with Lawson Process Automation

Page 107: Lawson Process Automation Administration Guide

DescriptionOption

if secured, location of the authentication certificate.Key Store Path

Certificate passwordCert Password

Key store passwordKey Store Password

The name of the domain where the key store is located.Domain

Configuring an Event Hub receiver

When you configure an event hub receiver, you are telling Lawson Process Automation how to handlethe file data that comes in from a particular event hub channel.

1 With the channel for which you want configure a receiver selected, click Action > Create.

A dialog box for configuring file receiver options appears.

2 Make selections for the following parameters:

DescriptionOption

This field is pre-populated based on the channel for which youare configuring a receiver.

Channel Name

Assign a name to the receiver. This can be anything you wantit to be and can include numbers and special characters. Usea name that reflects the purpose of the receiver.

Receiver

Optional. Assign a description that provides some detail aboutwhat the receiver is used for.

Description

Lawson Process Automation Administration Guide | 107

Configuring Channels and Receivers for Use with Lawson Process Automation

Page 108: Lawson Process Automation Administration Guide

DescriptionOption

The event that the receiver is listening for that will trigger theprocess. This is a string that has the format:publisher:document:event

Subscription

You can specify no event (leave off third property) or multipleevents by stringing together multiple operation characters asshown in the following examples.

Example 1:

The following event specifies create and update operations onthe M3 item master.

M3:MITMAS:CU

Example 2:

The following event specifies any operation on M3 purchaseorder headers.

M3:OOHEAD

Example 3:

The following event specifies update operations on M3purchaser order lines.

M3:OOLINE:U

Display field. The time stamp showing the most recent time afile was processed by the receiver.

Last Message Received Time

The name of the process that will be kicked off when the eventoccurs.

Process

Determines when the receiver starts up. Options are:Startup Type

• Automatic: File starts up automatically when the systemstarts.

• Manual: File does not start automatically when the systemstarts. The administrator must start it manually.

• Disable: The receiver has been taken off-line, does notstart.

Display field. Current status of the receiver.Status

Display field. The time that the most recently received erroroccurred.

Last Error Time

Display field. Type of error of the most recent error that wasreceived. The system will display "Channel" or "Receiver."

Last Error Type

108 | Lawson Process Automation Administration Guide

Configuring Channels and Receivers for Use with Lawson Process Automation

Page 109: Lawson Process Automation Administration Guide

DescriptionOption

Display field. The text of the most recent error that wasreceived.

Last Error

Monitoring and administering channels and receivers

This section describes the administration procedures that can be used to perform maintenance onexisting channels.

Channel administration

The following menu items are available from the Actions menu on the Channel List tab for both JMSand file channels.

What it doesMenu option

Open a channel to change its configurationparameters. Update to save changes you made.

Open / Update

Deletes a channel.Delete

Activates or deactivates all enabled receiversassociated with the channel.You might do this,

Activate / Deactivate

for example, if you are troubleshooting acommunication problem and you want to shutdown all receivers while you do so.

Synchronizes the channel with information aboutit stored in the internal database.You might use

Reset

this if you are troubleshooting issues withcommunication.

Receiver administration

The following menu items are available from the Actions menu on the Receiver List tab for both JMSand file receivers.

Lawson Process Automation Administration Guide | 109

Configuring Channels and Receivers for Use with Lawson Process Automation

Page 110: Lawson Process Automation Administration Guide

What it doesMenu option

Open a receiver to change its configurationparameters. Update to save changes you made.

Open / Update

Deletes a receiver permanently.Delete

Activates or deactivates an individual receiver.Activate / Deactivate

When the grid starts, LPA attempts to start allenabled receivers. For all enabled channels, if

Enable / Disable

you want to ensure that a particular receiver isnot started in that situation, you can disable it. Adisabled receiver cannot be activated. When youare ready for the receiver to be active again, useEnable to re-enable it here and then activate it.

Receiver Last ErrorInformation related to issues/errors encountered during activation, deactivation, or processing withinactive channel receivers is captured and stored on the receiver record. Only one instance of informationis retained, i.e. the issue/error information stored on the receiver record is always related to the lastissue/error encountered (whether the issue has been subsequently resolved or not). The followingreceiver fields hold the information related to the last issue/error encountered:

(Error Message)Last Error

(“Channel” or “Receiver”)Last Error Type

(Time Stamp of last error)Last Error Date

Issue/error types

An issue/error may be related to the channel itself and so affect all active receivers under it, or berelated to an individual receiver and affect only that receiver.

If the issue/error is channel related, the issue/error is assigned to all active receivers under the channeland the Last Error Type on each receiver is set to “Channel."

If the issue/error is related to a specific individual receiver, the issue/error is assigned only to thatreceiver and the Last Error Type on the receiver is set to “Receiver."

Whether or not a “Channel” issue/error will override a previously assigned “Receiver” issue/errordepends on the nature of the channel issue and circumstances. Channel level issues encounteredduring processing that do not warrant automatic deactivation of receivers will be assigned to all activereceivers for the channel except those that currently have a “Receiver” level issue and are in an “Active

110 | Lawson Process Automation Administration Guide

Configuring Channels and Receivers for Use with Lawson Process Automation

Page 111: Lawson Process Automation Administration Guide

With Issue” status. An example of when the override would occur would be cases where the channelissue is such that the receivers are being automatically deactivated, such as when a JMS channelconnection is lost, or a FileSystemManager instance cannot be acquired for a File.

Receiver status

Assignment of “Active With Issue” or “Failed” status

If a channel receiver encounters issues while it is active, it may, depending upon the nature of theissue, go into an "Active With Issue" or a “Failed” status.

If the nature of the issue is such that it may “self correct” or be remedied by manual intervention withoutneed for receiver deactivation, the receiver will go into an "Active With Issue" status. Receivers in thisstate remain active and will continue to attempt normal processing. If normal processing is reestablished,their status will be reset to “Active”. (This is described in the next section, See “Active With Issue” statusresets:

If the nature of the issue is such that it is improbable that normal processing can be reestablishedwithout intervention and receiver deactivation, the receiver will go into a "Failed" status and deactivate.Both “Channel” and “Receiver” type issues may cause receivers to automatically deactivate and gointo “Failed” status. If the issue was a channel issue, the issue is assigned as a “Channel” type to allactive receivers under the channel overriding any pre-existing receiver type error information forreceivers currently in an “Active With Issue” status with a “Receiver” type issue/error. If the cause wasa receiver related issue, the issue is assigned as a “Receiver” type issue/error to the single receiveronly.

Resets of "Active with Issue" status to "Active"

Active receivers with “Active With Issue” status are reset to “Active” status as they continue to attemptnormal processing.

When processing begins for a channel, all its receivers that have an "Active With Issue" status with a“Channel” type issue are reset to “Active” status. Those with “Receiver” type issues are not reset atthis point.

Receivers in "Active With Issue" status with a “Receiver” type issue are reset to “Active” status whenprocessing begins for that specific receiver.

If the original issue does not recur (and no new issue is encountered), the receiver status will remain“Active.” Otherwise, issue assignment will occur as described elsewhere and the status set accordingly.

Indication of channel/receiver issues in the user interface

Indication of channel/receiver issues in User Interface If any receiver for an active channel is in “ActiveWith Issue” status, the “Is Active” value in the channel list will be decorated with a warning icon andthe text will be red. A mouse hover over the “Is Active” value will indicate “Monitoring issues exist”.

If a receiver is in “Active With Issue” or “Failed” status, its status in the receiver list will be decoratedwith a warning icon and text will be red. A mouse hover over the status will display the first part of therelated error information details. The details of the error information can be accessed via the Receiverform.

Lawson Process Automation Administration Guide | 111

Configuring Channels and Receivers for Use with Lawson Process Automation

Page 112: Lawson Process Automation Administration Guide

Monitoring and Troubleshooting

• "Managing Workunits" on page 113

• "Troubleshooting" on page 126

112 | Lawson Process Automation Administration Guide

Page 113: Lawson Process Automation Administration Guide

10Managing Workunits

• "Monitoring Lawson Process Server Workunits" on page 113

• "Sending email reminders to users of pending work items via a process" on page 115

• "Administratively or programmatically taking action on workunits " on page 117

• "Process execution log files" on page 119

• "Clearing logs and activities for workunits with status of Completed or Canceled" on page 120

• "Cleaning up workunit views and table data" on page 122

Monitoring Lawson Process Server WorkunitsWhen a process runs, it generates workunits, individual work items. For example, a purchase orderapproval process might require approval from several staff members. The approval action request thatappears in each person's Inbasket is a workunit.

Lawson Process Server Administrator menu provides a Workunits menu which provides tools formonitoring the process of workunits.This topic provides an overview of the tools and some informationabout what to do if a workunit is not functioning as you expected.

Workunits

Double-click this submenu to view a list of all work items that have been created.

Double-click an item on the list to view complete information about the workunit. This informationincludes:

• Number: Workunits are assigned a number when they are submitted.

• Work Title: The name of the workunit that was assigned by the initiator.

• Process: The name of the process of which this workunit is a part

• Status: Completed (normal completion), Failed, Waiting and so on

• Start and Close Date: The date that the workunit started and ended

• Elapsed Time: Amount of time the workunit spent executing

Lawson Process Automation Administration Guide | 113

Page 114: Lawson Process Automation Administration Guide

• Service: Name of the service that triggered the process (if any)

From the Action menu on this view, you can perform the following actions on workunits:

• Open: Use this option to view a complete set of information about the selected workunit. Thisincludes basic information: user who initiated, data area in which it is running, status, and so on.The bottom half of the dialog box contains tab that drill into details about workunit execution,including: activity node execution, user action execution (if any), variables, error messages and aconvenient way to view the log file.

• Restart: If a workunit is paused and you think a server problem might have been the cause, restartingcan solve the problem.

• Cancel: Use this option to cancel an in-progress workunit.

• Move workunit to history: Select workunits to take off the view and send to history.

• Delete workunits: Deleted workunits are not saved in history.

Action Pending Workunits

Workunits that currently are awaiting action from a user.This view is a convenient way to track workunitsthat need attention from a user.

From the Action menu, the following actions are available: Open (or Create), Move Workunits ToHistory, Delete Workunits.

Process Versions

When LPA process flows are uploaded to the LPA server, new process versions are created. The mostrecently uploaded version is used when new workunits are created.

Make Current VersionLPA administrators can revert to earlier versions of process flows by using the "Make CurrentVersion" feature on the Process Definition window.

You might want to do this if, for example, the new version of the process has errors and the LPAadministrator wants to go back to a previous version.

Existing workunits that are still in process, including those pending on user actions, will continueto use the process flow version that was current when the workunit was created.

To select the setting: From the Process Definition window, right-click the workunit and then, fromthe context menu, select Make Current Version.

Make Current Version on Action Pending Workunits

Important: Most administrators will neither need nor want to use this feature.

In rare circumstances, LPA administrators may want to change the process version used byworkunits that are still processing.

In order to use the feature, workunits must meet the following requirements:

114 | Lawson Process Automation Administration Guide

Managing Workunits

Page 115: Lawson Process Automation Administration Guide

• Only workunits that are still in process will be updated to use the new process version.Workunitsin any other status will be skipped.

• Only workunits that are still pending on a user action will be updated to use the new processversion. Workunits in any other status will be skipped

• The user action on which the existing in process workunits are pending must continue to supportall the actions that were previously available.

Not following these requirements could result in invalid workunit processing. Meeting therequirements is the responsibility of the developer of the process that is being updated.

To select the setting: From the Process Definition window, right-click the process version and then,from the context menu, select Make Current Version On Action Pending Workunit.

Workunit History

From the Action menu, the following actions are available: Open (or Create), Move Workunits ToHistory, Delete Workunits.

Sending email reminders to users of pending work items via aprocess

Administrators can configure a process, delivered by Lawson, that automatically reminds users whohave uncompleted work items in their Inbaskets to take action. This topic describes the configurationsteps.

When you complete the steps in this procedure, users who have pending work items receive an emailmessage similar ot the following in their Inbaskets.

Note: Process developers can make changes to the text and other formatting of the email in the sameway that you would for any other process. This topic does not provide the steps but they are availablein the infocenter.Figure 29. Example auto-generated email reminder message

Lawson Process Automation Administration Guide | 115

Managing Workunits

Page 116: Lawson Process Automation Administration Guide

Copy the delivered process to a local machine

The Lawson-delivered process must be copied from the installation location to the local machine ofthe person who will be updating the process in Lawson Process Designer.

• Copy the process Reminder_Summary_Emailer_Template.lpd from LACFGDIR/LPS/processes toa location on a local machine.

Edit the delivered process to add your data area

This step should be performed by an administrator or developer who is knowledgeable about LawsonProcess Designer.

1 In Lawson Process Designer, open Reminder_Summary_Emailer_Template.lpd and save it undera new name.

2 Edit the Start node (of your new version of the process file) to change the dataArea attribute to beyour local attribute.

3 Optional: Make any other changes, for example, email formatting, that you want for the process.

4 Upload your version the process to the server from which you want the process to run.

Configure the Are Reminders Enabled flag

Each user who will receive automatic reminders must have a flag enabled. This section describes howto enable the flag.

This procedure should be performed by a Lawson Process Automation administrator.

1 Log into Lawson Rich Client if you have not already done so.

2 Click Process Server Administrator->Configuration->Users->User.

3 Select the user you want to update.

4 Enable the Are Reminders Enabled flag.

Figure 30. Are Reminders Enabled flag enabled for a user

Enable the process to run

Decide how often you want the process to run and then schedule the process using the triggering andscheduling capabilities of Lawson Process Automation. Details about how to perform these tasks arein this infocenter.

116 | Lawson Process Automation Administration Guide

Managing Workunits

Page 117: Lawson Process Automation Administration Guide

For more information, see "Triggering a Process by Service Definition" on page 48.

For more information, see "Triggering a Process by Process Definition" on page 49.

Administratively or programmatically taking action on workunits

This section describes some specialized features of Lawson Process Automation in which administratorsand even a process can perform actions that would normally be performed by users.

Taking action on a workunit on behalf of a user: administrator function

Lawson Process Automation administrators can take actions on workunits that are pending on a useraction such as an approval.

You might use this capability if, for example, the user to whom an action had been routed (by theUserAction activity node) was unable to act which caused the workunit, and process as a whole, to bedelayed. In this situation, an administrator could find out from others affected by the process, whataction should be taken and then perform it from the administration console. Following are the steps inthat procedure.

Before you start You must know the action that you want to take before you perform this procedure.You can do this by reviewing the activity node that created the workunit to determine the availableactions. (The users who have asked you to intervene with the workunit might also have providedthis information.)

1 From Lawson Rich Client (or the Web UI), navigate to Process ServerAdministration->Administration->Workunits.

A list of workunits appears.

2 With the workunit for which you want to take action selected, right-click. Select Take action fromthe context menu.

Or

Double-click the workunit and then, from the Action menu, select Take Action.

A dialog box for specifying the action you want to take on the workunit appears.

Lawson Process Automation Administration Guide | 117

Managing Workunits

Page 118: Lawson Process Automation Administration Guide

3 Populate the following fields:

• Action: Type the name of the action. Use the exact spelling, including case, of the name as itappears in the UserAction node.

• Subject (optional): The subject line of the textual content of the action (if any).

• Message (optional): The textual contents of the action (if any).

4 Click OK when you are finished specifying the action to be taken.

Creating a process to automatically take action on workunits

This section describes how to set up a process to take action on a workunit.You might use this as away to, for example, run a process to clean up old workunits that have not been acted upon (by locatingthem and setting them to Reject).

The Landmark Transaction activity node is needed to update the Landmark system. Configure thenode as shown in the following example.

118 | Lawson Process Automation Administration Guide

Managing Workunits

Page 119: Lawson Process Automation Administration Guide

Figure 31. Landmark Transaction node showing configuration

For example, the Landmark Transaction might include the following configuration:

• Key Fields: PfiWorkunit

• Non-key Fields: Include any other fields that you need, such as Action, Message, Subject.

For this example, we use only one Action "Reject." This ensures that unprocessed workunits areclosed down and are ready to be deleted.

Process execution log filesIt is simple to capture data about process execution. Log files can quickly become very large.Typically,log files are disabled for normal processing on production systems.

The paragraphs that follow explain what kind of data is captured in the various log file settings and howto enable logging.

Logging settings are available from the Process Definition dialog box which is available when youcreate or edit a process definition.You can also specify logging settings when you upload a processusing Lawson Process Designer.

Lawson Process Automation Administration Guide | 119

Managing Workunits

Page 120: Lawson Process Automation Administration Guide

Figure 32. Setting log file options

Available logging levels are:

• None: No data is stored in the log file. Consider using this setting for a process that is runningsuccessfully and is not in need of troubleshooting.

• Workunit Only: The log file captures data about workunits only as they are created and movethrough the system.

• Activity Only: The log file captures data about each action an activity node makes, including whenthey are activated, run successfully, run unsuccessfully, responded to, and so on.

• Workunit and Activity: All flow actions are captured. This setting generates a large amount of data.

Clearing logs and activities for workunits with status of Completedor Canceled

Depending on how many processes you run and how many workunits they generate, deleting logs andworkunit activity data can be an important part of your system maintenance plan.

This section describes how to clear workunit logs and activities for workunits with Completed or Canceledstatus. This procedure is a way to minimize the amount of data related to workunits that is stored onyour system without deleting the important artifacts (for example, execution date/time and user actions)for a workunit.

The procedure does NOT explain how to:

• Archive workunits in history.

If you do not want completed workunits to appear in workunit lists but you do not want to deletethem and their associated data, you can move the workunits to history. Workunits retain allassociated data for as long as they remain in history.

For more information, see "Cleaning up workunit views and table data" on page 122.

• Permanently delete all workunit data.

It is possible to permanently delete workunit data. If you have old data that you know you will neveragain need, deleting the data (which can become quite large) might be a good idea. (Informationabout how to do this is in another section of this infocenter.)

120 | Lawson Process Automation Administration Guide

Managing Workunits

Page 121: Lawson Process Automation Administration Guide

1 From Lawson Rich Client, click Process Server Administrator -> Administration -> Workunits ->Workunits and then, from the Actions menu, select Clear Logs And Activities.

You will be on the Clear Logs and Activities dialog box.

2 Select the type of records that you want to clear. Options are:

• Clear Workunit And Activity Logs: This gets rid of all log data for workunits and activities.

• Delete Activities And Activity Variables: This option deletes activity records but retains logs.

• Delete Workunit Variables: This option deletes workunit variable information but retains activityinformation and logs.

3 Select the records you want to delete. Options are:

• All Workunits: Lawson recommends that you do not select the All Workunits option. This optionprocesses all workunit data, and could present problems if it was selected in error. If you dowant to delete a large chunk of old data, using date filtering available in the Workunit Rangeoptions might be a better way to achieve this.

• Workunit Completion Date Range:This option processes only workunits with status of Completedor Canceled.

You can specify Begin and End dates by selecting from the dropdowns

Or

Type the number of days prior to the current date that you want to process. For example, if thedate is February 1 and you want to keep January data, type "31" here.

• Workunit Range: This option processes by workunit number. Specify Begin and End workunitnumbers by selecting from the dropdowns.

Lawson Process Automation Administration Guide | 121

Managing Workunits

Page 122: Lawson Process Automation Administration Guide

Cleaning up workunit views and table dataRunning processes can generate a large amount of data in the database.

This topic describes how to:

• Move workunits from the Workunit view to the Workunit History view

• Delete data permanently when it is no longer needed

Following are some options:

• Move workunits to history

This procedure does not delete any data; it moves workunits from the Workunit view to the WorkunitHistory view.

Only workunits that have the status Completed or Canceled can be moved to history.

"Moving workunits to history" on page 123

• Permanently delete one or more workunits and all associated data

This method permanently deletes all information about the workunit/s.You can delete workunitsthat appear in the active list or workunits that have been moved to history.

Only workunits that have the status Completed or Canceled can be deleted.

"Deleting workunits" on page 123

• Auto-delete some data associated with a workunit through autopurge

The autopurge feature is a method for permanently deleting some, but not all, data associated witha workunit. When autopurge is enabled, data in the PfiActivity and PfiActivityVariable tables forworkunits that have completed successfully (those with status Completed) or terminated (thosewith status Canceled) is deleted.

"Using autopurge to automatically delete some runtime data for completed workunits" on page 124

How often should you clean up your Lawson Process Automation data?

Best practices for cleaning up Lawson Process Automation workunits are determined at your site.Decisions about how often to archive and delete are based on how many processes you run and howmuch runtime data the workunits generate.

For example, if your processes generate a moderate amount of data, you might want to delete workunitdata monthly.You could run the delete procedure on the last day of the month (on March 31, deleteFebruary data).

If your processes generate a large amount of data, you might want to delete the previous week's dataevery Monday morning.

Information about how to specify dates for deleting workunits is in another section.

"Defining parameters for deleting workunits or moving workunits to history" on page 123

122 | Lawson Process Automation Administration Guide

Managing Workunits

Page 123: Lawson Process Automation Administration Guide

Moving workunits to history

You can remove workunits from the Workunit view but retain them (and their associated data) so thatthey can be viewed in the Workunit History view.

Note: Moving workunits to history is optional.You can permanently delete them directly from theWorkunit view.

1 From Lawson Rich Client, open the Lawson Process Server administration menu.

2 From the Workunits view, select the workunit/s you want to move to history.

Or

Define parameters for moving workunits to history.You can specify by date, by associated serviceor by process.

"Defining parameters for deleting workunits or moving workunits to history" on page 123

3 Click Actions->Move Workunits to History.

Workunits are flagged as "archived" in their associated tables but the data is not deleted.

The workunits can be viewed in Workunit History.You can permanently delete them from history if youwant to.

Deleting workunits

You can delete workunits from the Workunits or the Workunit History view in the Lawson ProcessServer administration console.

1 From Lawson Rich Client, click Process Server Admnistrator->Configuration->System Configuration.

2 From the Workunits or Workunit History view, select the workunit/s you want to delete.

Or

Define parameters for deleting workunits.You can specify by date, by associated service or byprocess.

"Defining parameters for deleting workunits or moving workunits to history" on page 123

3 Click Actions->Delete Workunits.

Or

Right-click and select Delete from the context menu.

Workunits that have the status or Completed or Canceled are permanently deleted from the viewand from all associated data is removed.

Defining parameters for deleting workunits or moving workunits to history

1 From the Workunits or Workunit History view, select Actions->Delete Workunits or Actions->MoveWorkunits to History.

A dialog box for specifying the workunits appears.

Lawson Process Automation Administration Guide | 123

Managing Workunits

Page 124: Lawson Process Automation Administration Guide

Figure 33. Screen capture: Specifying workunits to be deleted or moved to history ("Delete Workunits" view shown)

2 Specify Begin and End Dates for the workunit selection.

For example, to delete (or move to history), workunits that completed or were cancelled in January2011, select "January 1 at 12:00:00 AM" for Start Date; select "January 31 at 11:59 PM" for EndDate.

3 Optional. Select the Service Name or Process Name (you cannot select both), if you want onlyworkunits associated with a particular service or process.

4 Click OK when you are finished making specifications.

Using autopurge to automatically delete some runtime data for completed workunits

If the autopurge feature is enabled, data in the following tables is automatically deleted:

• PfiActivity

• PfiActivityVariable

In the following situations, runtime data for workunits with status Completed or Canceled is notautomatically deleted:

• Workunits associated with user actions (UserAction and HCMUserAction activity nodes).

This ensures that actions that have been taken on a workunit are not lost until you choose to deletethem.

• Data in the PfiWorkunit table, the highest level in the table hierarchy.

This means that workunits appear in your Workunit view until you delete them.

Important: While autopurge does not delete all data associated with a workunit, it does delete dataabout activity node execution (except for UserAction and HCMUserAction nodes). This might beappropriate depending on your circumstances. However, if a process is new, you might want to keepautopurge disabled until you know that the process runs as intended.

In addition, if your processes do not generate a large amount of data, you might want to leave autopurgedisabled and delete data from Workunits and/or Workunit History views per the schedule you haveestablished.

124 | Lawson Process Automation Administration Guide

Managing Workunits

Page 125: Lawson Process Automation Administration Guide

Enabling AUTOPURGEAutopurge is enabled when the autopurge parameter is added to your system.

1 From Lawson Rich Client, click Process Server Administrator->Configuration->SystemConfiguration and then select the System configuration.

2 With the System configuration selected, click Actions->Add.

3 Type "AUTOPURGE" as the Name of the parameter and "TRUE" for the Value.

You can also add a Description of the parameter.

Figure 34. Screen capture: AUTOPURGE parameter added to the system

Some data associated with the purged workunits, including data in the main PfiWorkunit table, stillexists and appears on the Workunit list.To permanently remove this data follow deleting proceduresdescribed earlier in this topic.

Lawson Process Automation Administration Guide | 125

Managing Workunits

Page 126: Lawson Process Automation Administration Guide

11Troubleshooting

• "Troubleshooting Lawson Process Server" on page 126

Troubleshooting Lawson Process Server

This section lists some specific problems that might occur during execution of a process and what todo about them.

General troubleshooting steps

Any time you notice a process or workunit not executing as intended, perform the basic troubleshootingsteps outlined here.

1 Look at the details of the workunit.

From Lawson Rich Client, click Process Server Administrator->Administration->Workunits.

2 From the list of workunits that appears, highlight the workunit(s) that are not executing.

3 From the Actions menu, select Open to view details about workunit execution, including the log file.

You can also view the log by opening the following file in a text editor:

YourInstallationLocation/system/lps.log

4 Take appropriate action to resolve the problem.

Examples of appropriate action include:

• Send a notification to a person who has not acted on a work item.

• Restart the workunit.You might do this if, for example, logs indicate that the server went downduring the workunit execution timeframe.

• Review the list of problems that might occur (next section) to determine if any of these arecausing your problem.

126 | Lawson Process Automation Administration Guide

Page 127: Lawson Process Automation Administration Guide

Lawson Process Server Execution Issues

This section describes some symptoms that might occur with LPS and gives suggestions about howto handle them.

Possible cause / Corrective actionSymptom

The most likely cause is a problem related tooverall operation of the server.

A process did not start as expected.

1 Run the gridmon utility and check the statusof the LPS node.

2 Review messages in YourInstallLocation/system/lps.log

Check the Asynch communication queue.A workunit is in Ready status but it is taking longerto execute than you think it should. 1 From the canvas Gen data area main menu,

select Async Web App / Async FrameworkComponents / Triggers.

2 If the workunit appears here as Failed, selectit, select Actions, and then select Requeue.

3 If the workunit does not papear on the Triggerslist, check the LPS queue.

From the canvas Gen data area main menu,select Async Web App / Async FrameworkComponents / Queues. If the LPS queue islisted, select it, select Actions and then selectRequeue.

On the canvas in Data View, go to the data area/asynch, check PFIqueues.

A workunit has a status other than Ready and thereason is not obvious.

Performance seems slow

If you believe a process or the system in general is not performing as efficiently as it should be, somethings to check are:

• Are log files turned on or have they grown very large? In general, log files should be turned offexcept when you actually need to capture information for troubleshooting purposes. Informationabout how manage log files (turn off / on, clean out) is in another section of this infocenter.

For more information, see "Process execution log files" on page 119.

"Cleaning up workunit views and table data" on page 122

Lawson Process Automation Administration Guide | 127

Troubleshooting

Page 128: Lawson Process Automation Administration Guide

• If a process includes M3 and JDBC activity nodes, check the pool configuration for theseconnections. Changing pool settings can improve performance. Information about how to configurepool settings is in another section of this document.

For more information, see "Configuring Grid and other properties for Lawson Process Automation"on page 56.

128 | Lawson Process Automation Administration Guide

Troubleshooting