The LawsonGuru Letter, brought to you by Decision Analytics  

January 2006


Click here to forward to a colleague


In this issue:
1. Guest Spot: Abbott & Costello Discuss the Skip Upgrade: “Who’s on 8.1 ?”
2. The Broken Chain & Lawson 9.0
3. Dealing with Timeouts on Long-Running Forms
4. Worthwhile Reading
5. 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.

This month,
Heather Bindbeutel and Andrew Needham use the Guest Spot to share some Lawson-related comic relief. 

  1. Guest Spot: Abbott & Costello Discuss the Skip Upgrade: “Who’s on 8.1 ?” )  
  • Who’s on 8.1?
  • No. Who’s off support, has been for a while.


  • What?
  • No. What’s the UM.


  • Don’t you mean PM?
  • No. UM--he’s the umpire!


  • The umpire!?! So who’s batting?
  • No. Who’s in left field dreaming about 8.1. Law Admin is batting!


  • Law Admin--is he any good?
  • He’s very good.  He’s been batting 7.2.5 for a while now!


  • Well, isn't 7.2.5 good enough?
  • 7.2.5 was the old standard, but 8.1 is what everyone needs to get to.


  • Who says that?
  • Law Son.  You know—he’s the pitcher.


  • The Pitcher, hmm, is Law Son the son of Law Admin?
  • Be quiet—it’s supposed to be a secret, but Law Son fathered Law Admin.


  • Oh, so what’s the catch?
  • No. What’s the Umpire. Money is the catch.


  • Money?
  • Yes—Monies always the catcher.


  • Oh, now I get it.
  • Yeah and one of Monies relations is playing first.


  • Who’s that?
  • No. Who’s in left field dreaming about 8.1, Budget is on first.


  • Budget!
  • Yeah. Budget.  He’s a key player in this game, but he worries.


  • He worries about what?
  • No he’s not worried about the umpire, he’s worried about bugs!


  • Bugs?
  • Yeah—bugs is on second.


  • Has bugs been a problem in the past?
  • Yeah he has, he was almost suspended after 8.0.2, cleaned up his act for 8.0.3, but he’s been a problem again in 8.1.


  • Well, sounds like bugs is a problem!
  • He is.  But Patches the Commissioner is making him go through system testing!


  • Oh no, you don’t say?
  • Yep, Steroids!


  • So if Law Sons Pitching, Monies is the catcher, budget is on first and bugs is on second, then who is on third?
  • No Who’s in left field dreaming about 8.1, it’s  Con Sultant.


  • Con Sultant!
  • Yeah he’s on third, but no-one pays a lot of attention to him.


  • Figures! So Who’s at the center.
  • No.  Who’s in left field dreaming about the upgrade. Data is at center.


  • Data? Isn’t he from Star Trek?
  • No—data is at the heart of the game and everyone assumes he’s fine but he needs some clean up.


  • Clean up?
  • Yep, he’s had some subsystem control problems in the past.


  • Like Bugs?
  • Just like bugs, patches has made him have to undergo some paint screening too!


  • More Subsystem abuse!
  • Yep—Steroids again.


  • So, Who’s shortstop?
  • No Who’s in left field dreaming about the upgrade. 8.0.3 is the shortstop.


  • What? Who’s playing right field?
  • No. What is the Umpire. User is playing right field.


  • Which user? end or super
  • No—I ‘m not sure which one of the users it is!


  • Oh yeah, we’ve had a lot of turnover in that position and we’re definitely going need more matching practice!
  • So Law Admin really has his work cut out to get to 8.1.


  • Absolutely, he has to overcome Law Son—who’s pitching, Money—who’s the catcher, Budget—who’s on first, Bugs and the Con Sultant! Plus, deal with Data and the Users!
  • Hmm, is grounding out to shortstop an option?


  • Well, going to 8.0.3 is always an option, but if you have to play the upgrade game, you may as well go to 8.1!  Or, of course you could wait out the off-season, and go to 9.0!
  • Well, let’s get this game started!
  2. The Broken Chain & Lawson 9.0 )  



Over the past few months, my wife and I have been tooling along our local bike trails. This came to a surprise halt a few weeks ago. First indication of a problem was that my chain was slipping every now and then as I pedaled hard up a hill. This time was no different, as the chain slipped a couple of times. No problem, I figured—I’d just take my bike into the local shop and have them give it the once-over.

We only had a couple more hills to climb (thankfully, the people in the parks department have managed to put most of the trails along some old railway lines). Then, bam! The chain snapped clean in two. This meant a long walk home, and plenty of time to contemplate the meaning of this, in Lawson terms, of course. (You know that I’d come to that part eventually, didn’t you?). Sometimes you just can’t bear the weight any longer, and need a stronger chain. Just like my own need to get a new, stronger chain, Lawson has also been addressing its own underpinnings.
For years now, I have been advocating that Lawson needs to get out of the technology business and focus on the Applications. Get away from all of this middleware nonsense—leave that to the companies whose specialty it is. Focus on the applications—which is the raison d’etre of Lawson—business applications, and processes.

