The LawsonGuru Letter, brought to you by Decision Analytics  

October 2006


Click here to forward to a colleague


In this issue:
1. RMI (In)stability
2. Lawson ProcessFlow: You own it. Use it.
3. Worthwhile Reading
4. Lawson Tips & Tricks

The LawsonGuru Letter is a free periodic newsletter providing provocative commentary on issues important to the Lawson Software community.  The LawsonGuru Letter is published by—and is solely the opinion of—John Henley of Decision Analytics.

Visit Decision Analytics at For subscription information, see the bottom of this message.  The LawsonGuru Letter is not affiliated with Lawson Software.

  1. RMI (In)stability )  
  Over the past several months, I’ve been collecting your comments about stability issues regarding RMI. As many of you know, RMI is used by Lawson Internet Object Services (IOS) to communicate between IOS and the Lawson ERP applications. In other words, it’s a critical component of Lawson’s “technology stack”, and is, literally, the backbone of Lawson Portal. Without it, Portal will not work. And for many of you, RMI instability is a real serious problem.

The good news is that, with Lawson System Foundation (LSF) 9.0, your RMI issues should disappear, since Lawson’s RMI component is replaced by an IBM Websphere component, hopefully proving to be more stable. However, even with a rapid adoption of LSF 9.0 by Lawson’s clients, many organizations will continue to be running Lawson Environment/IOS 8.0.x (and therefore RMI) for the foreseeable future.

In order to gauge how prevalent these problems are, I solicited your feedback on these questions:
  • How are global and/or 24x7 organizations dealing with having to restart RMI unexpectedly?

  • What versions, ESPs, patches, settings, etc. seem to make it more stable?

  • What software combinations and/or platforms (Tomcat/Apache, Tomcat/IIS, Websphere, etc. etc.) seem to perform the most reliably?

  • If you've suffered from RMI instability, have you contacted Lawson? If so, were you satisfied with their response?

Here are your responses:

How are global and/or 24x7 organizations dealing with periodic RMI restarts?
We have had problems with RMI for the past year and a half and have had to recycle it every couple of months during the day. But every once in a while it just gets out of whack and requires many recycles in a short period as it has in the past few weeks. Usually they are unexplainable. In any event, we recycle RMI every night during our backups (we have a three hour down time window).
In the past three weeks, we have had to recycle RMI about 4 times. Normally simply recycling it has fixed it in about 10 minutes but nonetheless, that is still downtime that the users do not like. Last week it simply would not recycle; for some reason the port that it uses to connect to the application was blocked. Even though our monitors said RMI was started, it could not get through the port to communicate with the application. We had to reboot our web servers several times before the port got released. We do recycle RMI every night during our backups (we have a three hour down time window).
We have a weekly scheduled downtime from 10:30 pm to midnight on Wednesdays. We use this time to recycle the entire Lawson system every week. This seems to help prevent issues with RMI.
With RMI crashing so frequently, we automated a "RMI restart" process, which is a script that runs on the Unix application server. The script checks RMI every 15 minutes with a simple TCP syn command to see if RMI is responding or not. If there is not a reply within a few seconds, the script restarts RMI--at first gracefully, but if that fails, it will do so forcibly. As the last step, the script reboots the Windows Web server that is running IOS remote.

What versions, ESPs, patches, settings, etc. seem to make it more stable?

We haven't found any ESPs or patches that made things more stable. When we were on 8.03.ESP4 we were promised that things would improve greatly once on 8.03.ESP6. In fact, things initially were much worse after our environment upgrade.
We are on environment running SunOne 6.0 web server/servlet - we have to restart portal about monthly.. This is definitely more stable than 8.0.3.ESP5 - it was weekly. When we were running environment - Lawson said that before they would help us we needed to go to – not a very receptive answer.

What software combinations and/or platforms seem to perform the most reliably?

The main thing that seemed to help was shortening our LIBPATH statement. Lawson said they've seen issues when this was too long, although they couldn't quantify what was too long. Additionally, increasing our java min/max size in the RMI start script and Tomcat start script.
We reboot our server once a week. We rarely if ever need to restart RMI. In any event, our configuration is: Windows 2003/IIS 6.0; Java 1.4.2-11; Tomcat 4.1 Lawson Env/IOS
The most reliable RMI at this point in time is Websphere application Server 6.0. Very few are on it at this time. It has the most scalability. It is now supported as of 8.03.ESP7 for all Platforms.
Most robust Tomcat installation is free standing Apache 2.0.X and Tomcat 5.0.28 on a Unix server by itself running remotely.

 If you've suffered from RMI instability, have you contacted Lawson? If so, were you satisfied with their response?

We have had issues with the stability of RMI. We are using AIX 5.1, Environment 8.0.3.ESP5 and periodically the RMI process will crash or hang, causing Portal to become unavailable. Lawson created a ticket for us; it has been open since last year, and we have not gotten any updates since then. When the process does crash, we receive a java core dump, which indicates a SIG Fault in the library. We have sent Lawson copies of these dump files, but it does not appear to have helped them resolve the issue.
When we were running environment - Lawson said that before they would help us we needed to go to – not a very well-received answer.
In most cases, we are able to fix RMI issues ourselves but we did contact the GSC to help with one occasion. After a little prodding, we were able to get two support people on a conference call to resolve the issue. Their initial attempts did not work but after some additional steps, they were able to point us in the right direction. I am not a big fan of the GSC, but on this occasion--when it was a system down issue--they performed quite well. They stayed on the phone until we resolved it.
Lawson's response to the RMI stability issues has been non-existent. We have tried all the suggested tweaks, changes, and patches that they have suggested, and RMI stability continues to be abysmal for an Enterprise Production application. So far Lawson has been the most unstable of all the Enterprise apps that we have installed. Lawson's latest response to the RMI stability was that they will not fix the problem with ESP5--that we must upgrade to ESP6 for them to continue troubleshooting.
We have approximately 12,000 employees, and roughly 900 Lawson users. We rolled out the portal a couple of years ago, but we have users that refuse to use it because it isn't as stable as LID. We have opened several tickets with Lawson but never really seem to get things fixed. Most recently, we increased our java memory settings, which seems to have decreased the number of complaints but hasn't entirely fixed the problem.
We have opened several tickets with Lawson, and even spoke with their RMI "guru" at Lawson CUE, but haven't gotten much help. They won't give any advice or recommendations regarding Tomcat/Apache. They have told us that the behavior we have seen with RMI isn't normal, but they can't say what is making it crash or cause users to timeout.