In case you missed it, Lawson recently signed on Wal-Mart as a new client for the HR suite. Think for a moment about the magnitude of this. Think about your own organization, and the weight that bears down on the Lawson infrastructure on a daily basis. And, then think about putting that infrastructure under the stress of 1.3 MILLION employees. Which leads us into Dean Hager’s recent announcement (see that Lawson has released Lawson 9.0!

Gone is the proprietary plumbing, and limitations imposed by it. No more taking down the system to do dbreorgs, and install CTPs.

Well, stability and scalability are at the crux of 8.1 Technology—and now Lawson System Foundation 9.0—as well as future releases. It means that Lawson can—plain and simple—allow you to manage and maintain your Lawson software better. Gone is the proprietary plumbing, and limitations imposed by it. No more taking down the system to do dbreorgs, and install CTPs. No more “bigger box replacements” in order to scale higher.

By bundling Websphere and DB2 (and no longer supporting Apache/Tomcat), LSF 9.0 continues to cement Lawson's relationship with IBM. For Lawson, I’m sure it’s scary to be putting their livelihood at the behest of IBM. They no longer have the comfort of knowing that if something doesn’t work, it’s their code so they can fix it. They now have to rely on another company—but who better than IBM? I see this as a positive, and see it as Lawson taking another page out of the Microsoft playbook: be the best product on a given platform, foregoing the other platforms in the process.

I think a lot of smaller clients will be initially taken aback by Lawson's "one-time charge" for the LSF 9.0 upgrade, which is a essentially a surcharge for the IBM bundled products, but those clients will eventually come around since it will be cheaper than switching, and it really does make Lawson a better, more stable, more robust solution.

What about back-version support? Lawson's historical position has been to support the two most recent major releases. Given the recent 8.1 Technology release and the new LSF 9.0 release, this may mean that Lawson will decommission of 8.0.x environments--sooner rather than later. Not something that clients will want to hear. We do know that the 8.0.2 Unix/Windows Environment will be decommissioned in 2007, but we’ll have to wait and see about 8.0.3. Since Lawson has actually scrapped the 8.1 Technology release (any clients currently running 8.1 Technology will be moved to LSF 9.0), it may be that Lawson will consider 8.0.3 Environment/IOS and LSF 9.0 as the currently supported released. This would be a welcome news.

Oh, and by the way, LID will continue to work--even with 9.0--although you can't take advantage of the new Lawson Security enhancements. Nevertheless, it does move you closer to Landmark!

  3. Dealing with Timeouts on Long-Running Forms )  
  Occasionally, you need to perform an action on an on-line form which takes longer to execute than most forms.  Some common examples would be:

HR11 - Adding an Employee
AC61 - Burden Code Assignment (Deleting a burden code)
AC45 - Backing out transactions
BR21 - Cancelling an Invoice

There can be several reasons why these forms take a long time to run, but most of the time they are legitimate.  For example, I have seen BR21 timeout when canceling an invoice that has thousands of detail lines.  Here are some things to consider when you come across this problem.


The first point to consider is the LOOPTIMEOUT parameter in latm.cfg:

This LOOPTIMEOUT parameter exists in order to protect from 'run-away' forms--in other words, if a form is executing an action, and never returns, LATM will 'kill the process' for this form once this timeout value is reached.  If you frequently experience timeouts for multiple forms, you should probably increase this parameter slightly--although don't go overboard.  After you change the LOOPTIMEOUT parameter you can use this command to put it into effect, without stopping/restarting Lawson:

$ tmcontrol -rc

If you are finding that only one form (or just a few) are timing out, you can consider changing the timeout parameter for the specific program by changing it to 'No Timeout' in pgmdef:

Setting a program to 'No Timeout' overrides the LOOPTIMEOUT parameter in latm.cfg for that specific program, so be sure that your decision is based on a legitimate reason for overriding the timeout features in LATM.  If you do run into a problem (such as a database deadlock), you'll need to manually intervene and kill the appropriate LATM process yourself, rather than having LATM do it.

Keep in mind that these values only apply to LID.  Your web server also has a "page timeout" value.  This is configured in httpd.conf for Apache:

And in IIS on Windows:

In most cases, your timeout on the web server will be shorter than the LATM timeout value.  And if you have the 'No Timeout' parameter set on a form, and run that form from Portal, you will receive a timeout error in Portal.  So, in those cases you'll need to use LID!

  4. Worthwhile Reading )  
  Striking a Balance
Can finance departments be cost-effective and smart at the same time?
CFO Magazine, November 2005

Inside the Software Testing Quagmire
Software testing reveals the human failings behind the code. That’s why it can become a never-ending exercise in denial. Here are five questions that you can ask to help you cut through to testing’s root problems.
CIO Magazine, November 15, 2005


“You've got to think about the big things while you're doing small things,
so that the small things go in the right direction.”

-- Alvin Toffler

Finance Is from Mars, HR Is from Venus
Can finance and human resources ever see eye to eye? They'd better.
CFO Magazine, November 2005

Picture This
Businesses produce tons of data on a daily basis. Making sense of that information is no small feat.
CFO Magazine, November 2005
  5. Lawson Tips & Tricks )  

Use metadumptbl and metaloadtbl to move Custom Table Definitions

In the past, if you created a custom table in a Lawson product line and you needed to move it to another product line, you were pretty much stuck with creating the new table in the target product line. In some circumstances, you might be able to use sysdump and sysload, but for the most part, it was a whole lot of re-keying the table and index layout.

This is no longer the case, thanks to a couple of utilities included in the Lawson Application Maintenance Toolkit (AMT).

When Lawson delivers an MSP and/or CTP, it includes a raft of metadata, such as message files, program definitions, etc. Well, this also includes table definitions. Behind the scenes when you load an MSP or CTP via lawappinstall, the table definitions are loaded from the table metadata file(s) using the metaloadtbl utility.

The good news is that you can use the corresponding utility--metadumptbl--to dump a table definition yourself, and then use metaloadtbl to load it in another product line:

$ metadumptbl <old product line> <custom tablename>
$ metaloadtbl <new product line> <custom tablename>

If you have custom elements (i.e. your table contains elements/fields that are unique and not part of Lawson's defined elements), you'll also want to use metadumpelm and metaloadelm before you dump and load the table definition.

You'll still need to run blddbdict and dbreorg, but at least you'll save yourself the headache of manually creating the table definition in the target product line.  
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.