Well, there you have it.  Next month we'll look at some techniques for increasing the stability and scalability of RMI.

  2. Lawson ProcessFlow: You own it. Use it. )  
  Lawson ProcessFlow: If you own it, why not use it?

ProcessFlow; Most Lawson clients don't understand it, or appreciate its potential. You may not even realize that you own it.

If you are like many Lawson clients, ProcessFlow was installed as part of your initial setup and likely hasn't been touched since. Maybe your implementation team set up some initial flows to approve requisitions and you've never revisited the idea of utilizing Lawson's ProcessFlow products to automate more of your business processes. If you were part of the Lawson sales cycle, you may remember ProcessFlow being a major selling point for ERP.

For example, you can use ProcessFlow to implement systemic consistencies, which are central to achieving regulatory and/or voluntary compliance, e.g. Sarbanes-Oxley. As opposed to the knee-jerk reaction of adding LAUA security, a tool limited to the separation of duty and data - your goal should be to become a process-driven, rather than function-driven, organization.

The key, of course, is ProcessFlow. Every significant business action (e.g. adding an employee, releasing an invoice, etc.) which requires coordination across your organization could trigger a corresponding ProcessFlow. You can choose from some of Lawson’s delivered triggers—here is a sampling:

System Code


Name of Trigger



Activity Addition Approval


AC12, AC112

Activity Status Change


AC65, AC165

Activity Contract Complete



Invoice Balance Match Edit
No Receipts in Match Pool
PO Cost Discrepancy
Unmatch Invoice


AP25, AP26, AP125, AP126

Invoice Approval
Unmatch Invoice



Customer BillTo Address Change



Customer Add or Credit Limit Change



Transaction Transfer



Transaction Grouping



Disputed Invoice



Return to Maker Payment



Customer ShipTo Added



Cost Allocation


GL40, GL45, GL75, GL170

Journal Entry Approval



Job Requisition Approval



Personnel Action Approval



Activity Budget Exceeded


PO30, PO35

Requisition Item Received



Inspection Item Rejected



Inspection Required



EDI PO Acknowledgment



Activity Budget Exceeded
Rush Item
Requisition Approval


WH30, WH31, WH32

Shipment Backordered or Voided

You can also create your own where needed. This can be done with just a few lines of code inserted into the user exit of the application code. Or, if you’re using Lawson Design Studio, you can add your trigger for ProcessFlow from a Portal form. Either way, it’s supported and maintainable.

Think of the typical orchestration that is required when you hire a new employee. Why not use ProcessFlow Integrator to handle all the updates/notifications that are needed for IT accounts, asset provisioning (i.e. new computer, desk, furniture, etc.) and security access, orientation/training, etc:

Once you become process-driven, you can use the metrics collected by ProcessFlow to determine where your bottlenecks are. And with automatic escalation, you can re-route flows that sit in someone’s Inbasket too long.

Finally, if you’re using (or starting to look at) LSF 9.0, you’ll want to check out the new features that Lawson merged from BCI into ProcessFlow to create ProcessFlow Integrator 9.0. With these new capabilities, like SQL queries/updates, reading/writing files, etc., this is your opportunity to re-architect that kludgey mess of scheduled jobs/shell scripts/user tokens, etc. you probably call “integration”.

So, how about it--are you ready? Start driving your business with ProcessFlow, and you’ll wonder how you lived without it!

  3. Worthwhile Reading )  
  What's The Greatest Software Ever Written?


“The measure of success is not whether you
have a tough problem to deal with, but whether
it's the same problem you had last year.”

-- John Foster Dulles

Witness the definitive, irrefutable, immutable ranking of
the most brilliant software programs ever hacked.
Information Week, August 14, 2006

20 Great Ideas From InformationWeek 500 Companies
They're an innovative bunch. There's probably a notion or two
worth borrowing for your business.
Information Week, September 11, 2006

Home Delivery
Frustrated by chasing down endless — and endlessly changing — information,
some corporations are turning to RSS.
CFO Magazine, July 2006
  4. Lawson Tips & Tricks )  

Conditionally Printing Page Headers in Crystal Reports

(This month's tip comes from Charlie Marcous at Stride Rite Corporation)

Last month's tip issue (see included one for Crystal Reports, which combined formulas across the group header, group footer, and page header to print "This Group Continued on next Page".

Charlie has been successful in doing something very similar with a different approach - namely combining several functions to conditionally print page headers on subsequent pages only when printing form letters from Crystal:

Use a "suppress formula" in Page Header a:

//formula to suppress Page Header a:
PageNumber > 1

Then in the Group Footer, reset the page number after printing the vendor:


Please share The LawsonGuru Letter in whole or in part as long as copyright and attribution are always included.

Decision Analytics is an independent consultancy, focusing on Lawson technical projects, and specializing in reporting, customization/modification, data conversion, and integration/interfaces. Please visit for more information.